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

UnixForum






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

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

На главную -> MyLDP -> Тематический каталог -> Установка новых программных пакетов

Менеджер пакетов 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 решит, какое из них использовать, основываясь на хронологии предыдущих загрузок. Он выбирает самые быстрые зеркала с наименьшим количеством ошибок и проблем. Он может делать параллельные загрузки, допускает множественные подключения к сайтам, поддерживает проверку даты создания файла, возобновление прерванной загрузки и кэширование файлов. Он может работать со всеми обычными протоколами: FTP, FTPS, HTTP, HTTPS, SCP, Telnet, LDAP.

Использование 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:

  • В.Костромин, "YUM HOWTO (управление программным обеспечением в дистрибутиве Fedora)"
  • Falko Timme, перевод: А.Фарутин, "Как установить локальный репозиторий YUM в ОС Fedora 8"
  • Pjotr Prins, Jeeva Suresh, Eelco Dolstra, перевод: Юрий Овчаренко Nix - инструмент, помогающий выбраться из "ада зависимостей"
  • Drew Ames, перевод - А.Тарасов, "Sbopkg - подключаем репозиторий Slackware"
  • Ryan Cartwright, перевод - А.Тарасов, "Apt - за ширмой Synaptic"
  • David M Williams, перевод - А.Дмитриев, "Пособие для начинающих по форматам пакетов ПО в Линукс"
  • Drew Ames, перевод - А.Тарасов, "Волшебный создатель пакетов" для Slackware" Описано средство создания пакетов для дистрибутива Slackware. Пакеты можно создавать как из исходных кодов, так и из уже существующих RPM- и Debian-пакетов, а также из бинарных установщиков типа install.sh.
  • Marco Marongiu, перевод А.Тарасова, "Простое управление пакетами с помощью Synaptic" Synaptic - это графическая оболочка (GUI) для управления программными пакетами в дистрибутивах, основанных на Debian. Если вы недолюбливаете консоль, и хотите устанавливать программы без ввода каких-либо команд, тогда читайте: эта статья для вас!
  • Александр Благин, "Локальный депозитарий."