Scientific linux package manager

Шпаргалка по менеджеру пакетов YUM в CentOS и RHEL

В этой статье мы рассмотрим менеджер пакетов Yum, который позволяет управлять установкой, удалением и обновлением программ (.RPM-пакетов), автоматически разрешать зависимости, управлять дополнительными репозиториями. Данная статья о Yum должна прежде всего быть интересна как шпаргалка для начинающих администраторов Linux.

Yum (Yellowdog Updater Modified) – консольный менеджер пакетов для дистрибутивов Linux, основанных на пакетах формата RPM. (RedHat Package Manager) Сюда входят такие популярные ОС как RedHat, CentOS, Fedora, Oracle Linux, Scientific Linux.

Yum: установка, обновление и удаление пакетов

С чего начать? Пожалуй, как и в любых других случаях, начинаем со справки:

yum help – полная справка по менеджеру пакетов yum

Открыв ее, я выделю основные команды:

yum clean all – очистить кеш всех пакетов (обчычно используется при возникновении проблем при работе yum).
yum makecache – пересоздать кеш пакетов заново.
yum repolist – отобразить список подключенных репозиториев, вывод выглядит так:

У меня в системе установлены только стандартные репозитории CentOS-7: Base, Extras и Updates.

yum list available – вывести список всех доступных пакетов для установки.

yum list installed – список всех пакетов, которые установлены в системе.

yum list kernel – вывести список пакетов, которые относятся к ядру Linux.

Вы можете проверить установлен ли в вашей системе определенный пакет, например, apache:

yum list installed httpd

Вы можете получить более подробную информацию о пакете, например, получим данные о пакете MariaDB:

yum info mariadb

Чтобы установить пакет используется команда yum install. Для установки веб-сервера apache выполните:

yum install httpd

Перед установкой пакета можно проверить его на зависимости и необходимые пакеты с помощью команды:

yum deplist httpd

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

yum install epel-*

Если ввести просто:

yum install epel

Увы, пакета не видно.

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

yum install httpd php wget rsyslog

yum reinstall proftpd

Чтобы удалить установленный пакет с помощью yum используется параметр remove :

yum remove httpd

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

yum deplist proftpd

Найти пакет по имени или описанию:

yum search nginx

С помощью опции provides вы можете найти пакеты, содержавшие определенный файл, например:

yum provides */squid.conf

Выполнить обновление всех установленных пакетов можно с помощью команды:

Вы можете обновить только определенный пакет, указав его имя:

Проверить если доступные обновления для системы можно командой:

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

yum updateinfo list security

Бывают случаи, когда после обновления какого-либо пакета или сервиса, возникают проблемы. Например, после обновления php, перестал работать ваш сайт. Вы можете вернуть предыдущую версию пакета, откатив установленный пакет через yum:

Читайте также:  Служба кластеров windows server

yum downgrade perl

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

Рассмотрим на примере группового листа «Basic Web Server». Получить информацию группе и пакетах в ней:

yum groupinfo «Basic Web Server»

При проверке мы видим, что будут установлены набор пакеты и сервисы, для веб-сервера.

И еще один полезный групповой лист «System Administration Tools»:

yum groupinfo «System Administration Tools”

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

Установить групповой лист можно командой:

yum groupinstall «System Administration Tools»

Установленные пакеты будут в отдельном блоке «Installed Groups»:

Yum: история и логи установки/удаления пакетов

Вы можете вывести информацию об истории установки пакетов yum (списка транзакций) с помощью команды:

yum history list

Вывод состоит из 5 столбцов, в первом выводится ID транзакции по которому можно посмотреть всю информацию (установленные пакеты, зависимости):

yum history info 10

Более того, можно отменить данную транзакцию командой:

yum history undo 10

В моем случае удалилось бы 4 пакета:

Так же всю информацию об истории установки/удаления пакетов менеджером yum можно посмотреть в логе /var/log/yum.log:
cat /var/log/yum.log

Дополнительные полезные параметры yum

У утилиты yum есть несколько полезных опций, которые часто приходитя использовать при управлении пакетами. Чтобы при установке или удалении пакетов, после ввода команды не предпринимать никаких действий, можно воспользоваться опцией -y , например,:

yum update -y yum install httpd -y

Чтобы ответить no при запросе, нужно указать опцию:

Использовать yum без плагинов или отключить конкретный плагин:

Включить отключенный плагин:

Задействовать отключенный репозиторий:

yum update –enablerepo=atomic

Отключить определенный репозиторий:

yum update –disablerepo=atomic

Конфигурационный файл /etc/yum.conf

Конфигурационный файл yum — /etc/yum.conf .

Основные параметры конфигурационного файла:

cachedir – локальный кэш пакетов (по умоланию /var/cache/yum)

logfile — путь до файла с логами yum

obsoletes — обновлять или нет, устаревшие пакеты(1-да,0-нет)

gpgcheck — проверка подписи пакета перед установкой (1-да,0-нет)

keepcache — хранение кеша (1-да,0-нет)

cachedir — директория для хранения кеша(по умолчанию /var/cache/yum)

debuglevel – уровень отладки от 1 до 10

plugins — включение yum плагинов (1-да,0-нет)

bugtracker_url – ссылка по которой будут зарегистрированы ошибки работы yum

installonly_limit – максимальное количество версий, которые могут быть установлены для одного пакета.

Полезные плагины yum

Для чего нужны плагины в yum? Как и везде, упрощают нашу работу.

Некоторые популярные плагины и их описание:

yum-plugin-fastestmirror – плагин служащий для измерения скорости зеркал и предоставления самого быстрого для установки пакетов.

yum-plugin-security — плагин которые предоставляет список обновлений относящихся только к безопасности системы.

yum-plugin-keys — позволяет работать с ключами keys, keys-info, keys-data, keys-remove

Директория где хранятся все плагины /etc/yum/

yum-plugin-versionlock – позволяет блокировать обновление указанных пакетов

Чтобы вывести список доступных плагинов yum, выполните:

yum search yum-plugin

Вы можете установить выбранный плагин командой yum install, как и любой другой пакет:

yum install yum-plugin-changelog

yum -y install yum-versionlock

Чтобы заблокировать обновление пакета через плагин, выполните:

yum versionlock nginx

Вывести список заблокировнных пакетов:

yum versionlock list

Убрать пакет из заблокированных:

yum versionlock delete nginx

Если вам в какой-то момент времени не нужно использовать определенный плагин, вы его можете отключить, добавив префикс при вызове yum:

Или же отключить вообще все плагины, установленные в системе:

Читайте также:  Установить jre для linux

Использование yum через прокси

Yum для работы с репозиториями программ использует протокол HTTP/1.1. Если ваш Linux сервер имеет доступ в интернет только через HTTP прокси сервер, вы можете указать имя прокси сервера в конфигурационном файле /etc/yum.con в секции [main]:

Если прокси-сервер требует авторизацию, добавьте строки:

Для проверки работы yum через прокси сервер воспользуйтесь командой

yum clean all && yum search nginx

Для проверки я указал публичный прокси сервер с Германии и при установке, сработал плагин fastestmirror, нашел зеркала с которых скорость будет выше:

Если нужно использовать прокси только для некоторых репозиториев, не нужно править файл /etc/yum.conf, а настройки прокси указать в конфигурационном файле репозитория /etc/yum.repos.d/ваш_конфиг.repo.

Итак, в этой статье мы рассмотрели базовые возможности менеджера rpm пакета yum в Linux CentOS/ RHEL. В следующей статье мы более подробно поговорим об управлении репозиториями в Yum. Знакомьтесь, пробуйте и используйте yum в своей работе.

Источник

Альманах пакетных менеджеров Linux

Иногда может возникнуть вопрос: чьих этот файл, откуда вообще взялась эта библиотека? Удобный менеджер пакетов решает очень многие проблемы ОС. Можно с уверенностью сказать, что если вы подружитесь с МП, то подружитесь и с дистрибутивом как таковым. Причем важно освоить именно набор основных команд, и знать где найти дополнительную информацию.

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

Debian и родственные

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

То, что в примерах aptitude не значит, что он правильнее, чем apt-get . Для меня это всего лишь дело привычки.

Некоторые функции доступны с дополнительным МП dpkg .

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

Настройка репозиториев производится правкой файла /etc/apt/sources.list

В целом ПМ Debian один из лучших, с которыми мне доводилось иметь дело.

Redhat и другие RPM дистрибутивы

RPM нельзя назвать образцовым пакетным менеджером, скорее это был кактус, который мыши употребляли в пищу со слезами на глазах. Затем появились более или менее вменяемые МП: yum , dnf , zypper и другие. Только что на сервере RHEL 7.4 yum за раз обновил более 700 пакетов и ничего при этом не сломал, неплохой результат я считаю.

Команды rpm на те случаи, когда использовать yum не с руки.

Чтобы настроить репозитории Yum , откройте файл /etc/yum.repos.d/*.repo , или используйте команду yum-config-manager .

Zypper

На SuSE Linux используется Zypper / YaST для управления пакетами, движок ZYpp крутится поверх RPM.

Можно использовать операторы и регулярные выражения.

Управление репозиториями производится командой zypper mr .

Pacman

Этот МП используется в Арче и Manjaro.

Движок поиска в базе данных поддерживает регулярные выражения.

Настройка репозиториев и зеркал производится из файла /etc/pacman.conf

Gentoo emerge

Конечно же это скорее умозрительный сценарий, чем реальный, так как сложно предположить, что красноглазый пользователь Gentoo Linux не знает необходимых опций emerge . Тем не менее, без этого альманах был бы неполным.

С дополнительными утилитами можно получить больше информации о файлах, ненужных пакетах и т. д.

Источник

Yum, шпаргалка

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

Читайте также:  How to configure windows server

Оглавление

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Опции Yum

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

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

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

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

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

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

скачать пакеты, но не устанавливать
(на Centos 7 x86_64 будут скачаны в ‘/var/cache/yum/x86_64/7/base/packages/’)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Для всех пользователей:
добавить в секцию [main] в /etc/yum.conf

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

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

Буду рад любым дополнениям и замечаниям.
Дополнительно читайте:

Источник

Оцените статью