Это старая версия документа.


Управление репозиториями и обновлениями

Итак, мы знаем уже практически всё про управление программами и пакетами в Ubuntu, осталось только сказать пару слов про механизм обновлений и репозитории. Как вы уже знаете, все программное обеспечение хранится в репозиториях, каждый репозиторий содержит так называемый индекс - список всех пакетов с указанием версий и прочей полезной информации. В вашей системе также имеется список всех установленных пакетов. Систему можно настроить так, что периодически она будет сравнить эти списки1) и сообщать вам о наличии обновлений, или даже, автоматически устанавливать обновления безопасности.

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

Управление репозиториями

Итак, от теории - к делу. Для управления репозиториями и обновлениями служит утилита Программы и обновления, найти которую можно, конечно же, в Параметрах системы. Окно программы состоит из нескольких вкладок.

На первой, можно управлять официальными репозиториями Ubuntu. Дело в том, что в официальных репозиториях, кроме программного обеспечения, разрабатываемого самой Canonical, входит еще и ПО, разрабатываемое сообществом, а также, дополнительные проприетарные драйвера и ПО, ограниченное патентами. Например, если вы не используете никаких проприетарных драйверов для оборудования (об этом чуточку позже), то и держать включенным репозиторий с драйверами не имеет никакого смысла. Тут же можно выбрать, скачивать ли исходный код ПО 3), выбрать сервер, с которого скачивать обновления (например, при временной недоступности российского сервера, можно поменять на основной и спокойно обновиться.).

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

Вкладка «Другое ПО», позволяет управлять репозиториями партнеров Canonical и независимых разработчиков. Тут же можно подключить любой сторонний репозиторий, а также, подключиться к репозиторию на СД-диске4):

Как видите, по умолчанию партнерский репозиторий отключен. Можете включить его, там можно найти много полезного ПО5). Также, можете снять «галочку» напротив строчки с исходным кодом6).

Давайте, в качестве примера, добавим один полезный репозиторий. Но, сначала, немного теории:

PPA на Launchpad

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

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

Но этот способ тоже имеет ряд недостатков, поэтому Canonical создала специальный сайт, позволяющий легко разместить репозиторий со своими пакетами в интернете. Сайт этот называется launchpad.net7). Репозиторий на Launchpad принято называть PPA (Personal Packages Archive - персональный архив пакетов).

Итак, каждый автор программного обеспечения может легко разместить свой собственный PPA на Launchpad. Собственно, нас интересует использование этих архивов пакетов, и вот тут есть пара очень полезных для конечного пользователя вещей.

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

Первой строчкой в результатах поиска в данном случае будет страница проекта на Launchpad:

Нам на неё-то как раз и надо. В самом низу страницы можно обнаружить ссылку на страничку с PPA, вот эта ссылка: https://launchpad.net/~tualatrix/+archive/ppa8).

К сожалению, не у каждого зарегистрированного на Launchpad проекта есть свой персональный архив пакетов, имейте это ввиду. Если вы не нашли PPA для какой-либо программы, загляните на её официальный сайт - возможно с него вы сможете загрузить пакеты или получите на нём информацию о поддерживаемых репозиториях.

Некоторые программы при установке из .deb-пакетов, автоматически добавляют репозиторий в систему. Особенно «грешат» этим программные продукты компании Google. Так что не удивляйтесь, если в списке репозиториев, увидите незнакомый, который неизвестно как там очутился.

Перейдя по ссылке вы попадёте на страницу с описанием PPA9), на которой вас в первую очередь должна интересовать инструкция по добавлению репозитория в систему:

В ней написано, что вам всего лишь достаточно добавить в список строку ppa:tualatrix/ppa. Но как же всё то, что мы узнали в предыдущей статье про APT-строки и ключи?

Дело в том, что в Ubuntu встроен специальный механизм простого добавления в систему репозиториев с Launchpad. После добавления строки ppa:tualatrix/ppa к вашим источникам приложений система автоматически преобразует её в APT-строку и скачает нужный ключ. Просто введите PPA строку вместо APT в окно добавления репозиториев:

Однако если вы хотите всё сделать вручную, то обратите внимание на ссылку «Technical details about this PPA» под описанием PPA, нажав на неё вы увидите техническое описание репозитория:

Выберите свою версию Ubuntu в списке, в рамке появятся две APT-строки: одна для пакетов с программами, другая - для исходного кода. Обычно вам нужна только первая. Ключ же репозитория написан после / в строчке Signing key.

Вот так всё просто. Советую разобраться с интерфейсом Launchpad, а также зарегистрироваться на нем, поскольку это, ко всему прочему, основной ресурс разработки, переводов и тестирования Ubuntu. Ну и напоследок хочется заметить, что добавлять PPA с Launchpad можно так же легко и через терминал, для этого достаточно набрать

sudo add-apt-repository идентификатор_PPA

Например, для добавления репозитория Ubuntu Tweak:

sudo add-apt-repository ppa:tualatrix/ppa

Кстати, мы не зря рассматривали работу с Launchpad на примере добавления PPA для Ubuntu Tweak. Это программа является достаточно неплохим настройщиком Ubuntu, позволяющим выполнять различные полезные функции. В частности, она позволяет подключать многие популярные репозитории всего одним кликом мыши. Подробней про неё можно почитать на нашей вики http://help.ubuntu.ru.

Не забывайте, что для работы программы одного добавления репозитория недостаточно. После добавления репозитория нужно установить саму программу.

Другие инструменты работы с обновлениями

Собственно, Менеджер обновлений - это крайне простой и удобный инструмент, однако как всегда все необходимые действия можно сделать ещё несколькими способами. Во-первых, обновить пакеты можно через Менеджер пакетов Synaptic, помните, я говорил про две кнопочки на панели инструментов?

При нажатии на «Обновить» будут скачаны все изменившиеся с последней проверки индексы репозиториев, таким образом, будет проверено наличие новых обновлений. При нажатии на «Отметить для обновления» будут отмечены для обновления все пакеты, для которых доступны новые версии. Помните, что Synaptic применяет все изменения не сразу? Поэтому для фактического запуска процесса обновления нужно будет нажать на кнопку «Применить».

Кроме того, как всегда всё можно сделать через терминал. Для обновления индексов репозиториев используйте команду

sudo aptitude update

А для непосредственной установки всех доступных обновлений команду

sudo aptitude safe-upgrade
Изредка встречаются ситуации, когда Менеджер обновлений не может разрешить все конфликты и установить все обновления. В этом случае рекомендуется использовать как раз консольную утилиту aptitude, поскольку она является самой функциональной из всех доступных инструментов управления пакетами и умеет автоматически исправлять большинство проблем.

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

1)
Именно это и делает рассмотренная нами в предыдущей статье команда sudo apt-get update
2)
На самом деле в стандартных репозиториях для LTS-версий могут находиться далеко не самые новые версии программ, а только те, которые хорошо протестированы. В данном случае, критерий стабильности и безопасности превалирует над новизной. Но, на свой страх и риск, вы всегда можете подключить сторонний репозиторий.
3)
Доступность исходного кода с возможностью его свободной модификации и распространения - обязательное условие лицензии GNU_GPL, под которой распространяется Ubuntu.
4)
Вы можете создать срез репозитория на внешнем носителе и использовать его на компьютерах без выхода в интернет.
5)
Например, Skype.
6)
если, конечно, вы не разработчик ПО и исходный код для вас очень интересен.
7)
Он предоставляет куда как больше полезных возможностей, кроме организации репозиториев, но их описание мало связано с данным руководством, поэтому я расскажу лишь про репозитории.
8)
Всегда нужно выбирать именно Stable репозитории, поскольку Unstable содержат тестируемые версии ПО, которые, вообще говоря, могут вовсе не работать или работать не совсем так, как вам того хотелось бы.
9)
Обратите внимание на адрес страницы, все страницы с описаниями PPA на Launchpad имеют похожий адрес.