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

UnixForum






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

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

Mandriva. Обновление системы

Часть 1. Репозитории

В.А.Костромин, 17 января 2009 г.

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

Почему пришлось разбираться с обновлением ПО

Три свои Mandriva-системы я устанавливал в разное время. Несколько месяцев назад поставил систему на ноутбук Compaq, чуть больше месяца прошло с момента установки на emachins, около месяца назад установил Mandriva на десктопе (раньше там стояла Ubuntu). И вот, запуская эти три системы я с удивлением обнаружил, что на них стоят разные версии браузера Firefox. На emachins стоит версия 2.0.0.19, на Compaq - версия 2.0.0.18, на десктопе - 2.0.0.13. Более того, давно уже вышла третья версия того же Firefox, а у меня везде вторая. Аналогичная ситуация сложилась с пакетом OpenOffice.org - на трех компьютерах оказались разные версии этого пакета, причем всюду номера версий начинаются с 2, а ведь существует уже и третья версия.

Вообще-то в Mandriva очень хорошая, на мой взгляд, система обновления ПО. Работает автоматически, при загрузке системы проверяется наличие обновлений и предлагается самому пользователю решить, какие именно обновления поставить в данном сеансе, а какие оставить на следующий раз. Однако при попытке обновить версию Firefox на десктопе мне была предложена только версия 2.0.0.19. Почему же третьей версии Firefox нет среди допустимых обновлений? Придется разобраться с системой обновления ПО. Заодно постараюсь рассказать вам об этой системе.

Репозитории

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

Русскоязычная Википедия сообщает о репозитории следующее:

"Репозиторий - место, где хранятся и поддерживаются какие-либо данные. Чаще всего данные в репозитории хранятся в виде файлов, доступных для дальнейшего распространения по сети.
Примером репозитория может служить репозиторий свободного программного обеспечения Сизиф ALT Linux.
Репозитории используются в системах управления версиями, в них хранятся все документы вместе с историей их изменения и другой служебной информацией. Русское сообщество Subversion рекомендует использовать вместо термина репозиторий термин хранилище, поскольку он полностью соответствует как прямому переводу слова "repository", так и его понятию.
Разрабатывается автоматизированная система создания репозиториев на CD/DVD - APTonCD."

Англоязычная версия википедии дает более подробные сведения:

"Репозиторий программного обеспечения (иногда сокращенно называемый репо) - это место для хранения ПО, из которого программные пакеты могут быть получены и установлены на компьютер. Многие организации и распространители программного обеспечения поддерживают для этой цели сервера в Интернет, доступ к которым может быть либо бесплатным, либо предоставляться по подписке за определённую плату. Репозитории могут создаваться под одну конкретную программу, например, репозиторий CPAN для языка программирования Perl, или для целой операционной системы. Владельцы таких репозиториев обычно предоставляют систему управления пакетами, инструменты для поиска, установки и других действий с программными пакетами, хранящимися в репозитории. Например, многие дистрибутивы Линукс используют Advanced Packaging Tool или yum.
Поскольку репозитории создаются как место хранения полезных программ, обычно принимаются специальные меры для того, чтобы в их состав не попало вредоносное ПО. Если сконфигурировать систему на компьютере таким образом, чтобы использовались только надежные репозитории и при инсталляции ПО производилась проверка цифровых подписей, да к тому же были правильно настроены права доступа в системе, то угроза проникновения вредоносного ПО для такой системы существенно снижается. В качестве следствия или побочного эффекта получаем, что построенные таким образом системы могут не нуждаться в установке дополнительных средств защиты от вредоностного ПО и компьютерных вирусов."

Эти две цитаты дают достаточно полное представление о репозитории в общем смысле. Нас же интересуют репозитории, ориентированные конкретно на определенный дистрибутив Линукс. Такие репозитории представляют собой наборы пакетов программного обеспечения, ориентированные на определенную систему управления пакетами ПО, размещенные в специальном дереве каталогов и снабженные дополнительными файлами с индексами и контрольными суммами пакетов. Кроме того, для каждого репозитория разрабатываются специальные средства, обеспечивающие и облегчающие доступ пользователей к этому репозиторию. Для дистрибутива Дебиан таким средством является набор скриптов APT, для дистрибутива Fedora - утилита YUM. В Mandriva для этих целей служит программа urpmi.

Набор пакетов, включаемых в репозиторий, обычно создается таким образом, что в нем

  • имеются все необходимые пакеты для разрешения зависимостей и

  • отсутствуют противоречия между различными приложениями.

При использовании репозиториев становится возможным одной командой обновить все установленные в вашей системе приложения, а также установить какое-то приложение или группу приложений по заданному критерию. Но самое главное - это то, что использование репозиториев вкупе с соответствующим пакетным менеджером избавляет пользователя от так называемого "ада зависимостей" (dependence hell), когда приходится вручную разыскивать пакеты, от которых зависит устанавливаемое ПО, и которые необходимы для установки или обновления какого-то приложения.

Дополнительные сведения о репозиториях можно получить, например, из в специального HOWTO для дистрибутива Дебиан, автором которого является Aaron Isotton и который переведен на русский язык: "HOWTO: репозиторий Debian". Но нас сейчас интересует работа с репозиториями дистрибутива Mandriva, которые и будем рассматривать в оставшейся части заметки.

Если вы ставили систему с диска и не проводили дополнительных настроек, то единственным доступным репозиторием будет этот диск или его копия на жестком диске (при инсталляции обычно предлагается такую копию сделать). Все остальные репозитории - это сетевые ресурсы, то для их использования необходимо иметь доступ к Интернет. Конкретные адреса репозиториев Mandriva будут приведены ниже, когда будет рассмотриваться процедура обновления системы, а сейчас перейдем к описанию того инструментария для обновления ПО, который имеется в дистрибутиве Mandriva.

В Mandriva, как уже было сказано, для установки и обновления ПО разработана утилита urpmi. Назначение urpmi - установка rpm-пакетов, включая все зависимости. В man-странице к этой программе сообщается, что ее можно использовать для решения еще и других задач по управлению rpm-пакетами, но эти другие возможности мы пока не рассматриваем. В руководстве отмечено также, что urpmi может проводить инсталляцию с различных источников - локальных дисков и nfs-томов, сменных носителей (таких как CDROM-ы или DVD), удаленных источников по ftp, http, https, rsync и ssh, а также обладает способностью находить нужные для установки пакеты в местах, отличных от источника, заданного для указанного к установке пакета. Для сменных носителей urpmi может подсказать, что нужно вставить соответствующий диск, если это необходимо.

Программа может запускаться из командной строки. Правда, у меня попытка такого запуска окончилась неудачно - выдачей сообщения, что программа не найдена. Дело в том, что urpmi - это общее название для целого набора утилит. Например, для обновления ПО надо вызывать утилиту urpmi.update. Но изучением консольных команд мы заниматься не будем, поскольку гораздо удобнее решать подобные задачи в графической среде, а именно, запустив Центр управления Mandriva. Естественно, при этом потребуется ввести пароль суперпользователя:


Рис.1. Запрос пароля

После ввода пароля вы попадете на вкладку "Управление программами" Центра управления:


Рис.2. Вкладка управления программным обеспечением

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



Вы можете поместить свой комментарий к этой статье на форуме сайта в соответствующей теме