Как Ubuntu справляется с несколькими установками программного обеспечения?
Я недавно перешел с Windows на Linux, и у меня есть вопрос о том, как Ubuntu/Linux заботится о дублировании файлов, когда установка программного обеспечения становится грязной. Чтобы привести пример, позвольте мне поговорить о том, с чем у меня сейчас проблемы; установка Ruby On Rails. В какой-то момент при загрузке возникла ошибка (не относящаяся к этой теме), и для ее устранения я вернулся к началу установки и выполнил все необходимые шаги, повторно загрузив большую часть того, что уже скачал. Я привык к тому, что Windows просто засоряет все дублированными файлами, и я чувствую, что Ubuntu умнее этого. Как Ubuntu управляет пользователем, загружающим несколько вещей? Перед каждой установкой проверяется, находится ли какой-либо ключевой файл в системе, и если он есть, он не загружает какие-либо файлы? В Терминале я никогда не получал сообщений от системы, говорящих что-то вроде:
"Пользователь Alex уже скачал этот пакет"
чего я и ожидал. Мне бы очень хотелось подробное, но нетехническое объяснение того, что здесь происходит.
1 ответ
Ubuntu основана на Debian и, таким образом, использует APT. Если вы хотите углубиться в детали, загляните на эту вики-страницу.
... но ответить на некоторые ваши вопросы:
во-первых, установочные пакеты кэшируются в
/var/cache/apt/archives
, Если пакет был кэширован, он не будет загружен снова, если не доступна более новая версия.во-вторых, APT отслеживает установленные пакеты, так что, если вы попытаетесь установить то, что уже установлено, вы получите сообщение о том, что пакет уже является самой новой версией:
~$ sudo apt-get install zsync Reading package lists... Done Building dependency tree Reading state information... Done zsync is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
в-третьих, APT обычно запускается с правами root, поэтому обычные непривилегированные пользователи не загружают и не устанавливают программное обеспечение.