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: история и дневници за инсталиране / деинсталиране на пакети
  • Допълнителни полезни опции за yum
  • Конфигурационен файл /etc/yum.conf
  • Полезни yum плъгини
  • Използване на yum чрез прокси

Yum: инсталиране, актуализиране и деинсталиране на пакети

Откъде да започнем? Може би, както във всички други случаи, започваме с помощта:

yum помощ - пълна помощ за мениджъра на пакети от Yum

Отваряйки го, ще подчертая основните команди:

чисти всички - изчистете кеша на всички пакети (обикновено се използва в случай на проблеми с yum).
yum makecache - пресъздайте пак кеша на пакетите.
ням реполист - покажете списък на свързани хранилища, изходът изглежда така:

Заредени плъгини: fastestmirror Зареждане на скоростта на огледалото от кеширан хост файл * база: mirror.fasthost.ru * екстри: mirror.fasthost.ru * актуализации: mirror.fasthost.ru repo id repo име статут база / 7 / x86_64 CentOS-7 - База 10,019 екстри / 7 / x86_64 CentOS-7 - Екстри 435 актуализации / 7 / x86_64 CentOS-7 - Актуализации 2 500 repolist: 12 954 

В моята система имам инсталирани само стандартни хранилища CentOS-7: База, Екстри и Актуализации.

наличен списък - избройте всички налични пакети за инсталиране.

yum списък е инсталиран - списък на всички пакети, които са инсталирани в системата.

yum list ядро - списък пакети, които са част от Linux ядрото.

Можете да проверите дали конкретен пакет е инсталиран във вашата система, например, апаш:

yum списък инсталиран httpd

Заредени плъгини: fastestmirror Зареждане на скоростта на огледалото от кеширан хост файл * база: mirror.fasthost.ru * екстри: mirror.fasthost.ru * актуализации: mirror.fasthost.ru Инсталирани пакети httpd.x86_64 2.4.6-89.el7.centos.1 @updates 

Можете да получите по-подробна информация за пакета, например, ние ще получим данни за пакета MariaDB:

yum информация mariadb

За да инсталирате пакета, използвайте командата yum install. За да инсталирате уеб сървъра на апаш, направете:

yum инсталирате httpd

Ако получите грешка, когато yum Traceback (последно последно обаждане): thread.error: не може да започне нова тема, най-вероятно нямате достатъчно RAM. Опитайте да добавите RAM или деактивирайте yum плъгини (в /etc/yum.conf, посочете приставки = 0).

Преди да инсталирате пакет, можете да го проверите за зависимости и необходими пакети, като използвате командата:

yum deplist httpd

Ако искате да инсталирате някакъв пакет, но сте забравили пълното му име, можете да използвате заместващия знак *. Например:

yum инсталирате epel- *

Заредени плъгини: fastestmirror Зареждане на скоростта на огледалото от кеширан хост файл * база: centos.fasthost.ru * екстри: centos.fasthost.ru * актуализации: centos.fasthost.ru Разрешаване на зависимости -> Текуща проверка на транзакциите ---> Пакет epel-release .noarch 0: 7-11 ще бъде инсталиран -> Завършена резолюция на зависимостта Инсталирайте 1 пакет Общ размер на изтегляне: 15 k Инсталиран размер: 24 k Това добре ли е [y / d / N]: 

Ако въведете просто:

yum инсталирате epel

Няма наличен пакет epel. Грешка: нищо не трябва да се направи 

Уви, пакетът не се вижда.

Yum ви позволява да инсталирате няколко пакета наведнъж:

yum инсталирате httpd php wget rsyslog

Преинсталирайте пакета:

yum преинсталирайте proftpd

За да премахнете инсталиран пакет с помощта на yum, използвайте параметъра премахване:

yum премахнете httpd

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

yum deplist proftpd

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

търся nginx

Използвайки опцията предоставя, можете да намерите пакети, съдържащи конкретен файл, например:

yum предоставя * / squid.conf

Можете да актуализирате всички инсталирани пакети с помощта на командата:

yum актуализация

Можете да актуализирате конкретен пакет само като посочите името му:

yum актуализация php

Проверете дали наличните актуализации за системата могат да се правят с командата:

yum check-update

Получете информация за наличните актуализации за защита:

yum updateinfo списък сигурност

Има случаи, когато след актуализиране на пакет или услуга възникват проблеми. Например, след актуализиране на php, вашият сайт е спрял да работи. Можете да върнете предишната версия на пакета, като върнете инсталирания пакет чрез yum:

yum понижаване perl

Исках също да насоча вниманието ви към груповото инсталиране на пакети чрез grouplist. Репозиторият има предварително определени групи пакети с различни набори програми. Можете да изброите наличните групи:

yum grouplist

Разгледайте примера на груповия лист „Web Web“. Получете информация за групата и пакетите в нея:

yum groupinfo "Основен уеб сървър"

При проверка виждаме, че за уеб сървъра ще бъде инсталиран набор от пакети и услуги.

И още един полезен групов лист, Инструменти за системно администриране:

yum groupinfo "Инструменти за системно администриране"

Както можете да видите, този лист съдържа пакети, които ще бъдат полезни за наблюдение и отстраняване на грешки..

Можете да зададете списъка с групи с командата:

yum groupinstall "Инструменти за системно администриране"

Инсталираните пакети ще бъдат в отделен блок „Инсталирани групи“:

Yum: история и дневници за инсталиране / премахване на пакети

Можете да покажете информация за историята на инсталирането на yum пакети (списък на транзакциите), като използвате командата:

списък с история

Изходът се състои от 5 колони, като първата показва идентификатора на транзакцията, чрез който можете да видите цялата информация (инсталирани пакети, зависимости):

Например:

информация за историята на yum 10

Освен това можете да отмените тази транзакция с командата:

yum история отмяна 10

В моя случай 4 пакета ще бъдат изтрити:

Също така цялата информация за историята на инсталирането / премахването на пакети от yum мениджъра може да се види в журнала /var/log/yum.log:
котка /var/log/yum.log

03 септември 11:06:38 Инсталиран: mpfr-3.1.1-4.el7.x86_64 септември 03 11:06:38 Инсталиран: libmpc-1.0.1-3.el7.x86_64 септември 03 11:06:38 Инсталиран: libquadmath -4.8.5-36.el7_6.2.x86_64 септември 03 11:06:38 Инсталиран: apr-1.4.8-3.el7_4.1.x86_64 септември 03 11:06:38 Инсталиран: m4-1.4.16-10 .el7.x86_64 септември 03 11:06:38 Инсталиран: apr-util-1.5.2-6.el7.x86_64 септември 03 11:06:38 Инсталиран: unzip-6.0-19.el7.x86_64 септември 03 11:06: 38 Инсталиран: patch-2.7.1-10.el7_5.x86_64 септември 03 11:06:38 Инсталиран: 1: perl-Error-0.17020-2.el7.noarch септември 03 11:06:38 Инсталиран: boost-system-1.53 .0-27.el7.x86_64 септември 03 11:06:38 Инсталиран: perl-Thread-Queue-3.02-2.el7.noarch септември 03 11:06:38 Инсталиран: avahi-libs-0.6.31-19.el7 .x86_64 септември 03 11:06:38 Инсталиран: boost-thread-1.53.0-27.el7.x86_64 септември 03 11:06:38 Инсталиран: zip-3.0-11.el7.x86_64 септември 03 11:06:38 Инсталиран: boost-thread-1.53.0-27.el7.x86_64 : libgfortran-4.8.5-36.el7_6.2.x86_64 септември 03 11:06:39 Инсталиран: cpp-4.8.5-36.el7_6.2.x86_64 

Допълнителни полезни опции за yum

Помощната програма yum има няколко полезни опции, които често се налага да използвате при управление на пакети. Така че когато инсталирате или премахвате пакети, след като въведете командата, не предприемайте никакви действия, можете да използвате опцията , например:

yum актуализация -y yum инсталирате httpd -y

За да отговорите не при поискване, трябва да посочите опцията:

--assumeno

Използвайте yum без приставки или деактивирайте конкретен плъгин:

--noplugins

--disabledplugin = най-бързиямир

Активиране на деактивиран плъгин:

--enableplugin = най-бързиямир

Активиране на деактивирано хранилище:

yum update -enablerepo = атомен

Деактивиране на конкретно хранилище:

yum update -disablerepo = атомен

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

Yum конфигурационен файл - /etc/yum.conf.

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

cachedir- локален кеш пакет (по подразбиране / var / cache / yum)

лог- път към yum лог файл

obsoletes - ъпгрейд или не, остарели пакети (1-да, 0-не)

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

keepcache - кеш памет (1-да, 0-не)

cachedir - директория за съхраняване на кеша (по подразбиране / var / cache / yum)

debuglevel - ниво на грешка от 1 до 10

плъгини - активирайте yum плъгини (1-да, 0-не)

bugtracker_url - връзка, където ще бъдат регистрирани yum грешки

installonly_limit - максимален брой версии, които могат да бъдат инсталирани за един пакет.

Полезни yum плъгини

За какво са yum приставки? Както на друго място, опростете нашата работа.

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

Yum-плъгин-fastestmirror - плъгин за измерване на скоростта на огледалата и осигуряване на най-бързата за инсталиране на пакети.

Yum-плъгин-сигурност - плъгин, който предоставя списък с актуализации, свързани само със системната сигурност.

Yum-приставка ключове - ви позволява да работите с клавиши с клавиши, ключове-информация, ключове-данни, клавиши-премахване

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

Yum-плъгин-versionlock - ви позволява да блокирате актуализиране на определени пакети

За да изброите наличните yum приставки, направете:

yum търсене yum-плъгин

================================================== ====================== Съответстващ N / S: yum-plugin ====================== ================================================== PackageKit-yum-plugin.x86_64: Кажете PackageKit да провери за актуализации, когато yum излезе от fusioninventory-agent-yum-plugin.noarch: Помолете агента FusionInventory да изпрати инвентар, когато yum излезе от kabi-yum-plugins.noarch: Ядрото на CentOS Linux ABI yum plugin yum-plugin-aliases.noarch: Yum плъгин за активиране на псевдоними филтри yum-plugin-auto-update-debug-info.noarch: Yum plugin за активиране на автоматични актуализации на инсталирани пакети за отстраняване на debuginfo пакети yum-plugin-changelog.noarch: Yum plugin за преглед на промените в пакетите преди / след актуализиране на yum-plugin-copr.noarch: yum приставка за добавяне на команда copr yum-plugin-fastestmirror.noarch: Yum плъгин, който избира най-бързото хранилище от огледален списък yum-plugin-filter-data.noarch: Yum плъгин за списък филтър въз основа на данни за пакета yum-plugin-fs-snapshot.noarch: Yum плъгин автоматично да направи снимка на вашия f ilesystems по време на актуализации yum-plugin-keys.noarch: Yum плъгин за справяне с ключовете за подпис yum-plugin-list-data.noarch: Yum плъгин за списък на агрегирани данни за пакета yum-plugin-local.noarch: Yum приставка за автоматично управление на локален репо. на изтеглените пакети yum-plugin-merge-conf.noarch: Yum плъгин за сливане на промените в конфигурацията при инсталиране на пакети yum-plugin-ovl.noarch: Yum приставка за работа с проблеми с наслагването yum-plugin-post -action-Actions.noarch: Yum плъгин за изпълнение на произволни команди, когато определени pkgs са действали на yum-plugin-prioriteta.noarch: плъгин, за да дава приоритети на пакетите от различни repos yum-plugin-protectionbase.noarch: Yum плъгин за защита на пакети от определени хранилища. yum-plugin-ps.noarch: Yum плъгин за разглеждане на процесите по отношение на пакетите yum-plugin-remove-with-liste.noarch: Yum приставка за премахване на зависимости, които вече не се използват поради премахване yum-plugin-rpm -warm-cache.noarch: Yum приставка за достъп до rpmdb файловете рано, за да затопли достъпа до db yum-plugin-show-listi.noarch: Yum приставка, която показва ново инсталирани листови пакети yum-plugin-tmprepo.noarch: Yum приставка за добавяне на временни хранилища yum-plugin-tsflags.noarch: Yum приставка за добавяне на tsflags чрез опция за командна линия yum-plugin-upgrade-helper.noarch: Yum плъгин за подпомагане на надстройките до следващата версия на разпространението yum-plugin-verify.noarch: Yum плъгин за добавяне на команда за проверка и опции yum-plugin-versionlock.noarch: Yum приставка за заключване на определени пакети от актуализиране 

Можете да инсталирате избрания плъгин с командата yum install, като всеки друг пакет:

yum инсталирате yum-plugin-changelog

yum - инсталирам yum-versionlock

За да блокирате актуализирането на пакет чрез приставка, направете:

yum versionlock nginx

Списък на блокираните пакети:

списък с версия за версии

Премахване на пакета от блокираните:

yum versionlock изтрийте nginx

Ако в даден момент не е необходимо да използвате конкретен плъгин, можете да го деактивирате, като добавите префикс, когато се извиква yum:

--disabledplugin = най-бързиямир

Или деактивирайте всички плъгини, инсталирани в системата:

--noplugins

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

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

proxy = http: // proxyservername: 3128

Ако прокси сървърът изисква разрешение, добавете редовете:

proxy_proxy_username = потребител
proxy_password = пропуск

За да проверите yum чрез прокси сървър, използвайте командата

чист всички && yum търсене nginx

За проверка посочих публичен прокси сървър от Германия и по време на инсталацията най-бързият плъгин работеше, намерих огледала, от които скоростта ще бъде по-висока:

Ако трябва да използвате прокси сървъри само за някои хранилища, не е необходимо да редактирате файла /etc/yum.conf и да укажете прокси настройки в конфигурационния файл на хранилището /etc/yum.repos.d/vash_konfig.repo.

Така че в тази статия разгледахме основните характеристики на rpm мениджъра за пакета yum на Linux CentOS / RHEL. В следващата статия ще поговорим повече за управлението на хранилища в Yum. Запознайте се, опитайте и използвайте yum в работата си.