Шпаргалка по работе с пакетным менеджером Yum (Yellowdog Updater, Modified), который используется в популярных Linux дистрибутивах: RedHat, CentOS, Scientific Linux (и других). В целях экономии места вывод команд не представлен.

развернуть

Оглавление



Команды

Опции Yum

Пакет Yum-Utils

Конфигурационные файлы

Плагины

Работа через прокси





отображение команд и опций

# yum help


список названий пакетов из репозиторий

# yum list


список всех доступных пакетов

# yum list available


список всех установленных пакетов

# yum list installed


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

# yum list installed httpd


список установленных и доступных пакетов

# yum list all


список пакетов, относящихся к ядру

# yum list kernel


отображение информации о пакете

# yum info httpd


список файлов пакета

# rpm -ql httpd


список зависимостей и необходимых пакетов

# yum deplist httpd


найти пакет, который содержит файл

# yum provides "*bin/top"


поиск пакета по имени и описанию

# yum search httpd


# yum search yum


получить информацию о доступных обновлениях безопасности

# yum updateinfo list security


вывести список групп

# yum grouplist


вывести описание и содержимое группы

# yum groupinfo "Basic Web Server"


установка группы пакетов «Basic Web Server»

# yum groupinstall "Basic Web Server"


удаление группы

# yum groupremove "Basic Web Server"


Проверка на доступные обновления

# yum check-update


список подключенных репозиториев

# yum repolist


информация об определенном репозитории

# yum repoinfo epel


информация о пакетах в указанном репозитории

# yum repo-pkgs epel list


установить все пакеты из репозитория

# yum repo-pkgs reponame install


удалить пакеты установленные из репозитория

# yum repo-pkgs reponame remove


создать кэш

# yum makecache


проверить локальную базу rpm (поддерживаются параметры dependencies, duplicates, obsoletes, provides)

# yum check


# yum check dependencies


просмотр yum истории (вывод списка транзакций)

# yum history list


просмотр информации определенной транзакции (установленные пакеты, установленные зависимости)

# yum history info 9


отмена транзакции

# yum history undo 9


повторить

# yum history redo 9


дополнительно можно просмотреть лог

# cat /var/log/yum.log


удалить пакеты сохраненные в кэше

# yum clean packages


удалить все пакеты и метаданные

# yum clean all


установить пакет

# yum install httpd


удаление пакета

# yum remove httpd


обновить пакет

# yum update httpd


обновить все пакеты

# yum update


обновить до определенной версии

# yum update-to


установить из локальной директории (поиск/установка зависимостей будут произведены из подключенных репозиториев)

# yum localinstall httpd.rpm


или

# yum install httpd.rpm


установить с http

# yum localinstall http://server/repo/httpd.rpm


откатиться к предыдущей версии пакета

# yum downgrade


переустановка пакета (восстановление удаленных файлов)

# yum reinstall httpd


удаление ненужных более пакетов

# yum autoremove


создание локальных репозиториев (createrepo ставится отдельно)

# createrepo


установка обновлений по расписанию (yum-cron устанавливается отдельно)

# yum-cron






Опции Yum



ответить «yes» при запросе,

-y


# yum update -y


ответить «no» при запросе

--assumeno


использовать Yum без плагинов

--noplugins


или отключить определенный плагин

--disableplugin=fastestmirror


включить плагины, которые установлены, но отключены

# yum --enableplugin=ps


включить отключенный репозиторий

# yum update -y --enablerepo=epel


отключить репозиторий

# yum update -y --disablerepo=epel


скачать пакеты, но не устанавливать

(на Centos 7 x86_64 будут скачаны в '/var/cache/yum/x86_64/7/base/packages/')

# yum install httpd --downloadonly




Cледующие команды доступны после установки пакета yum-utils



найти из какого репозитория установлен пакет

# find-repos-of-install httpd


найти процессы, пакеты которых обновлены и требуют рестарта

# needs-restarting


запрос к репозиторию, узнать зависимости пакета, не устанавливая его

# repoquery  --requires --resolve httpd


синхронизировать yum репозиторий updates в локальную директорию repo1

# reposync -p repo1 --repoid=updates


проверить локальный репозиторий на целостность

# verifytree URL


завершить транзакции

# yum-complete-transaction


установить необходимые зависимости для сборки RPM пакета

# yum-builddep


управление конфигурационными опциями и репозиториями yum

# yum-config-manager


запрос к локальной базе yum, отображение информации о пакете

(использованная команда, контрольная сумма, URL с которого был установлен и другое)

# yumdb info httpd


скачать rpm пакеты из репозитория

# yumdownloader


скачать src.rpm пакет из репозитория

(должен быть подключен соответствующий репозиторий, например в '/etc/yum.repos.d/CentOS-Sources.repo' в CentOS)

yumdownloader --source php




Конфигурационные файлы Yum и их расположение



Основной конфигурационный файл

/etc/yum.conf


директория, с конфигурациями (например, yum плагины)

/etc/yum/


директория, содержащая информацию о репозиториях

/etc/yum.repos.d/




Некоторые опции yum.conf:



Директория, где yum хранит кэш и файлы базы (по умолчанию '/var/cache/yum')

cachedir=/var/cache/yum/$basearch/$releasever


Определяет должен или нет Yum хранить кэш заголовков и пакетов после успешной установки. Значения: 0 или 1. (по умолчанию 1)

keepcache=1


уровень вывода отладочных сообщений. Значения: 1-10 (по умолчанию 2)

debuglevel=2


лог файл (по умолчанию '/var/log/yum.log')

logfile=/var/log/yum.log


обновлять устаревшие пакеты

obsoletes=1


проверка подписи пакетов. Значения: 0 или 1 (по умолчанию 1)

gpgcheck=1


включение плагинов. Значения: 0 или 1 (по умолчанию 1)

plugins=1






Некоторые полезные плагины



Добавляет опцию командной строки для просмотра ченжлога перед/после обновлениями

yum-plugin-changelog


выбирает более быстрые репозитории из списка зеркал

yum-plugin-fastestmirror


добавляет команды keys, keys-info, keys-data, keys-remove, которые позволяют работать с ключами.

yum-plugin-keys


блокировать указанные пакеты от обновления, команда yum versionlock

yum-plugin-versionlock


добавление команд yum verify-all, verify-multilib, verify-rpm для проверки контрольных сумм пакетов

yum-plugin-verify




Работа Yum через прокси сервер



Для всех пользователей:

добавить в секцию [main] в /etc/yum.conf

proxy="http://server:3128"


при необходимости указать пароль, добавить

proxy_proxy_username=user
proxy_password=pass


указать прокси для отдельного пользователя

# export http_proxy="http://server:3128"



Создание RPM пакета для Fedora

Быстрое создание rpm пакета в CentOS с помощью Checkinstall
Установите обработчики rpm пакетов:
yum install -y rpm-build rpmdevtools

После установки выполните следующую команду. Она создаст зависимости rpm пакетов:
rpmdev-setuptree

К сожалению Checkinstall недоступен в репозитариях CentOS. Солный список rpm пакетов доступен на следующей странице:
http://rpm.pbone.net/index.php3?stat=3&search=checkinstall&srodzaj=3

Его нужно скачать и установить:
wget -no-check-certificate https://filebox.ece.vt.edu/~mclint/puppet/files/checkinstall-1.6.2-3.el6.1.x86_64.rpm
rpm -i checkinstall-1.6.2-3.el6.1.x86_64.rpm

Раньше использовалась другая ссылка и когда она перестала работать я чуть не пришел у ужас. В общем нашел другую, скачал и разместил у себя на сервере:
wget /wp-content/uploads/2016/04/01/checkinstall-1.6.2-3.el6.1.x86_64.rpm

После этого checkinstall готов к использованию. Используйте его вместо make install при сборке пакетов.

Следующая конструкция не будет устанавливать приложение, а подготовит пакет готовый к установке и покажет его местонахождение:
checkinstall -install=no

Например:

**********************************************************************

Done. The new package has been saved to

/root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm
You can install it in your system anytime using:

rpm -i httpd-2.2.31-1.x86_64.rpm

**********************************************************************

Готовый пакет можно установить следующей командой:
rpm -i /root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm

Если же Вы собрали пакет для обновления существующего в системе, тогда используйте:
rpm -U /root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm

https://habrahabr.ru/post/301292/

Profile

uzverss: (Default)
uzverss

December 2024

S M T W T F S
12345 67
891011121314
15161718192021
22232425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 22nd, 2026 07:02 am
Powered by Dreamwidth Studios