Я хочу знать, как работает менеджер обновлений для Linux. Например, как мой дистрибутив linux проверяет наличие доступных обновлений для загрузки и какие серверы загружают эти обновления? Если я имею дело со сторонним программным обеспечением, не относящимся к основному дистрибутиву, как эти программы взаимодействуют с моим менеджером обновлений, чтобы уведомить меня, что эти программы имеют доступные обновления? Наконец, что будет хорошей литературой по этому вопросу?

1 ответ1

9

Это будет немного отличаться в зависимости от вашего дистрибутива.

Как правило, каждый дистрибутив содержит огромный список всех пакетов программного обеспечения, доступных для установки. Это называется программным хранилищем или, если коротко, «репо». Менеджер пакетов (apt, RPM, pacman и т.д.) Периодически извлекает список обновленных пакетов из репозитория. Разработчики дистрибуции берут на себя ответственность за пакеты в репо, они будут делать вещи, такие как упаковка их в формате, ожидаемом дистрибутивом (репо обычно имеет скомпилированную версию пакетов, которые сделаны из исходного исходного кода, извлеченного из апстрима), следят за ошибками в дистрибутив о пакетах, примените патчи поверх официального источника 'vanilla' (возможно, чтобы они лучше интегрировались в систему, сконфигурировали их или исправили проблемы, с которыми еще не дошел до апстрима), и они будут наблюдать вышестоящие пакеты обновлений, которые они могут применить к версии в репозитории программного обеспечения.

Например:

Некоторые дистрибутивы на самом деле не применяют регулярные обновления версий. Ubuntu, например, будет придерживаться версии программного обеспечения, которая была выпущена, когда была выпущена эта версия дистрибутива. Обычно они исправляют только проблемы безопасности или серьезные ошибки. Это гарантирует, что программное обеспечение не изменится неожиданно (например, в следующей версии может произойти существенное изменение пользовательского интерфейса, новая ошибка что-то сломает, крупные организации могут применять свои собственные пользовательские исправления для определенной версии исходного кода). Специалисты по сопровождению пакетов будут извлекать список пакетов из Debian каждые 6 месяцев, применять исправления / исправления для Ubuntu, а затем отправлять новую версию дистрибутива. Из этого правила есть некоторые исключения, в особенности Firefox, который будет обновлен до последней стабильной версии, доступной от Mozilla.

В Debian есть стабильный, тестируемый и нестабильный. Пакеты будут перемещены из Нестабильного в Тестирование, поскольку они будут готовы. Затем каждые 1,5 года Debian выпускает «стабильную» версию, которая блокирует текущую тестовую версию пакетов.

Точно так же Ubuntu выпускает специальный выпуск LTS (или Long Term Support) каждые 2 года или около того, где эта версия пакетов поддерживается дольше (5 лет, хотя раньше для пакетов для настольных компьютеров это было 3 года).

Другие дистрибутивы будут максимально отслеживать источник. Arch и Gentoo, например. Они упоминаются как « скользящие релизы ». Хотя они также обычно имеют нестабильные и стабильные категории, в которых пакеты перемещаются, поскольку их функциональность проверяется, хотя это может быть только месяцы или даже недели, а не полгода или дольше, как в других дистрибутивах. В этих дистрибутивах вы получаете более новые версии программного обеспечения, но за счет стабильности.

Тестирование Debian можно рассматривать как переходящий выпуск. Где Debian Stable похож на релизы Ubuntu LTS.

Наиболее верное стороннее программное обеспечение (как, например, программное обеспечение, которое поступило не из репозитория дистрибутивов, а непосредственно с веб-сайта), вообще не взаимодействует с системой обновления вашего дистрибутива. Если вы устанавливаете программное обеспечение вручную (кроме использования чего-либо вроде apt-get, yum или чего-либо еще), то вы будете обязаны обновлять его.

Некоторые сторонние организации будут поддерживать свои собственные репозитории, в которые может загружаться ваша система обновлений. Например, Google поддерживает один для Chrome в Ubuntu. Есть также много PPA Launchpad. В этом случае вы полагаетесь на стороннюю организацию, которая будет поддерживать обновления.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .