Debian и Ubuntu: настройка доступа к репозиториям пакетов

Первое, что требуется для использования мощи средств цправления deb-пакетами -- это настройки доступа к их репозиториям. Ниже этот вопрос рассмотрен на примере дистрибутивов Ubuntu и Kubuntu -- пакетные репозитории едины для всего семейства.

Однако практически все сказанное применимо и к исходному Debian, и к любому из его клонов -- они сохраняют совместимость, и deb-пакеты из, скажем, Xandros (включая такие спецфичные, как драйверы устройств), могут использоваться в Kubuntu, и наоборот.

После обычной пользовательской установки Ubuntu и Kubuntu мы имеем доступ только к одному такому репозиторию -- установочному CD или DVD. Причем первый нам практически не нужен -- почти все его содержимое и так устанавливается по умолчанию в ходе первичной инсталляции. На DVD, конечно, есть большое количество дополнительных пакетов -- но и ими не обойтись, кое-какие компоненты (те же аудио- и видеокодеки) можно получить только из репозиториев сетевых.Источники пакетов, получаемых через apt, описываются в специальном конфигурационном файле -- /etc/apt/sources.list. После пользовательской установки по умолчанию он содержит строку вида

deb cdrom:[Kubuntu 5.10 _Breezy Badger_ -- Release i386 (20051012)]/ breezy main restricted

описывающую репозиторий на установочном компакт-диске, плюс еще несколько закомментированных строк, распадающихся на отдельные секции.

Формат каждой строки таков:

  • тип пакета -- deb для бинарников и deb-src для исходников;
  • URL архива -- в наших условиях это будет http://ru.archive.ubuntu.com/ubuntu;
  • имя собственное дистрибутива -- для текущей версии breezy (собственно дистрибутив), breezy-updates, breezy-backports, breezy-security (дополнительные компоненты;
  • тип репозитория -- main и restricted (основная часть дистрибутива, поддерживаемая командой обновления безопасности), universe и multiverse (дополнительная часть, лишенная соответствующей поддержки).

О различиях между типами репозиториев было сказано в прошлом разделе -- здесь же достаточно запомнить, что нам они понадобятся все, включая и те, что являются как бы не совсем официальными (universe и multiverse). Так что достаточно просто снять комментарии со всех строк, начинающихся с deb и deb-src -- как станет ясным в дальнейшем, некоторые пакеты, возможно, придется строить из исходников:

## Uncomment the following two lines to fetch updated software from the network
deb http://ru.archive.ubuntu.com/ubuntu breezy main restricted
deb-src http://ru.archive.ubuntu.com/ubuntu breezy main restricted

и так далее. Обращаю внимание -- в этих (и аналогичных) строках фигурируют только репозиторий Ubuntu и имя дистрибутива, ни слова о Kubuntu мы тут не найдем. То есть, если мы снесем KDE с нашей инсталляции Kubuntu и поставим из репозитория GNOME -- то получим чистый Ubuntu, и наоборот. Это я и имел ввиду, когда говорил о легкой трансформации одного дистрибутива этого семейства в другой.

А можно поступить еще интересней: отказаться и от KDE, и от GNOME, установив, например, XFce -- и таким образом преобразить свой дистрибутив в Xubuntu. Что, впрочем, уже реализовано официально.

Можно также заменить XFce на любой из полусотни имеющихся в репозитории менеджеров окон (например, Window Maker), после чего стать счастливым обладателем собственного уникального WMubuntu. В общем, перспективы индивидуализации системы открываются безграничные.

Кстати, не менее легко сменить релизную версию на тестируемую: для этого достаточно во всех строках файла /etc/apt/sources.list заменить breezy на dapper. А при необходимости воспользоваться репозиториями родительского Debian или какого-либо из его клонов -- дописать соответствующие строки (руководствуясь документацией к требуемому дистрибутиву).

В случае, если коннект с репозиторием http://ru.archive.ubuntu.com/ubuntu оказывается неудовлетворительным (а подчас так и бывает), никто не запрещает добавить какие-либо иные зеркала официального репозитория. По моим наблюдениям, самыми быстрыми оказываются норвежское, бельгийское и нидерландское. Так что каждую строку с описанием отдельных репозиториев можно продублировать, заменив в URL ru на no, be или nl, соотвественно.

Сделанного достаточно, чтобы доустанавливать пакеты из дистрибутива, не включенные в комплект установочного компакт-диска, а также получать все штатные обновления. Однако время от времени появляются и обновления не вполне штатные. Так, текущая версия Kubuntu включает обычно KDE последней стабильной версии, которая при штатном обновлении остается неизменной (меняются только номера сборки пакетов). Однако в каждый момент времени для Kubuntu доступна и сборка KDE самой наипоследней версии, которая лежит в собственном репозитории, который подключается такой строкой:

deb http://kubuntu.org/packages/kde35 breezy main

После этого необходимо скачать gpg-ключ (нечто вроде гарантии идентичности):

$ wget http://people.ubuntu.com/~jriddell/kubuntu-packages-jriddell-key.gpg

и выполнить собственно процедуру идентификации:

$ sudo apt-key add kubuntu-packages-jriddell-key.gpg

Аналогично следует поступать и с другими “не вполне штатными” обновлениями, например, аудиоплейера amaroK. Следить за такими вещами проще всего по сайту проекта http://www.kubuntu.org. А по приводимым там ссылкам обычно содержится исчерпывающая информация о том, как подключать такие дополнительные репозитории.

И, наконец, для получения пакетов типа w32codecs и ему подобных, существуют уж совсем неофициальные репозитории, например, такой:

deb ftp://cipherfunk.org/pub/packages/ubuntu

Только, ради Бога, не подумайте, что это какой-то Linux’овый warez, ни в коем случае. Просто там помещаются пакеты, использующие алгоритмы, которые в некоторых осталых странах (типа США) защищаются всякого рода патентами. Семейство же дистрибутивов Ubuntu создавалось в расчете на международное распространение, и потому его разработчики вынуждены учитывать любые лицензионные ограничения всех стран мира.


Теги: , ,