Skip to content.

www.linux-os.ru

Sections
Personal tools
You are here: Home
Views

ShortRPM

last edited 7 months ago by avl

Менеджер пакетов RPM

Менеджер пакетов RPM лежит в основе множества дистрибутивов. Продукты Redнat/Fedora, Suse, Connectiva, ASP и ALT - все это rpm-based дистрибутивы.

Зачастую rpm используется только для установки и удаления программ. Но на самом деле это гораздо более ценный инструмент, который может рассказать вам очень многое о той системе, в которой вы работаете. Информационная составляющая RPM, эта та громадная подводная часть айсберга, которая зачастую остается неиспользуемой неискушенным пользователем, только что перешедшим с виндовс, где ничего подобного по удобству и мощи просто нет.

RPM может рассказать пользователю, откуда взялся тот или иной файл, какие файлы входят в состав той или иной программы, что вообще установлено в системе и что за что цепляется. Это инструмент, который вносит ясность в устройство дистрибутива и помогает ее сопровождать. Непосредственно для установки и удаления программ обычно используются более интеллектуальные программы типа APT, которые могут автоматически разрешать зависимости между пакетами и наращивают функциональность пакетного менеджера за счет введения понятия внешнего репозитария (хранилища) программ. Надо отчетливо понимать, что APT не является заменой RPM. Он работает поверх RPM и не позволяет решать абсолютно все возникающие проблемы.

Часто используемые команды RPM

Немного дополнительной информации перед установкой.

Указывая ключ -p, можно получить информацию непосредственно из rpm файла.

$rpm -qip файл.rpm - посмотреть сводку на пакет.

$rpm -qlp файл.rpm - список файлов и их расположение.

Немного дополнительной информации об уже установленном.

$rpm -qa > list_rpms.txt - список установленных пакетов.

$rpm -qa --qf "%{Name}\n" > list_rpms.txt - список установленных пакетов в виде, пригодном для скармливания АПТу.

$rpm -qa | grep слово - найти в списке пакетов те, названия которых содержвт "слово".

$rpm -qi пакеt - посмотреть сводку на пакет.

$rpm -ql пакет - список файлов и их расположение.

$rpm -q --provides пакет - чего предоставляет пакет для других.

$rpm -q --requires пакет - чего требует пакет для своей работы.

Установка и удаление (требует прав суперюзера)

#rpm -i файл.rpm - установить пакет.

#rpm -e пакет - удалить пакет.

#rpm -e --noscripts пакет - удалить пакет. иногда из за ошибок в скриптах удаление предыдущей командой невозможно. тут и поможет спец-ключик.

#rpm -e --notriggers пакет - удалить пакет. иногда из за ошибок в скриптах-триггерах удаление предыдущей командой опять невозможно. тут и поможет еще один спец-ключик.

#rpm -e --nodeps пакет - удалить пакет. Иногда из за ошибок, а чаще всего из за лени админа удаление пакета нарушает зависимости, а потому не проходит. Если вы уверены в своих силах - используйте последний довод короля - эту команду. Хотя лучше, конечно, использовать apt-get remove пакет.

Работа с базой.

#rpm --initdb

создаст пустую базу. часто используется в паре с --chroot для создания базы на новом месте.

#rpm --rebuilddb

пересчитывает индексы в базе и удаляет локи. всетаки это локальная db и при возникновении странностей в работе рпм или ошибок - лечится именно этой командой.