Библиотека сайта rus-linux.net
Менеджер пакетов Smart - “умный” способ обновления вашей системы
Оригинал статьи: Updatingyour system the Smart way
Автор: Federico Kereki. Дата: 8 ноября 2007 г.
Перевел: М.Антипенко. Дата перевода: 5 декабря 2008 г.
Страница Smart: http://labix.org/smart
У всех дистрибутивов Linux есть что-то общее, но многие отличаются применяемыми средствами инсталляции и обновления программ. Gentoo основан на Portage. SUSE использует YaST. Fedora и Red Hat выбирают yum, Linspire предпочитает CNR ... Да, вспомните еще различные форматы пакетов: RPM, Debian, source (исходники) и другие, менее известные.
Менеджер пакетов Smart работает со всеми основными дистрибутивами (Mandriva, Fedora, RHEL, Debian, SUSE, PCLinuxOS, Slamd64 и др.- примечание переводчика), заменяя родные инструментальные средства и устанавливая различные типы пакетов.
Как пользователь openSUSE, я попробовал YaST, Zen, zypper, apt-get и Synaptic, но наконец-то остановился на Smart. Теперь мой первый шаг после каждой инсталляции и обновления – установка Smart и избавление от всех альтернатив.
Smart к моменту перевода статьи имеет версию 1.1 (скачать исходники) и доступен по лицензии GPL.
Почему Smart “умный”?
Имя Smart происходит из алгоритмов, которые он использует, чтобы решить проблемы “ада зависимостей”, возникающие, когда вы хотите установить пакет, который зависит от других пакетов, которые в свою очередь зависят от еще большего числа пакетов. Если Вы попытаетесь сделать такую инсталляцию вручную, то Вы проведете очень много времени, упорно ища зависимости. Smart не только пытается решить эти проблемы автоматически, но также ищет самое лучшее решение из возможных. Например, модернизируя пакет, он может выбрать не самую последнюю версию, если это лучше для остальной части установленных пакетов в Вашей системе.
Кликните чтобы увеличить |
Использование Smart.
Smart предлагает несколько видов интерфейса для различных видов пользователей. Вы можете использовать интерфейс командной строки, интерфейс оболочки (который облегчает выполнение множества операций) или графический интерфейс, основанный на языке Python. Пользователи KDE могут также установить ksmarttray и получать уведомления о доступных обновлениях.
Самый простой способ установить Smart – использование стандартных репозиториев и инструментальных средств Вашего любимого дистрибутива. Например, на сайте openSUSE Smart находится в репозитории suser-guru и Вы можете установить его с помощью YaST.
Для определенных дистрибутивов возможна загрузка готовых бинарников Smart (есть бинарные пакеты для Mandriva, Fedora, RHEL, Debian, SUSE, PCLinuxOS, Slamd64 и др.- примечание переводчика). Если и это не получается, то Вы можете загрузить исходники Smart, скомпилировать и установить его самостоятельно.
Что такое каналы.
Как только вы установите Smart, Вы можете использовать его, чтобы установить другие приложения. В терминологии Smart программные репозитории называются каналами. Вы можете узнать о возможных каналах Smart, используя команду smart channel --help, которая показывает, что Smart может работать со следующими репозиториями (некоторые из дистрибутивов, использующих указанный формат, показаны в скобках):
apt-deb |
APT-DEB репозитории |
apt-rpm |
APT-RPM репозитории |
deb-dir |
DEB репозитории (Debian и конечно Ubuntu) |
red-carpet |
Red Carpet каналы |
rpm-dir |
RPM директории (Fedora) |
rpm-hdl |
RPM header list |
rpm-md |
RPM metadata |
slack-site |
Slackware репозитории (очевидно Slackware) |
urpmi | urpmi репозитории (Mandriva) |
yast2 | YaST репозитории (openSUSE) |
Чтобы определить каналы, используя графический интерфейс, выберите пункт Edit->Channels. Вы увидите окно, которое показывает все определенные каналы и позволяет Вам добавлять, удалять и изменять каналы.
Самый прямой способ добавить канал, это перейти к New->Provide Channel->Information, выбрать тип канала, и затем определить алиас (псевдоним, короткое название), полное имя, приоритет и URL для репозитория. Затем щелкните на Manual update для ручного обновления канала вместо автоматического. Нажмите Disabled, чтобы выбрать, использовать канал или нет. И нажмите Removable, если выбранный репозиторий находится на сменных носителях, таких как CD или DVD.
Создав или отредактировав все Ваши каналы, нажмите на значок Update, расположенный вверху слева, или перейдите File->Update Channels. Если при этом какой-то из каналов будет недоступен, то процесс обновления остановится, пока Вы не закроете окно предупреждения; если же Вы будете использовать shell-версию, то Smart переключится на следующий канал.
Вы можете также выполнять эти действия из командной строки:
Smart channel --add мой_канал type=“тип_канала” name=“имя_репозитория” baseurl=“URL_канала”
Вы можете подробнее узнать об этом с помощью команд smart --help или man smart.
Подходящие каналы можно легко найти в Интернете. И помните, что Вы можете использовать все стандартные репозитории для Вашего дистрибутива. Конечно, Вы можете также использовать репозитории для других дистрибутивов, но советую не делать этого; лучше остеречься, чем потом жалеть об этом.
Если Вы используете openSUSE, то Вам будет полезна эта информация на официальном сайте SUSE. С ее помощью можно быстро добавить несколько репозиториев, в том числе для старых версий openSUSE.
Установка и обновление программного обеспечения.
Установка или обновление установленного программного обеспечения проходит очень живо. Используя графический интерфейс, Вы можете найти определенный пакет (для этого нажмите на значок с изображением увеличительного стекла и напечатайте, что Вы ищете) или просто просматривать различные группы пакетов. После того, как Вы найдете желаемые пакеты, нажимаете на них для выбора. По окончании выбора щелкните по значку запуска (или выбираете File->Execute Changes) и Smart загрузит и установит все, что Вами отмечено.
Также могут помочь две опции обновления в меню View: выберите одновременно Hide Non-upgrades и Hide Old, и тогда Вы будете видеть только последние обновления программного обеспечения Вашей системы. Если Вы достаточно предприимчивы, то Вы можете нажать на Edit->Upgrade all (обновить все), или же выбрать только несколько пакетов. Не волнуйтесь о зависимостях: Smart позаботится о них за Вас, и Вы ничего не должны будете делать, если только Smart не попадет в тупиковое состояние. В этом случае самое безопасное, что можно сделать – отложить обновление до лучших времен.
Если Вы не хотите использовать версию с GUI, то Вы можете попробовать установить желаемый пакет или провести полное обновление из командной строки:
Smart install “желаемый_пакет” или Smart upgrade all
Еще лучше использовать smart --shell и затем команды search, install, upgrade и commit; используйте help, чтобы узнать о них больше.
Если Вы проводите слишком много времени, ища пакеты, решая зависимости вручную и напрасно тратя время на обновления, то Smart – самый простой способ поддерживать вашу систему в актуальном состоянии или установить новое программное обеспечение. Вы можете использовать его в нескольких различных дистрибутивах. Это позволит Вам работать с пакетами единообразно, вместо того, чтобы изучать особенности многих различных менеджеров пакетов.
Об авторе: Federico Kereki является инженером Uruguayan systems (“Уругвайских систем”) с более чем 20-летним опытом разработки систем, работы консультантом и преподавания в университетах.
Другие статьи нашей библиотеки на тему управления программным обеспечением в Linux: