ООО «Базальт СПО» ОС «Рабочая станция»
Описание процессов жизненного цикла
6
Задача контроля целостности и непротиворечивости установленного в системе ПО ещё
сложнее. Представим, что некие программы A и B требуют наличия в системе компоненты C
версии 1.0. Обновление версии пакета A, требующее обновления компоненты C до новой,
использующей новый интерфейс доступа, версии (например, до версии 2.0), влечёт за собой
обязательное обновление и программы B.
Однако менеджеры пакетов оказались неспособны предотвратить все возможные коллизии
при установке или удалении программ, а тем более эффективно устранить нарушения целостности
системы. Особенно сильно этот недостаток сказывается при обновлении систем из
централизованного репозитория пакетов, в котором последние могут непрерывно обновляться,
дробиться на более мелкие и т. п. Этот недостаток и стимулировал создание систем управления
программными пакетами и поддержания целостности системы.
Для автоматизации этого процесса и применяется Усовершенствованная система
управления программными пакетами APT (от англ. Advanced Packaging Tool). Такая
автоматизация достигается созданием одного или нескольких внешних репозиториев, в которых
хранятся пакеты программ и относительно которых производится сверка пакетов, установленных
в системе. Репозитории могут содержать как официальную версию дистрибутива, обновляемую
его разработчиками по мере выхода новых версий программ, так и локальные наработки,
например, пакеты, разработанные внутри компании.
Таким образом, в распоряжении APT находятся две базы данных: одна описывает
установленные в системе пакеты, вторая – внешний репозиторий. APT отслеживает целостность
установленной системы и, в случае обнаружения противоречий в зависимостях пакетов,
руководствуется сведениями о внешнем репозитории для разрешения конфликтов и поиска
корректного пути их устранения.
4 СИСТЕМА СБОРКИ ПАКЕТОВ В ГАРАНТИРОВАННЫХ
СБОРОЧНЫХ СРЕДАХ
4.1 Сборочная среда hasher
hasher – инструмент для сборки пакетов в «чистой» и контролируемой среде. Это
достигается с помощью создания в chroot минимальной сборочной среды, установки туда
указанных в source-пакете сборочных зависимостей и сборке пакета в свежесозданной среде. Для
сборки каждого пакета сборочная среда создаётся заново.
Такой принцип сборки имеет несколько следствий: