Linux

rpm — команда Linux — команда Unix

Команда rpm является одним из оригинальных менеджеров пакетов Linux. RPM даже обозначает Redhat Package Manager. В отличие от более продвинутых менеджеров пакетов, таких как DNF, rpm прост и требует гораздо большего ручного вмешательства. Тем не менее, это все еще эффективное решение для управления пакетами, которое служит отличной резервной копией в семействе дистрибутивов Linux Redhat.

Использование RPM

Чаще всего вы столкнетесь с ситуацией, когда вы используете rpm вместо DNF, когда у вас есть локально загруженный пакет .rpm, который вы хотите установить. Конечно, DNF может справиться с этим, но если по той или иной причине он недоступен, вы можете вместо этого положиться на rpm. Это будет выглядеть примерно так:

sudo rpm -i /path/to/packagename.rpm

-I флаг указывает оборотов в минуту , чтобы установить, и путь ведет к пакету для установки.

Это не все, на что приятно смотреть. Большинство людей используют комбинацию флагов -ivh для отображения более подробной информации, когда команда rpm устанавливает пакет.

sudo rpm -ivh /path/to/packagename.rpm

Команда rpm также работает через Интернет, что позволяет одновременно загружать и устанавливать пакет.

sudo rpm -ivh https://example.com/fedora/32/packagename.rpm

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

sudo rpm -Uvh https://example.com/fedora/32/packagename.rpm

Как и любой другой менеджер пакетов, вы также можете использовать rpm для удаления пакетов из вашей системы. Используйте -e fag вместе с -vv для очень подробного вывода, чтобы убедиться, что вы случайно не удалили то, что хотите.

sudo rpm -evv packagename

Если вы хотите получить больше информации о ваших пакетах, прежде чем устанавливать их, rpm также расскажет вам об этом. -Q флаг позволит вам запросить пакет. Объедините его с -p и -R, чтобы получить подробный отчет о возможностях пакетов и необходимых зависимостях. В целом, это выглядит так:

sudo rpm -qpR /path/to/packagename.rpm

Вы также можете использовать rpm для просмотра списка установленных пакетов.

sudo rpm -qa

Это может быть ошеломляющим, поэтому, если вы ищете что-то конкретное, отправьте это на grep.

sudo rpm -qa | поиск grep -i

Если вы просто хотите увидеть свои последние добавления, вы можете сделать это тоже.

sudo rpm -qa --last

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

Техническая разбивка оборотов

НАЗВАНИЕ

rpm — менеджер пакетов RPM

СИНТАКСИС

ЗАПРОСЫ И ПРОВЕРКИ:

 

rpm  { -q | —query } [ select-options ] [ query-options ]

 

rpm  { -V | —verify } [ select-options ] [ verify-options ]

 

rpm —  импорт  PUBKEY …

 

rpm  { -K | —checksig } [ —nosignature ] [ —nodigestPACKAGE_FILE …

 

УСТАНОВКА, ОБНОВЛЕНИЕ И УДАЛЕНИЕ ПАКЕТОВ:

 

rpm  { -i | —install } [ install-optionsPACKAGE_FILE …

 

rpm  { -U | —upgrade } [ install-optionsPACKAGE_FILE …

 

rpm  { -F | —freshen } [ install-optionsPACKAGE_FILE …

 

rpm  { -e | —erase } [ —allmatches ] [ —nodeps ] [ —noscripts ] [ —notriggers ] [ —repackage ] [ —testPACKAGE_NAME …

 

РАЗНООБРАЗНЫЙ:

 

rpm  { —initdb | —rebuilddb }

 

rpm  { —addsign | —resignPACKAGE_FILE …

 

rpm  { —querytags | —showrc }

 

rpm  { —setperms | —setugidsPACKAGE_NAME …

 

выбрать-параметры

 

[ PACKAGE_NAME ] [ -a, — all ] [ -f, — файл  FILE ] [ -g, — группа  GROUP ] { -p, — пакет  PACKAGE_FILE ] [ —fileid  MD5 ] [ —hdrid  SHA1 ] [ —pkgid  MD5 ] [ —tid  TID ] [ —querybynumber  HDRNUM ] [ —triggeredby  PACKAGE_NAME ] [ —whatprovides  ВОЗМОЖНОСТЬ ] [ —whatrequires  ВОЗМОЖНОСТЬ ]

 

запрос-опции

 

[ —changelog ] [ -c, — configfiles ] [ -d, — docfiles ] [ —dump ] [ —filesbypkg ] [ -i, — info ] [ —last ] [ -l, — список ] [ —provides ] [ —qf, — queryformat  QUERYFMT ] [ -R, — требует ] [ —scripts ] [ -s, — состояние ] [ —triggers, — triggerscripts ]

 

проверить-параметры

 

[ —nodeps ] [ —nofiles ] [ —noscripts ] [ —nodigest ] [ —nosignature ] [ —nolinkto ] [ —nomd5 ] [ —nosize ] [ —nouser ] [ —nogroup ] [ —nomtime ] [ —nomode ] [ —nordev ]

 

опции-установки

 

[ —Aid ] [ —allfiles ] [ —badreloc ] [ —excludepath  OLDPATH ] [ —excludedocs ] [ —force ] [ -h, — хэш ] [ —ignoresize ] [ —ignorearch ] [ —ignoreos ] [ —includedocs ] [ —justdb ] [ —nodeps ] [ —nodigest ] [ —nosignature ] [ —nosuggest ] [ —noorder ] [ —noscripts ] [ —notriggers ] [ —oldpackage ] [ —percent] [ —prefix  NEWPATH ] [ —relocate  OLDPATH = NEWPATH ] [ —repackage ] [ —replacefiles ] [ —replacepkgs ] [ —test ]

 

ОПИСАНИЕ

rpm  — это мощный  менеджер пакетов , который можно использовать для создания, установки, запроса, проверки, обновления и удаления отдельных пакетов программного обеспечения.  Пакет  состоит из архива файлов и мета-данные , используемые для установки и удаления архивных файлов. Метаданные включают вспомогательные сценарии, атрибуты файлов и описательную информацию о пакете.  Пакеты  бывают двух видов: двоичные пакеты, используемые для инкапсуляции устанавливаемого программного обеспечения, и исходные пакеты, содержащие исходный код и рецепт, необходимые для создания двоичных пакетов.

Необходимо выбрать один из следующих основных режимов:  запроспроверкапроверка подписи , установка / обновление / обновлениеудалениеинициализация базы данныхперестройка базы данныхотставкадобавление подписиустановка владельцев / группотображение меток запроса и  отображение конфигурации .

ОБЩИЕ НАСТРОЙКИ

Эти параметры могут использоваться во всех различных режимах.

-?, —Помогите

Напечатайте более длинное сообщение об использовании, чем обычно.

—версия

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

—тихий

Печатайте как можно меньше — обычно отображаются только сообщения об ошибках.

-v

Вывести подробную информацию — обычно отображаются обычные сообщения о ходе выполнения.

-vv

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

—rcfile  FILELIST

Каждый из файлов в FILELIST, разделенных  двоеточиями,  последовательно читается по  rpm  для получения информации о конфигурации. Должен существовать только первый файл в списке, и тильды будут расширены до значения $ HOME . FILELIST по умолчанию   это  / usr / lib / rpm / rpmrc : / usr / lib / rpm / redhat / rpmrc : ~ / .rpmrc .

—pipe  CMD

Передает вывод  оборотов  в команду  CMD .

—dbpath  КАТАЛОГ

Используйте базу данных в  DIRECTORY  больше, чем путь по умолчанию  / var / lib / rpm

—root  КАТАЛОГ

Используйте дерево файловой системы с корнем в  DIRECTORY  для всех операций. Обратите внимание, что это означает, что база данных в  DIRECTORY  будет использоваться для проверки зависимостей, и любой скриптлет (например, % post  при установке или  % prep  при сборке пакета) будет запущен после chroot (2) для DIRECTORY .

УСТАНОВИТЬ И ОБНОВИТЬ ВАРИАНТЫ

Общая форма команды установки rpm:

 

rpm  { -i | —install } [ install-optionsPACKAGE_FILE …

 

Это устанавливает новый пакет.

Общая форма команды обновления rpm:

 

rpm  { -U | —upgrade } [ install-optionsPACKAGE_FILE …

 

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

 

rpm  { -F | —freshen } [ install-optionsPACKAGE_FILE …

 

Это обновит пакеты, но только если в настоящее время существует более ранняя версия. PACKAGE_FILE  может быть определен как  FTP  или  HTTP  URL , в этом случае пакет будет закачан перед установкой. Посмотрите  ОПЦИИ FTP / HTTP  для получения информации о  внутренней поддержке  rpp  и  http-  клиента rpm .

 

—aid

При необходимости добавьте предложенные пакеты в набор транзакций.

—все файлы

Устанавливает или обновляет все отсутствующие файлы в пакете, независимо от того, существуют ли они.

—badreloc

При использовании с  —relocate разрешить перемещение по всем путям к файлам, а не только к тем  OLDPATH , которые включены в подсказку (и) перемещения двоичного пакета.

—excludepath  OLDPATH

Не устанавливайте файлы, имя которых начинается с  OLDPATH .

—excludedocs

Не устанавливайте файлы, помеченные как документация (включая справочные страницы и документы texinfo).

—force

То же, что и использование  —replacepkgs—replacefiles и  —oldpackage .

-h, —hash

Распечатайте 50 хеш-меток, поскольку архив пакета распакован. Используйте с  -v | —verbose  для лучшего отображения.

—ignoresize

Не проверяйте файловые системы на наличие достаточного дискового пространства перед установкой этого пакета.

—ignorearch

Разрешить установку или обновление, даже если архитектуры двоичного пакета и хоста не совпадают.

—ignoreos

Разрешить установку или обновление, даже если операционные системы двоичного пакета и хоста не совпадают.

—includedocs

Установите файлы документации. Это поведение по умолчанию.

—justdb

Обновлять только базу данных, а не файловую систему.

—nodigest

Не проверяйте дайджесты пакетов или заголовков при чтении.

—nosignature

Не проверяйте подписи пакетов или заголовков при чтении.

—nodeps

Не выполняйте проверку зависимостей перед установкой или обновлением пакета.

—nosuggest

Не предлагайте пакеты, которые предоставляют отсутствующую зависимость.

—noorder

Не переупорядочивайте пакеты для установки. Список пакетов обычно переупорядочивается для удовлетворения зависимостей.

—noscripts

—nopre

—nopost

—nopreun

—nopostun

Не выполняйте скриптлет с тем же именем. Опция  —noscripts  эквивалентна

—nopre  —nopost  —nopreun  —nopostun

и отключает выполнение соответствующих  скриптов ( %)% pre% post% preun и  % postun .

—notriggers

—notriggerin

—notriggerun

—notriggerpostun

Не выполняйте никакой триггерный скриптлет указанного типа. Опция  —notriggers  эквивалентна

—notriggerin  —notriggerun  —notriggerpostun

и выключает исполнение соответствующих  % triggerin% triggerun и % triggerpostun  скриптлет (ы).

—oldpackage

Разрешить обновление, чтобы заменить более новый пакет более старым.

—процентов

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

—prefix  NEWPATH

Для перемещаемых бинарных пакетов переведите все пути к файлам, которые начинаются с префикса установки в подсказке (ах) о перемещении пакетов, в  NEWPATH .

—relocate  OLDPATH = NEWPATH

Для перемещаемых двоичных пакетов переведите все пути к файлам, которые начинаются с  OLDPATH  в подсказке ( -ках) о перемещении пакетов, в  NEWPATH . Эту опцию можно использовать повторно, если необходимо переместить несколько OLDPATH в пакете.

—repackage

Перепакуйте файлы перед удалением. Ранее установленный пакет будет назван в соответствии с макросом  % _repackage_name_fmt  и будет создан в каталоге, названном макросом  % _repackage_dir  (значение по умолчанию —  / var / tmp ).

—replacefiles

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

—replacepkgs

Установите пакеты, даже если некоторые из них уже установлены в этой системе.

—контрольная работа

Не устанавливайте пакет, просто проверяйте и сообщайте о потенциальных конфликтах.

ПАРАМЕТРЫ УДАЛЕНИЯ

Общая форма команды удаления rpm:

 

rpm  { -e | —erase } [ —allmatches ] [ —nodeps ] [ —noscripts ] [ —notriggers ] [ —repackage ] [ —testPACKAGE_NAME …

 

Также могут использоваться следующие параметры:

—allmatches

Удалите все версии пакета, которые соответствуют  PACKAGE_NAME . Обычно выдается ошибка, если  PACKAGE_NAME  соответствует нескольким пакетам.

—nodeps

Не проверяйте зависимости перед удалением пакетов.

—noscripts

—nopreun

—nopostun

Не выполняйте скриптлет с тем же именем. Параметр  —noscripts  во время удаления пакета эквивалентен

—nopreun  —nopostun

и отключает выполнение соответствующих  сценариев% preun и  % postun  .

—notriggers

—notriggerun

—notriggerpostun

Не выполняйте никакой триггерный скриптлет указанного типа. Опция  —notriggers  эквивалентна

—notriggerun  —notriggerpostun

и отключает выполнение соответствующих  сценариев  (ов) % triggerun и  % triggerpostun .

—repackage

Перепакуйте файлы перед удалением. Ранее установленный пакет будет назван в соответствии с макросом  % _repackage_name_fmt  и будет создан в каталоге, названном макросом  % _repackage_dir  (значение по умолчанию —  / var / tmp ).

—контрольная работа

На самом деле ничего не деинсталлируйте, просто выполните действия. Полезно в сочетании с   опцией -vv для отладки.

ВАЖНЫЕ ВАРИАНТЫ

Общая форма команды запроса rpm:

 

rpm  { -q | —query } [ select-options ] [ query-options ]

 

Вы можете указать формат, в котором должна быть напечатана информация о пакете. Для этого вы используете

—qf | —queryformat  QUERYFMT

опция, за которой  следует  строка формата QUERYFMT . Форматы запросов — это модифицированные версии стандартного   форматирования printf (3) . Формат состоит из статических строк (которые могут включать стандартные экранированные символы C для символов новой строки, табуляции и других специальных символов) и   форматеров типа printf (3) . Поскольку  rpm  уже знает тип для печати, спецификатор типа должен быть опущен и заменен именем тега заголовка для печати, заключенного в   символы {} . Имена тегов не учитывают регистр, и ведущая   часть имени тега RPMTAG_ также может быть опущена.

Альтернативные форматы вывода могут быть запрошены с помощью тега  : typetag . В настоящее время поддерживаются следующие типы:

: броня

Завернуть открытый ключ в доспехи ASCII.

: base64

Кодировать двоичные данные, используя base64.

:Дата

Используйте strftime (3) формат «% c».

:день

Используйте формат strftime (3) «% a% b% d% Y».

: depflags

Флаги зависимостей формата.

: FFLAGS

Флаги формата файла.

: шестигранный

Формат в шестнадцатеричном.

: восьмеричное

Формат в восьмеричном.

: завивка

Формат файла разрешений.

: shescape

Избегайте одинарных кавычек для использования в скрипте.

: TriggerType

Суффикс показа триггера.

Например, чтобы напечатать только имена запрошенных пакетов, вы можете использовать  % {NAME}  в качестве строки формата. Чтобы напечатать имя пакета и информацию о распространении в двух столбцах, вы можете использовать  % -30 {NAME}% {DISTRIBUTION}rpm  напечатает список всех известных ему тегов, когда он вызывается с   аргументом —querytags .

Существует два подмножества опций для запроса: выбор пакета и выбор информации.

ВАРИАНТЫ ВЫБОРА ПАКЕТА:

 

ИМЯ ПАКЕТА

Запрос установленного пакета с именем  PACKAGE_NAME .

-a, —all

Запросить все установленные пакеты.

-f, —file  ФАЙЛ

Пакет запросов, владеющий  FILE .

—fileid  MD5

Пакет запросов, содержащий заданный идентификатор файла, то есть   дайджест MD5 содержимого файла.

-g, —group  GROUP

Запрос пакетов с группой  GROUP .

—hdrid  SHA1

Пакет запроса, который содержит заданный идентификатор заголовка, то есть   дайджест SHA1 области неизменного заголовка.

-p,  —package_PACKAGE_FILE

Запросить (удалить) пакет  PACKAGE_FILEPACKAGE_FILE  может быть определен как FTP  или  HTTP в  стиле URL, в этом случае заголовок пакета будет и запрошены. Посмотрите ОПЦИИ FTP / HTTP  для получения информации о  внутренней поддержке  rpp  и  http-  клиента rpm . PACKAGE_FILE Аргумент (ы), если не двоичный пакет, будет интерпретирован как манифест пакета ASCII. Комментарии допускаются, начиная с символа «#», и каждая строка файла манифеста пакета может включать в себя выражения глоба, разделенные пробелами, включая URL-адреса с выражениями удаленного глобуса, которые будут расширены до путей, которые заменяются вместо манифеста пакета как дополнительные   аргументы PACKAGE_FILE к запросу.

—pkgid  MD5

Пакет запроса, который содержит заданный идентификатор пакета, то есть   дайджест MD5 объединенного заголовка и содержимого полезной нагрузки.

—querybynumber  HDRNUM

Опросить  HDRNUM й записи базы данных напрямую; это полезно только для отладки.

—specfile  SPECFILE

Разбор и запрос  SPECFILE,  как если бы это был пакет. Хотя не вся информация (например, списки файлов) доступна, этот тип запроса позволяет использовать rpm для извлечения информации из spec-файлов без необходимости написания анализатора specfile.

—TID  TID

Пакеты запросов, которые имеют заданный   идентификатор транзакции TID . В настоящее время в качестве идентификатора транзакции используется метка времени Unix. Все пакеты, установленные или удаленные в рамках одной транзакции, имеют общий идентификатор.

—triggeredby  PACKAGE_NAME

Запрашивать пакеты, которые запускаются пакетами  PACKAGE_NAME .

— Whatprovides  ВОЗМОЖНОСТЬ

Запросите все пакеты, которые предоставляют   возможность CAPABILITY .

—Что требуется  ВОЗМОЖНОСТЬ

Запросите все пакеты, для которых требуется  CAPABILITY  .

ВАРИАНТЫ ЗАПРОСА ПАКЕТА:

 

—changelog

Показать информацию об изменении для пакета.

-c, —configfiles

Список только конфигурационных файлов (подразумевается  -l ).

-d, —docfiles

Список только файлов документации (подразумевается  -l ).

—dump

Дамп файла информации следующим образом:

 

размер пути mtime группа владельцев режима md5sconfig isdoc rdev символическая ссылка


Эта опция должна использоваться по крайней мере с одним из  -l-c-d .

—filesbypkg

Список всех файлов в каждом выбранном пакете.

-i, —info

Отображение информации о пакете, включая имя, версию и описание. При этом используется  —queryformat,  если он был указан.

—прошлой

Заказывает список пакетов по времени установки, так что последние пакеты находятся вверху.

-l, —list

Список файлов в упаковке.

—provides

Перечислите возможности, которые предоставляет этот пакет.

-R, — требует

Список пакетов, от которых зависит этот пакет.

—scripts

Перечислите специфичные для пакета сценарии, которые используются как часть процессов установки и удаления.

-s, —state

Показать  состояния  файлов в пакете (подразумевает  -l ). Состояние каждого файла  нормальное , не установлено или  заменено .

—triggers, —triggerscripts

Показать сценарии триггера, если таковые имеются, которые содержатся в пакете.

ПРОВЕРКА ВАРИАНТОВ

Общая форма команды проверки rpm:

 

rpm  { -V | —verify } [ select-options ] [ verify-options ]

 

Проверка пакета сравнивает информацию об установленных файлах в пакете с информацией о файлах, взятых из метаданных пакета, хранящихся в базе данных rpm. Помимо прочего, проверка сравнивает размер, сумму MD5, разрешения, тип, владельца и группу каждого файла. Любые несоответствия отображаются. Файлы, которые не были установлены из пакета, например, файлы документации, исключенные при установке с использованием параметра « —excludedocs », будут игнорироваться.

Параметры выбора пакета такие же, как и для запроса пакета (включая файлы манифеста пакета в качестве аргументов). Другие параметры, уникальные для проверки режима:

—nodeps

Не проверяйте зависимости пакетов.

—nodigest

Не проверяйте дайджесты пакетов или заголовков при чтении.

—файлов нет

Не проверяйте какие-либо атрибуты файлов пакета.

—noscripts

Не  выполняйте скриптлет% verifyyscript  (если есть).

—nosignature

Не проверяйте подписи пакетов или заголовков при чтении.

—nolinkto

—nomd5

—nosize

—nouser

—nogroup

—nomtime

—nomode

—nordev

Не проверяйте соответствующий атрибут файла.

Формат вывода — строка из 8 символов, возможный атрибут маркера:

 

c% config файл конфигурации. 
файл документации d% doc.
g% файл-призрак (т.е. содержимое файла не включено в полезную нагрузку пакета).
% лицензионный файл лицензии.
r% readme файл readme.

из заголовка пакета, за которым следует имя файла. Каждый из 8 символов обозначает результат сравнения атрибута (ов) файла со значением этого атрибута (ов), записанного в базе данных. Один « . » ( Точка ) означает, что тест пройден, а один « ? » (Вопросительный знак) означает, что тест не может быть выполнен (например, права доступа к файлам препятствуют чтению). В противном случае символ (мнемонически em B oldded) обозначает провал соответствующего   теста —verify :

 

S Размер файла отличается 
M Режим отличается (включает в себя разрешения и тип файла)
5 Сумма MD5 отличается
D Несоответствие основного / младшего номера устройства
L readLink (2) Несоответствие пути
U Различное владение пользователем
G Различное владение группой
T Разность mTime

 

ЦИФРОВАЯ ПОДПИСЬ И ПРОВЕРКА ДИГЕСТА

 

rpm —  импорт  PUBKEY …

 

rpm  { —checksig } [ —nosignature ] [ —nodigestPACKAGE_FILE …

 

Опция  —checksig  проверяет все дайджесты и подписи, содержащиеся в  PACKAGE_FILE,  чтобы гарантировать целостность и происхождение пакета. Обратите внимание, что подписи теперь проверяются всякий раз, когда пакет читается, и  —checksig  полезен для проверки всех дайджестов и подписей, связанных с пакетом.

Цифровые подписи не могут быть проверены без открытого ключа. Бронированный открытый ключ ascii можно добавить в   базу данных rpm с помощью  —import . Импортированный открытый ключ переносится в заголовке, а управление кольцами ключей выполняется точно так же, как управление пакетами. Например, все импортированные в настоящее время открытые ключи могут быть отображены с помощью:

rpm -qa gpg-pubkey *

Подробная информация о конкретном открытом ключе при импорте может быть отображена с помощью запроса. Вот информация о ключе Red Hat GPG / DSA:

rpm -qi gpg-pubkey-db42a60e

Наконец, публичные ключи могут быть удалены после импорта, как пакеты. Вот как можно удалить ключ Red Hat GPG / DSA

rpm -e gpg-pubkey-db42a60e

ПОДПИСАНИЕ ПАКЕТА

 

rpm  —addsign | —resign  PACKAGE_FILE …

 

Обе  опции —addsign  и  —resign  генерируют и вставляют новые подписи для каждого заданного пакета PACKAGE_FILE  , заменяя любые существующие подписи. Есть два варианта по историческим причинам, в настоящее время нет различий в поведении.

ИСПОЛЬЗОВАНИЕ GPG ДЛЯ ПОДПИСАНИЯ ПАКЕТОВ

Чтобы подписывать пакеты с использованием GPG,  rpm  должен быть настроен для запуска GPG и возможности находить связку ключей с соответствующими ключами. По умолчанию  rpm  использует те же соглашения, что и GPG, для поиска связок ключей, а именно   переменную среды $ GNUPGHOME . Если ваши брелоки расположены не там, где их ожидает GPG, вам нужно настроить макрос  % _gpg_path  в качестве расположения брелоков GPG для использования.

Для совместимости со старыми версиями GPG, PGP и rpm должны быть настроены только пакеты подписи V3 OpenPGP. Могут использоваться алгоритмы проверки DSA или RSA, но предпочтительнее DSA.

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

%_подпись

Тип подписи. На данный момент поддерживаются только gpg и pgp.

% _gpg_name

Имя «пользователя», ключ которого вы хотите использовать для подписи ваших пакетов.

Например, чтобы иметь возможность использовать GPG для подписи пакетов от имени пользователя  «John Doe < jdoe@foo.com  из набора ключей, расположенного в  /etc/rpm/.gpg,  с использованием исполняемого файла  / usr / bin / gpg,  вы могли бы включают

 

% _signature gpg 
% _gpg_path /etc/rpm/.gpg%
_gpg_name Джон Доу <jdoe@foo.com>
% _gpgbin / usr / bin / gpg

в файле конфигурации макроса. Используйте  / etc / rpm / macros  для конфигурации для системы и  ~ / .rpmmacros для конфигурации для пользователя.

ВАРИАНТЫ БАЗЫ ДАННЫХ REBUILD

Общая форма команды восстановления базы данных rpm:

 

rpm  { —initdb | —rebuilddb } [ -v ] [ —dbpath  DIRECTORY ] [ —root  DIRECTORY ]

 

Используйте  —initdb  для создания новой базы данных, используйте  —rebuilddb  для перестройки индексов базы данных из установленных заголовков пакетов.

SHOWRC

Команда

об / мин  —showrc

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

Опции FTP / HTTP

rpm  может выступать в роликлиента FTP и / или HTTP, так что пакеты можно запрашивать или устанавливать из Интернета. Файлы пакета для операций установки, обновления и запроса могут быть указаны как URL-адрес в стиле ftp  или  http :

FTP: // USER: ПАРОЛЬ @ HOST: PORT / путь / к / package.rpm

Если   часть : PASSWORD пропущена, будет запрошен пароль (один раз для пары пользователь / имя хоста). Если и пользователь, и пароль не указаны, используется анонимный  ftp  . Во всех случаях  выполняются пассивные (PASV)  передачи FTP .

rpm  позволяет использовать следующие параметры с URL-адресами ftp:

—ftpproxy  HOST

Хост-  хост  будет использоваться в качестве прокси-сервера для всех передач FTP, что позволяет пользователям проходить через FTP через брандмауэры, использующие прокси-системы. Эта опция также может быть указана путем настройки макроса  % _ftpproxy .

—ftpport  HOST

Номер TCP  PORT,  используемый для соединения ftp на прокси-сервере ftp вместо порта по умолчанию. Эта опция также может быть указана путем настройки макроса  % _ftpport .

rpm  позволяет использовать следующие параметры с  URL-  адресами http :

—httpproxy  HOST

Хост-  хост  будет использоваться в качестве прокси-сервера для всех   передач HTTP . Эта опция также может быть указана путем настройки макроса  % _httpproxy .

—httpport  PORT

Номер TCP  PORT  для использования для  http-  соединения на прокси-http-сервере вместо порта по умолчанию. Эта опция также может быть указана путем настройки макроса  % _httpport .

ПРОБЛЕМЫ НАСЛЕДИЯ

Выполнение rpmbuild

Режимы сборки rpm теперь находятся в   исполняемом файле / usr / bin / rpmbuild . Хотя устаревшая совместимость, обеспечиваемая псевдонимами popt, была адекватной, совместимость не идеальна; следовательно, совместимость режима сборки через псевдонимы popt удаляется из rpm. Установите  пакет rpmbuild и посмотрите в  rpmbuild (8) документацию обо всех   режимах сборки rpm, ранее описанных здесь в  rpm (8).

Похожие посты
Linux

8 лучших окружений рабочего стола Linux

AndroidIphone и ipadLinuxWindows

Окончательное руководство по включению темного режима везде

LinuxКак сделать

Что такое Swappiness в Linux? (и как это изменить)

LinuxКак сделать

Как использовать команду ls для вывода списка файлов и каталогов в Linux