Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Приемы работы в Ubuntu.
Глава 6: Управление пакетами

Оригинал: "Ubuntu Hacks: Chapter 6 - Package Management"
Авторы: Кайл Ранкин, Джонатан Оксер, Билл Чайлдерс (Kyle Rankin, Jonathan Oxer, Bill Childers)
Дата публикации: June 2006
Перевод: Н.Ромоданов
Дата перевода: сентябрь 2010 г.

Совет # 60: Изменение списка репозитариев пакетов

Добавьте в вашу систему дополнительные репозитарии программ Ubuntu и вы получите доступ к тысячам новых пакетов.

Если вы привыкли устанавливать программы в операционных системах, отличных от Linux, принцип использования менеджеров пакетов и репозитариев может вам показаться чуждым. Чтобы установить программу в Windows или в Mac OS X, вы должны вставить компакт-диск или скачать инсталлятор и запустить его. В Ubuntu, программное обеспечение поставляется в виде пакетов. В состав пакетов входят различные файлы, которые представляют собой конкретные части программного обеспечения, а также инструкции для Ubuntu, необходимые для установки и удаления программного обеспечения, информацию о зависимостях, и так далее. Если есть пакеты, Ubuntu позволит вам установить или обновить любую программу при помощи единого инструмента. Независимо от того, используете ли вы Synaptic [Совет # 55], Adept [Совет # 56] или apt-get [Совет # 54], ваш менеджер пакетов автоматически загрузит и установит пакеты, которые вы укажете, вместе с другими пакетами (зависимостями), которые им могут потребоваться.

Вместо того, чтобы беспорядочно размещаться по страницам проектов повсюду в интернете, пакеты Ubuntu находятся в репозитариях программ, которые являются централизованными сайтами, где находится большое количество пакетов. В каждом репозитарии программ находятся программы определенного класса, которые предназначены для определенной версии Ubuntu, обычно как в виде исходного кода, так и в двоичном виде (каждый вид в своем собственном репозитарии), а затем они дальше подразделяются в зависимости от того, какой вариант поддержки или какая лицензия используются для этого пакета. Ниже перечислены некоторые из основных репозитариев пакетов Ubuntu:

dapper

Это основной репозитарий версии Dapper Drake системы Ubuntu. Для предыдущих релизов также есть репозитарии, которые называются по именам релизов, так что имеются репозитарии Breezy, Hoary, Warty и т.д. Когда команда Ubuntu выпускает новую версию, она также создает репозитарий с именем новой версии. Такой подход позволяет легко обеспечивать, чтобы пакеты, предназначенные для конкретной версии Ubuntu, не были перепутаны с другими версиями.

dapper-updates

В этом репозитарии находятся обновления для конкретной версии, так что вам, вообще, необходимо подписаться на этот репозитарий (и вы подписаны на него по умолчанию).

dapper-security

Ubuntu использует этот репозитарий для отдельного хранения обновлений, касающихся безопасности и которые следует применять к конкретному пакету. Часто эти обновления обратно портируются в конкретную версию программы, которая поставляется в виде релиза, поэтому к новым версиям программ не требуется применять обновления, связанные с безопасностью.

dapper-backports

Этот репозитарий по умолчанию не используется, но в нем находятся обновленные версии программ, которые должны обратно портироваться в Dapper. По умолчанию этот репозитарий отключен из-за того, что эти обратные порты не прошли тестирование на должном уровне уровне, которое было проведено с другими пакетами. Этот репозитарий следует подключить, поскольку, может быть, полезно иметь дело с более новой версией программы, имеющей новые возможности.

Затем эти репозитарии подразделяются по категориям в зависимости от того, какой уровень поддержки обеспечен пакету, а в некоторых случаях от того, каким видом лицензии или ограничениями обладает это программное обеспечение. Если вы, например, хотите использовать только программы, которое полностью поддерживается Ubuntu, вы должны убедиться, что программы выбираются только из подкатегории main. Далее приведено первоначальное деление по подкатегориям:

main

Категория пакетов, которая называется основной или main (также считается официально поддерживаемой) и, по умолчанию, содержит все пакеты Ubuntu, которые были протестированы до такого уровня, что они были официально включены в дистрибутив. Поэтому данная категория включена по умолчанию.

restricted

Эта категория содержит пакеты, использование которых ограничено в связи с авторскими правами или, возможно, с другими аспектами их лицензий, поэтому они считаются несвободными. Этот репозитарий существует, с тем чтобы пользователи, которые хотят использовать только "свободным" программным обеспечением с открытым исходным кодом, могли отключить эту категорию и получать программы только из репозитария main.

universe

Система Ubuntu базируется на дистрибутиве Debian Linux, но в ней содержится только часть программного обеспечения Debian из-за того, что для поддержки каждого пакета требуется выполнение большого количества тестов. universe является подкатегорией, к которой относятся пакеты, собранные и поддерживаемые сообществом Ubuntu. Если вы ищете конкретную программу и не можете ее найти, есть большая вероятность, что она находится в подкатегории universe или в следующей подкатегории multiverse. Обратите внимание, что, поскольку эти пакеты официально не поддерживаются Ubuntu, есть вероятность того, что вы рискуете некоторой нестабильностью системы при установке программ из этой категории.

multiverse

Точно также, как и в universe, в категории multiverse содержится программное обеспечение, которое официально не поддерживается, но поддерживается сообществом Ubuntu. Категория multiverse относится к категории universe точно также, как катеогрия restricted относится к категории main.

Добавление и удаление репозитариев

В зависимости от того, каким менеджером пакетов вы пользуетесь, есть несколько различных способов изменения репозитариев, на которые вы подписаны. В разделах "Управление пакетами с помощью Synaptic" [Совет # 55] и "Управление пакетами с Adept" [Совет # 56] рассказывается об управлении репозитариями пакетов с помощью этих инструментов. Тем не менее, все эти менеджеры пакетов обращаются к одному и тому же файлу /etc/apt/sources.list. Ниже приведен пример файла sources.list для версии Dapper, в котором проиллюстрирован синтаксис, используемый в этом файле:

# dapper
deb http://archive.ubuntu.com/ubuntu/ dapper main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ dapper main restricted

# dapper-updates
deb http://us.archive.ubuntu.com/ubuntu/ dapper-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ dapper-updates main restricted

# dapper-security
deb http://security.ubuntu.com/ubuntu dapper-security main restricted
deb-src http://security.ubuntu.com/ubuntu dapper-security main restricted

Зная, как в Ubuntu репозитарии подразделяются по категориям, вы можете понять, как синтаксически сформированы эти строки. В начале строки указывается, будет ли Ubuntu получать из конкретного репозитария двоичные пакеты (deb) или пакеты с исходным кодом (deb-src). Далее указывается URL конкретного репозитария, который, как правило, является либо адресом HTTP, либо адресом FTP. Затем указывается конкретный репозитарий (в нашем примере, dapper, dapper-updates или dapper-security). Наконец, вы видите список подкатегорий, разделенных пробелами, из которых будут выбираться пакеты. По умолчанию в Ubuntu будут использоваться подкатегории main и restricted, но для того, чтобы добавить новые подкатегории, просто добавьте их имена в конце конкретной строки. Так, например, чтобы добавить репозитарии universe и multiverse системы Dapper как с двоичными пакетами, так и с пакетами с исходным кодом, измените следующие строки:

deb http://archive.ubuntu.com/ubuntu/ dapper main restricted
deb-src http://archive.ubuntu.com/ubuntu/ dapper main restricted

на строки:

deb http://archive.ubuntu.com/ubuntu/ dapper main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ dapper main restricted universe multiverse

После того, как вы сохраните изменения, вам нужно будет с помощью команды apt-get update или через интерфейс Synaptic или Adept обновить ваш список пакетов для того, чтобы новыми репозитариями можно было пользоваться. Для добавления новых подкатегорий в другие репозитарии, просто внесите соответствующие изменения в записи, описывающие эти репозитарии.

Неофициальные репозитарии

В сети интернет есть ряд других неофициальных репозиториев пакетов, которые также можно использовать с Ubuntu. Часто в этих репозитариях предлагается небольшое подмножество специальных пакетов, не являющихся по умолчанию пакетами для Ubuntu, либо, может быть, предлагается более новая версия пакета. Запишите в ваш файл sources.list соответствующие строки, указывающие на эти репозитарии, при этом убедитесь, что репозитарии предназначены для работы с конкретной версией Ubuntu, иначе вы можете столкнуться с конфликтами, связанными с несовместимостью зависимостей сторонних репозитариев и зависимостями родных пакетов Ubuntu.


Назад Оглавление Вперед