Управление пакетами
Введение
Программное обеспечение в дистрибутиве представлено в виде специальных архивов, называемых пакетами RPM.
Все пакеты находятся в специальном хранилище, называемом репозиторий. Репозиторий может находиться как на удалённом сервере, так и непосредственно на локальном компьютере. При подключении дополнительного репозитория следует тем или иным образом убедиться в его совместимости с ОС. Описание известных репозиториев ALT Linux находится в соответствующей статье.
Программное обеспечение в систему устанавливается с помощью специальных программ, называемых менеджеры пакетов. Менеджером пакетов низкого уровня является сам RPM. Остальные рассматриваемые программы, Synaptic, модуль ALT Linux Control Center и консольная утилита apt, являются надстройками над RPM.
См. также:
Консольные команды apt
Источники репозиториев
Все источники описаны в текстовом файле или нескольких файлах простым и понятным синтаксисом. Надо сказать, что уже описанные системы управления пакетами используют эти же файлы для настройки источников.
Файлы находятся в директории /etc/apt/source.list.d/ и имеют расширение .list, например:
[user@name ~]$ ls -l /etc/apt/sources.list.d/ итого 48 -rw-r--r-- 1 root root 539 Июн 24 16:22 alt.list -rw-r--r-- 1 root root 331 Июн 24 16:22 chg.list -rw-r--r-- 1 root root 540 Июн 24 16:22 heanet.list -rw-r--r-- 1 root root 209 Июн 24 16:22 ilim.list -rw-r--r-- 1 root root 645 Июн 24 16:22 ipsl.list -rw-r--r-- 1 root root 226 Июн 24 16:22 jinr.list -rw-r--r-- 1 root root 490 Июн 24 16:22 kiev.list -rw-r--r-- 1 root root 231 Июн 24 16:22 mobicomk.list -rw-r--r-- 1 root root 391 Июн 24 16:22 psn.list -rw-r--r-- 1 root root 1361 Июн 24 16:22 README.sisyphus -rw-r--r-- 1 root root 106 Июн 24 16:22 sources.list -rw-r--r-- 1 root root 464 Июн 24 16:22 yandex.list
Также есть файл с предопределённым именем: /etc/apt/source.list. Утилита apt-get в момент работы просматривает одновременно все эти файлы.
В конкретной операционной системе может быть больше или меньше файлов, описывающих источники. Часть можно удалить или создать новые.
Считается удобным, если название файла отображает место нахождения репозитория, на который указывают источники, описанные в конкретном файле. Например, в файле chg.list указаны источники, ссылающиеся на репозитории, находящиеся на известном FTP сервере в г. Черноголовка: ftp.chg.ru. Тогда как файл kiev.list описывает репозитории, находящиеся на сервере в г. Киев. Логично, в некоторых ситуациях удобно использовать сервера, находящиеся как можно ближе.
Синтаксис, описывающий источники, очень простой. Например:
[user@name ~]$ cat /etc/apt/sources.list.d/chg.list # ftp.chg.ru (Chg-FREEnet, Chernogolovka) # ALT Linux Sisyphus #rpm [alt] ftp://ftp.chg.ru/pub/Linux/ALTLinux/Sisyphus i586 classic #rpm [alt] ftp://ftp.chg.ru/pub/Linux/ALTLinux/Sisyphus noarch classic #rpm [alt] rsync://ftp.chg.ru/ALTLinux/Sisyphus i586 classic #rpm [alt] rsync://ftp.chg.ru/ALTLinux/Sisyphus noarch classic
Первым символом идёт символ комментария - следовательно, строка считается простым текстом, а не описанием источника. У активной записи в начале строки этот символ отсутствует. Таким образом появляется простой механизм включения и отключения источников.
Описание источника состоит из ключевых элементов:
- тип репозитория - компания Базальт СПО применяет пакетную систему rpm, следовательно все источники описывают rpm-репозитории. В примере первым словом указан тип репозитория: rpm
- ключ подписи - пакеты в репозитории подписаны и могут быть проверены, если указать ключ. Списки доступных ключей лежат в каталоге /etc/apt/vendors.list.d в файлах с расширением .list. Также есть файл /etc/apt/vendors.list. Элемент не является обязательным и может быть пропущен, хотя это не рекомендуется. В примере использован ключ [alt].
- адрес - адрес расположения репозитория. Как было описано в разделе программы Synaptic, репозитории доступы несколькими способами. В данном случае: ftp:// и rsync://. После описания способа доступа прописан адрес, аналогичный с вводимым в web-браузере.
- тип данных - репозиторий может содержать как исполняемые пакеты, так и пакеты для разработчиков или пакеты с данными общего характера. В примере видны типы: i586 и noarch.
Тип i586 показывает, в данном репозитории находятся исполняемые программы и библиотеки, собранные для 32-х разрядных систем (32bit). При использовании дистрибутива для 64-х разрядных процессоров, тип содержимого будет x86_64.
В общем случае запись источника с выполняемыми программами и библиотеками дополняет источник с типом noarch. Этот источник предоставляет пакеты, идентичные для обеих платформ x86 (не используется в случае типов arm и armh). Как правило, это данные, небинарные библиотеки к Perl, Phyton и т.п.
- название - название репозитория. Для основных репозиториев сейчас используются только classic и debuginfo (могут быть использованы одновременно).
С 2011 года существует консольная утилита apt-repo для манипулирования источниками. В дистрибутивы она попадает, начиная с поздних выпусков дистрибутивов на бранче p7, однако была помещена в бранчи p5/5.1 и p6/t6.
- Важно! После редактирования списка источников необходимо выполнить команду apt-get update от пользователя root. По этой команде apt подключится к активированным источникам и загрузит данные о находящихся в них пакетах.
Downgrade
См. Downgrade.