Как использовать команду RPM Package Manager (RPM) в Linux

12 set 2022 3 min di lettura
Как использовать команду RPM Package Manager (RPM) в Linux
Indice dei contenuti

Введение

RPM Package Manager (RPM) — это мощная система управления пакетами, используемая Red Hat Linux и ее производными, такими как CentOS и Fedora. RPM также относится к команде rpm и формату файла .rpm. Пакет RPM состоит из файла и репозитория метаданных, который включает такую ​​информацию, как зависимости и путь установки.

В этом руководстве мы поговорим о том, как использовать команду rpm для установки, обновления, удаления, проверки, запроса и иного управления пакетами RPM.

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

Обычно для установки нового пакета в дистрибутивах на основе Red Hat вы будете использовать одну из команд yum или dnf, которые могут разрешить и установить все зависимости пакета.

Всегда рекомендуется использовать yum или dnf вместо rpm для установки, обновления и удаления пакетов.

Перед установкой пакета RPM вам необходимо загрузить пакет в свою систему с помощью браузера или инструментов командной строки, таких как curl или wget.

При установке пакетов RPM убедитесь, что они созданы для архитектуры вашей системы и версии CentOS. Будьте особенно осторожны при замене или обновлении важных системных пакетов, таких как glibc, systemd или других служб и библиотек, необходимых для правильного функционирования системы.

Только root или пользователи с привилегиями sudo могут устанавливать или удалять RPM-пакеты.

Чтобы установить RPM-пакет с помощью rpm, используйте параметр -i, за которым следует имя пакета:

sudo rpm -ivh package.rpm

Параметр -v позволяет команде rpm отображать подробный вывод, а параметр -h отображать индикатор выполнения, отмеченный решеткой.

Вы можете пропустить часть загрузки и указать URL-адрес пакета RPM в команде rpm:

sudo rpm -ivh https://example.com/package.rpm

Чтобы обновить пакет RPM, используйте параметр -U. Если пакет не установлен, он установит:

sudo rpm -Uvh package.rpm

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

Чтобы установить пакет RPM без установки всех необходимых зависимостей в системе, используйте параметр --nodeps:

sudo rpm -Uvh --nodeps package.rpm

Чтобы удалить (удалить) RPM-пакет, используйте параметр -e:

sudo rpm -e package.rpm

Параметр --nodeps также полезен, когда вы хотите удалить пакет, не удаляя его зависимости:

sudo rpm -evh --nodeps package.rpm

Параметр --test позволяет rpm запустить команду установки или удаления без каких-либо действий. Он только показывает, будет ли команда работать или нет:

sudo rpm -Uvh --test package.rpm

Запрос пакетов RPM

Параметр -q указывает команде rpm выполнить запрос.

Чтобы запросить (искать), установлен ли конкретный пакет, передайте имя пакета команде rpm -q. Следующая команда покажет вам, установлен ли в системе пакет OpenJDK 11:

sudo rpm -q java-11-openjdk-devel

Если пакет установлен, вы увидите что-то вроде этого:

java-11-openjdk-devel-11.0.4.11-0.el8_0.x86_64

Используйте опцию -i, чтобы получить больше информации о требуемом пакете:

sudo rpm -qi java-11-openjdk-devel

Чтобы получить список всех файлов в установленном пакете RPM:

sudo rpm -ql package

Если вы хотите узнать, какому установленному пакету принадлежит тот или иной файл, введите:

sudo rpm -qf /path/to/file

Чтобы получить список всех пакетов, установленных в вашей системе, используйте параметр -a:

sudo rpm -qa

Проверка пакетов RPM

Когда возникает пакет, команда rpm проверяет, существует ли в системе каждый файл, установленный пакетом, дайджест файла, владельца, разрешения и т. д.

Чтобы проверить установленный пакет, используйте параметр -V. Например, чтобы проверить пакет openldap, вы должны запустить:

sudo rpm -V openldap-2.4.46-9.el8.x86_64

Если проверка пройдена, команда не будет печатать никаких результатов. В противном случае, если какая-либо из проверок не пройдена, будет отображаться символ, указывающий на непройденную проверку.

Например, следующий вывод показывает, что mTime файла изменилось ("T"):

.......T. c /etc/openldap/ldap.conf

Обратитесь к справочной странице RMP о значении каждого символа.

Чтобы проверить все установленные пакеты rpm, выполните следующую команду:

sudo rpm -Va

Вывод

rpm — это низкоуровневый инструмент командной строки для установки, запроса, проверки, обновления и удаления пакетов RMP. При установке пакетов RPM предпочтительнее использовать yum или dnf, так как они автоматически разрешают все зависимости.

Для получения дополнительной информации обо всех доступных параметрах команды введите в терминале:

man rpm

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.