Linux и все, все, все... Статьи и колонки в LinuxFormat, 2006-2013
Шрифт:
Кроме перечисленных, существует ещё немало параметров настройки yum. Так, очевидно, что опция installonly_limit имеет смысл только при наличии списка запрещённых к обновлению пакетов. Он задаётся параметром
installonlypkgs=pkgname1 pkgname2 ... pkgname#
Есть возможность и задать список пакетов, для которых
exclude=pkgname1 pkgname2 ... pkgname#
Полезной может оказаться параметр skip_broken – он заставляет пропускать установку пакетов с нарушенными зависимостями.
Параметр recent нужен для субкоманды list с одноимённой опцией: он устанавливает срок, в течении которого добавленные в репозиторий пакеты считать новыми.
Что очень раздражает в yum – это синхронизация метаданных о репозиториях, происходящая каждый раз при его запуске с любой субкомандой – даже от лица пользователя, когда реально кэш метаданных обновлён быть не может. Такая ситуация изменяется параметром metadata_expire, которому можно дать то значение, которое покажется разумным. Или вписать строку
metadata_expire=never
И тогда обновление кэша метаданных будет производиться только по запросу.
Обратимся к плагинам. Они устанавливаются точно так же, как и любые другие пакеты. Соответствующие каждому из установленных плагинов конфигурационные файлы располагаются в каталоге /etc/yum/pluginconf.d и имеют имена, по которым легко догадаться, к какому из плагинов относится любой конфиг.
Большинство плагинных конфигов предельно просто и содержит единственную строку, разрешающую его подключение:
enabled=1
В конфиге плагина presto можно запретить локальное кэширование дельт, раскомментировав параметр
keepdeltas = false
А можно определить, что же считать дельтой. Например, параметр
minimum_percentage = 95
указывает, что если изменённая часть пакета составляет 95% или менее от цельного, то будет скачиваться она, если же больше – загрузится пакет целиком.
Чтобы настраивать параметры доступа к репозиториям, их необходимо сначала подключить. Подключение «левых» репозиториев не сложно: вся метаинформация о любом репозитории, пригодном для эксплуатации yum’ом, собрана в виде обычного rpm-пакета, который может быть обычным же образом установлен. Вся загвоздка в том, что пакет этот хранится внутри собственного, ещё не подключённого, репозитория, и потому yum’ом установлен быть не может.
Так что нам придётся добраться до нужного пакета, описывающего репозиторий, в Сети, скачать его, установить с помощью команды rpm, а затем уже обеспечить доступность репозитория.
Рассмотрим эту процедуру на примере подключения репозитория для пакетов флэш-плейера. Для этого заходим на официальный сайт Adobe, в пункте Download отыскиваем строку Get flash player, и из выпадающего списка Select version to download… выбираем YUM for Linux, какой (в виде файла adobe-release-i386-1.0-1.noarch.rpm) и скачиваем. Затем даём команду
# rpm -Uhv adobe-release-i386-1.0-1.noarch.rpm
По её успешном
исполнении в каталоге с конфигами репозиториев можно будет увидеть новый файл adobe-linux-i386.repo. Одновременно он станет доступным для обновляющих манипуляций командой# yum update
Подключить новый репозиторий можно и совсем вручную. Проделаем эту операцию для репозитория (почти) ежедневных сборок браузера Chromium от Тома Колловея: создадим в каталоге /etc/yum.repos.d файл chromium.repo и впишем в него такие строки:
[chromium] name=Google Chrome baseurl=http://spot.fedorapeople.org/chromium/F$releasever/ enabled=1 gpgcheck=0
Надеюсь, мне удалось показать, что yum делает употребление rpm-пакетов абсолютно безвредным. В случае же напряжённых отношений с командной строкой для управления rpm-пакетами можно обратиться к графической утилите PackageKit, речь о которой пойдёт в следующем разделе.
PackageKit – кит пакетного менеджмента
Если yum всегда оставался в тени Debian'овского APT'а, то о графической надстройке PackageKit говорят ещё меньше. Хотя она не является чем-то специфическим для rpm-based дистрибутивов: её можно прикрутить к пакетам любого формата в любых дистрибутивах, вплоть до Archlinux и Gentoo.
Система PackageKit распадается на серию бэк-эндов для работы с конкретными менеджерами пакетов и интерфейсные надстройки.
Бэк-энды PackageKit предполагают работу с такими системами, как yum, apt, smart и так далее, вплоть до pacman. Интерфейсом к ним служат
При инсталляции в Fedora по умолчанию устанавливается бэк-энд для yum и фронт-энд gnome-packagekit (при выборе в качестве рабочей среды KDE он заменяется на kpackagekit). Но в репозиториях доступны пакеты поддержки apt и smart, а также консольный клиент pkcon.
Пакетные менеджеры, поддерживаемые системой PackageKit, имеют обычно собственный развитый инструментарий для управления пакетами из командной строки (не исключение и Fedora, как мы видели в заметке про yum). Поэтому консольная утилита pkcon представляет интерес только своей теоретической универсальностью – она одинакова в любых дистрибутивах, поддерживающих PackageKit, так что задерживаться на ней не будем.
Графическая ипостась PackageKit в виде субпакета gpk-application запускается из главного стартового меню, в зависимости от используемой среды, через пункты Приложения -> Установка и удаление программ (GNOME) или Администрирование -> Установка и удаление программ (Xfce). Причём сделать это можно от лица обычного пользователя – пароль администратора будет запрашиваться по ходу дела, при необходимости выполнения действий, требующих соответствующих полномочий. После запуска перед нами появляется окно следующего вида: