Android

Команда Rpm в Linux

Научись Linux: сборка программ из исходников (эпизод 13)

Научись Linux: сборка программ из исходников (эпизод 13)

Оглавление:

Anonim

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

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

sudo rpm -Uvh package.rpm

Если пакет, который вы устанавливаете или обновляете, зависит от других пакетов, которые в данный момент не установлены, 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 в своем терминале или посетите веб-сайт RPM.org.

Centos Terminal об / мин