
Работа с RPM-пакетами в CentOS 7 требует понимания того, как система обрабатывает зависимости, проверяет подписи и фиксирует изменения в базе установленного ПО. При наличии готового файла удобнее всего использовать инструменты rpm и yum, которые по-разному взаимодействуют с репозиториями и локальными ресурсами.
Перед установкой важно убедиться, что файл получен из надёжного источника и не повреждён. Для этого применяются проверка контрольных сумм и просмотр информации о пакете через rpm -K и rpm -qp. Эти действия позволяют сразу выявить ошибки загрузки или подмену.
Если пакет требует дополнительные библиотеки, система может сообщить о нехватке зависимостей. В таких ситуациях команда yum localinstall нередко упрощает процесс, так как обращается к активным репозиториям и автоматически подбирает недостающие компоненты.
Проверка наличия RPM файла и его целостности

Перед установкой необходимо убедиться, что нужный файл присутствует в каталоге. Для этого используют команду ls *.rpm, позволяющую быстро просмотреть список доступных пакетов. При большом количестве файлов удобно применять фильтр по части названия, чтобы избежать путаницы.
После подтверждения наличия пакета выполняют проверку подписи через rpm -K имя_файла.rpm. Команда сообщает о статусе подписи и состоянии архива, что помогает обнаружить подмену или повреждение.
Дополнительно можно просмотреть метаданные с помощью rpm -qp —info имя_файла.rpm. Это позволяет сверить версию, архитектуру и предполагаемые зависимости ещё до установки. Такой подход снижает риск запуска некорректного файла и экономит время при последующем устранении ошибок.
Установка локального RPM пакета через rpm -i
Команда rpm -i применяется для установки пакета из локального файла без обращения к репозиториям. Перед запуском рекомендуется убедиться, что путь к файлу указан корректно и пользователь обладает правами суперпользователя.
Базовая установка выполняется так:
- sudo rpm -i имя_файла.rpm – стандартный запуск.
- При необходимости можно добавить ключ —nosignature, если требуется игнорировать подписи, однако такой режим используют только при уверенности в источнике файла.
- Создать файл журнала: sudo rpm -i имя_файла.rpm > install.log 2>&1.
- Проверить лог на наличие ошибок и предупреждений.
После выполнения установки полезно убедиться, что новый пакет зарегистрирован в базе, используя команду rpm -q имя_пакета. Это подтверждает корректное добавление программы в систему.
Устранение конфликтов зависимостей при установке rpm
При установке локального файла команда rpm -i может вывести список отсутствующих библиотек или указать на несовместимые версии. Чтобы определить точный набор требований, используют rpm -qpR имя_файла.rpm. Команда показывает полный перечень зависимостей, включая версии и требуемые пакеты.
Если система сообщает о конфликте с уже установленной версией, помогает предварительный анализ через rpm -qa | grep имя_пакета. Это позволяет увидеть, какой компонент мешает установке, и решить, стоит ли его обновить, удалить или удержать.
Для получения недостающих библиотек удобнее использовать доступные репозитории. Команда yum provides имя_файла.so помогает определить пакет, содержащий требуемый объект. После уточнения совпадений можно установить нужную библиотеку и повторить установку RPM файла.
Если проблема вызвана устаревшими источниками, выполняют обновление списка пакетов через yum makecache. Это позволяет системе корректно сопоставлять зависимости и уменьшает количество ошибок при установке локальных архивов.
Использование yum localinstall для работы с зависимостями

Команда yum localinstall удобна тем, что одновременно использует локальный файл и подключённые репозитории. Это позволяет автоматически загрузить недостающие библиотеки и исключить ручной разбор зависимостей.
Типовой запуск выглядит так:
- sudo yum localinstall имя_файла.rpm – установка с автоматическим подбором зависимостей.
- —nogpgcheck применяют только при работе с неподписанными файлами, когда источник заранее проверен.
Перед запуском желательно обновить кэш репозиториев, чтобы система корректно нашла требуемые версии:
- sudo yum makecache fast
Если в процессе загрузки зависимостей yum сообщает о недоступных зеркалах, можно указать конкретный репозиторий в параметре —disablerepo или —enablerepo. Это помогает избежать конфликтов между источниками и ускоряет установку.
После завершения процедуры состояние пакета проверяют командой rpm -q имя_пакета. Это подтверждает, что все требуемые компоненты были получены и корректно установлены.
Просмотр установленных пакетов и проверка версии

Чтобы уточнить подробности о конкретном пакете, применяют rpm -qi имя_пакета. Команда показывает версию, дату сборки, архитектуру и краткое описание, что помогает сверить параметры с требуемыми.
Для проверки файлов, входящих в пакет, используют rpm -ql имя_пакета. Это удобно при анализе расположения бинарных файлов, конфигурационных каталогов и других элементов.
Если требуется узнать, какой пакет установил конкретный файл, применяют команду rpm -qf /путь/к/файлу. Такой способ помогает определить, к какому компоненту относится объект и действительно ли он установлен в актуальной версии.
Обновление уже установленного пакета с помощью rpm -U

Для замены текущей версии пакета используют команду rpm -U имя_файла.rpm. Она автоматически обновляет существующую версию, сохраняя настройки, если они не были изменены в процессе установки.
Если требуется принудительное обновление даже при наличии конфликтов версий, применяется ключ —replacepkgs. Это позволяет переустановить пакет без предварительного удаления старой версии.
Для контроля совместимости полезно использовать rpm -q —last имя_пакета, чтобы проверить дату последнего обновления и убедиться, что обновляемый файл соответствует текущей архитектуре и версии ОС.
В случае зависимостей, которые могут блокировать обновление, предварительно проверяют требуемые библиотеки с помощью rpm -qpR имя_файла.rpm. Это позволяет заранее установить недостающие компоненты и избежать ошибок при применении rpm -U.
Удаление установленного RPM пакета безопасными командами

Для удаления пакета используют команду rpm -e имя_пакета. Она удаляет только выбранный пакет и оставляет зависимые библиотеки, что снижает риск повреждения системы.
Перед удалением рекомендуется проверить, какие пакеты зависят от выбранного компонента, используя rpm -q —whatrequires имя_пакета. Это позволяет избежать случайного удаления важных зависимостей.
Для контроля процесса полезно составить таблицу ключевых команд и их назначений:
| Команда | Назначение |
|---|---|
| rpm -e имя_пакета | Удаляет выбранный пакет без затрагивания зависимостей |
| rpm -q —whatrequires имя_пакета | Проверяет, какие пакеты зависят от выбранного |
| rpm -qa | grep имя_пакета | Убедиться, что пакет действительно установлен перед удалением |
После удаления рекомендуется повторно проверить систему на наличие оставшихся зависимостей, чтобы убедиться, что удаление прошло безопасно и без ошибок.
Вопрос-ответ:
Как проверить, что RPM файл целый и готов к установке?
Для проверки используют команду rpm -K имя_файла.rpm, которая анализирует подпись и целостность архива. Дополнительно можно просмотреть метаданные через rpm -qp —info имя_файла.rpm, чтобы сверить версию, архитектуру и требуемые зависимости до установки.
Чем отличается установка через rpm -i и yum localinstall?
Команда rpm -i устанавливает локальный файл напрямую, не проверяя зависимости. Если библиотек не хватает, установка выдаст ошибки. yum localinstall использует локальный пакет, но автоматически загружает недостающие зависимости из подключённых репозиториев, что сокращает ручную работу.
Как узнать, какие пакеты зависят от конкретного RPM перед его удалением?
Для этого применяют rpm -q —whatrequires имя_пакета. Команда выводит список зависимых пакетов. Если такие есть, стоит оценить последствия удаления, чтобы не нарушить работу других программ.
Что делать, если при установке RPM появляются конфликты зависимостей?
Сначала используют rpm -qpR имя_файла.rpm для просмотра требуемых библиотек. Недостающие компоненты устанавливают через yum install имя_пакета. Если конфликт вызван уже установленной версией, её можно обновить с помощью rpm -U или удалить старый пакет.
Как проверить установленную версию пакета после установки RPM?
Команда rpm -q имя_пакета выводит текущую версию. Дополнительно rpm -qi имя_пакета показывает дату сборки, архитектуру и описание. Для проверки файлов, входящих в пакет, используют rpm -ql имя_пакета.
