Работа с RPM-пакетами. Как осуществить их установку и удаление?

работа с rpm-пакетами. как осуществить их установку и удаление?

Основные положения

Данный формат пакетов изначально создавался для Red Hat, что закреплено в расширении файлов с помощью рекурсивного акронима (сокр. RPM, полн. Red Hat Package Manager — менеджер пакетов Red Hat). В настоящее время этот формат используется во всех производных от Red Hat дистрибутивах: Fedora, SUSE, Mandriva и т.д. Низкоуровневая команда, осуществляющая операции с пакетами, имеет аналогичное название rpm.

Несмотря на все плюсы использования пакетов, команде rpm уделялось мало внимания, поэтому её программный код разделился на две независимые ветки. Red Hat и основная масса дистрибутивов Linux, произошедших от него, придерживаются версии RPM 4.*. Именно её мы будем изучать далее. В настоящее время за разработку этого стандарта отвечает проект http://rpm.org/.

Преимущества :

  • Простота установки, удаления и обновления программ.
  • Безопасность за счет криптографических подписей пакетов.
  • Автоматизации развертывания системы с помощью скриптов.
  • Специальные пакеты Delta-RPM позволяют обновлять программы частично, а не скачивать целиком для переустановки.

Недостатки:

  • Команда rpm не разрешает зависимости самостоятельно.
  • Новые версии пакетов не совместимы со старыми консольными командами. Например, в силу определенных обстоятельств вы не можете обновить команду rpm с версии 4.0, а современные пакеты требуют наличия версии 4.7.

Учет RPM-пакетов

При установке, удалении и обновлении пакетов rpm ведется строгий учет. В директории /var/lib/rpm создаются базы данных, хранящие списки установленных программ, их зависимостей. Помимо простого учета rpm сохраняет информацию о том, как файлы и директории изменялись при установке и удалении пакетов. Это позволяет сохранять целостность файловой системы и предотвращать её замусоривание.

Информация о зависимостях, кратное описание и ряд другой административной информации, необходимой для поддержания баз данных учета, хранится в метаданных пакетов.

Важно
Ни в коем случае не пытайтесь изменять содержимое баз данных rpm вручную. Это обязательно приведет к нарушениям в работе системы.

Формирование имен

Согласно установленным стандартам имена файлов rpm-пакетов должны формироваться особым способом. В общем виде такое имя можно представить схемой «[имя_пакета]-[версия]-[релиз].[архитектура].rpm».

Описание компонентов:

  • Имя пакета — произвольное название программы, выбранное создателем.
  • Версия — текущая версия программы. Как правило, задается тремя числами в формате 1.0.0.
  • Релиз — зачастую используется для краткой аббревиатуры имени дистрибутива, под который собрана программа. Например, «mdv» для Mandriva.
  • Архитектура — тип процессора. Например: i386, arm64, amd64 и т.д.

Настоящее имя файла, сформированное с учетом вышеописанных требований, могло бы выглядеть как «program-1.0.0-mdv.amd64.rpm».

Установка и удаление RPM-пакетов

В общем виде использование консольной команды rpm можно записать как «rpm -опции имя_пакета». Ниже мы рассмотрим ряд практических примеров, в которых происходят операции установки, удаления и обновления пакетов. Они просты для понимания, поэтому не требуют подробного описания. Вы также можете ознакомиться со всеми возможными опциями, вызвав справку по команде.

#установка пакета из файла, присутствующего на диске
rpm -i package_name.rpm

#скачивание и установка прямо с открытого ftp сервера
rpm -i ftp://host.domain/directory/package_name.rpm

#установка с выводом дополнительной информации и статуса
rpm -ivh package_name.rpm

#удаление. Обратите что имя пакета без расширения
rpm -e package_name

#обновление пакета с помощью файла с новой версией
rpm -U package_name.rpm

#вывод общей информации об установленном пакете
rpm -qi package_name

Последние публикации