YUM balíček manažer podvádět list na CentOS a RHEL

V tomto článku se podíváme na správce balíčků Yum, který vám umožní řídit instalaci, odebírání a aktualizaci programů (balíčky .RPM), automaticky řešit závislosti a spravovat další úložiště. Tento článek o Yum by měl být především zajímavý jako cheat sheet pro začínající Linux administrátory..

Yum (Yellowdog Updater Modified) je správce balíčků konzoly pro distribuce Linuxu založený na RPM balíčcích. (RedHat Package Manager) Patří sem takové oblíbené operační systémy jako RedHat, CentOS, Fedora, Oracle Linux, Scientific Linux.

Obsah:

  • Yum: instalace, aktualizace a odinstalace balíčků
  • Yum: historie a protokoly o instalaci / odinstalaci balíčků
  • Další užitečné možnosti yum
  • Konfigurační soubor /etc/yum.conf
  • Užitečné yum pluginy
  • Použití yum prostřednictvím proxy

Yum: instalace, aktualizace a odinstalace balíčků

Kde začít? Možná, jako v jiných případech, začneme s pomocí:

yum help - plnou nápovědu pro správce balíčku yum

Po jeho otevření zvýrazním hlavní příkazy:

yum clean all - vymazat mezipaměť všech balíčků (obvykle se používá v případě problémů s yum).
yum makecache - znovu vytvořte mezipaměť paketů.
yum repolist - zobrazit seznam připojených úložišť, výstup vypadá takto:

Načtené pluginy: fastestmirror Načítání rychlosti zrcadlení z mezipaměti hostfile * base: mirror.fasthost.ru * extras: mirror.fasthost.ru * aktualizace: mirror.fasthost.ru repo id repo jméno status repo base / 7 / x86_64 CentOS-7 - Base 10,019 extra / 7 / x86_64 CentOS-7 - Extras 435 aktualizací / 7 / x86_64 CentOS-7 - Aktualizace 2 500 repolistů: 12 954 

Mám v systému nainstalované pouze standardní úložiště CentOS-7: Base, Extras a Updates.

seznam yum k dispozici - seznam všech dostupných balíčků pro instalaci.

Seznam yum nainstalován - seznam všech balíčků nainstalovaných v systému.

jádro seznamu yum - seznam balíčků, které jsou součástí linuxového jádra.

Můžete zkontrolovat, zda je ve vašem systému nainstalován konkrétní balíček, například apache:

yum list nainstalován httpd

Načtené pluginy: fastestmirror Načítání rychlosti zrcadlení z mezipaměti hostfile * base: mirror.fasthost.ru * extras: mirror.fasthost.ru * aktualizace: mirror.fasthost.ru Instalované balíčky httpd.x86_64 2.4.6-89.el7.centos.1 @ aktualizace 

Můžete získat podrobnější informace o balíčku, například získáme údaje o balíčku MariaDB:

yum info mariadb

Chcete-li nainstalovat balíček, použijte příkaz yum install. Chcete-li nainstalovat webový server apache, postupujte takto:

yum install httpd

Pokud se zobrazí chyba, když yum Traceback (poslední poslední hovor): thread.error: nelze spustit nové vlákno, s největší pravděpodobností nemáte dostatek paměti RAM. Zkuste přidat RAM nebo vypnout yum pluginy (v /etc/yum.conf zadejte pluginy = 0).

Před instalací balíčku můžete zkontrolovat závislosti a potřebné balíčky pomocí příkazu:

yum deplist httpd

Pokud chcete nainstalovat nějaký balíček, ale zapomněli jste jeho celé jméno, můžete použít zástupný znak *. Například:

yum install epel- *

Načtené pluginy: fastestmirror Načítání rychlosti zrcadlení z mezipaměti hostfile * base: centos.fasthost.ru * extras: centos.fasthost.ru * aktualizace: centos.fasthost.ru Řešení závislostí -> Spuštění kontroly transakcí ---> Epel-release balíčku Bude nainstalována .noarch 0: 7-11 -> Dokončené Dependency Resolution Install 1 Package Celková velikost stahování: 15 k Instalovaná velikost: 24 k Je to v pořádku [y / d / N]: 

Pokud zadáte jednoduše:

yum install epel

K dispozici není žádný balíček epel. Chyba: Nic dělat 

Bohužel, balíček není viditelný.

Yum vám umožňuje instalovat více balíčků najednou:

yum install httpd php wget rsyslog

Přeinstalovat balíček:

yum přeinstalovat proftpd

Chcete-li odebrat nainstalovaný balíček pomocí yum, použijte parametr odstranit:

yum odstranit httpd

Před odinstalací jakéhokoli balíčku se však doporučuje nejprve zkontrolovat závislosti (existují balíčky, jejichž odstranění má za následek odstranění mnoha dalších balíčků, což má za následek nefunkčnost systému):

yum deplist proftpd

Najděte balíček podle názvu nebo popisu:

yum hledání nginx

Pomocí volby poskytuje balíčky obsahující konkrétní soubor, například:

yum poskytuje * / squid.conf

Všechny nainstalované balíčky můžete aktualizovat pomocí příkazu:

yum update

Můžete aktualizovat pouze konkrétní balíček zadáním jeho názvu:

yum update php

Zkontrolujte, zda lze dostupné aktualizace systému provést pomocí příkazu:

yum check-update

Získejte informace o dostupných aktualizacích zabezpečení:

yum updateinfo list security

Existují případy, kdy po aktualizaci balíčku nebo služby vzniknou problémy. Například po aktualizaci php váš web přestal fungovat. Předchozí verzi balíčku můžete vrátit vrácením nainstalovaného balíčku přes yum:

yum downgrade perl

Chtěl jsem také upozornit na skupinovou instalaci balíků pomocí grouplistu. Úložiště má předdefinované skupiny balíčků s různými sadami programů. Můžete uvést dostupné skupiny:

yum grouplist

Zvažte příklad listu skupiny „Web Web“. Získejte informace o skupině a balíčcích v ní:

yum groupinfo "Základní webový server"

Při kontrole vidíme, že pro webový server bude nainstalována sada balíčků a služeb.

A další užitečný list skupiny, Nástroje pro správu systému:

yum groupinfo "Nástroje pro správu systému"

Jak vidíte, tento list obsahuje balíčky, které budou užitečné pro monitorování a ladění..

Seznam skupin můžete nastavit příkazem:

yum groupinstall "Nástroje pro správu systému"

Nainstalované balíčky budou v samostatném bloku „Installed Groups“:

Yum: historie a protokoly o instalaci / odinstalaci balíčků

Informace o historii instalace balíčků yum (seznam transakcí) můžete zobrazit příkazem:

seznam historie yum

Výstup se skládá z 5 sloupců, první zobrazuje ID transakce, podle kterého můžete vidět všechny informace (nainstalované balíčky, závislosti):

Například:

yum history info 10

Tuto transakci můžete navíc zrušit příkazem:

historie yum zpět 10

V mém případě by byly smazány 4 balíčky:

V protokolu /var/log/yum.log si také můžete zobrazit všechny informace o historii instalace / odebrání balíčku správcem yum:
cat /var/log/yum.log

3. září 11:06:38 nainstalován: mpfr-3.1.1-4.el7.x86_64 září 03 11:06:38 nainstalován: libmpc-1.0.1-3.el7.x86_64 září 03 11:06:38 nainstalován: libquadmath -4,8,5-36.el7_6.2.x86_64 září 03 11:06:38 nainstalováno: duben-1.4.8-3.el7_4.1.x86_64 září 03 11:06:38 nainstalováno: m4-1.4.16-10 .el7.x86_64 září 03 11:06:38 nainstalováno: duben-util-1.5.2-6.el7.x86_64 září 03 11:06:38 nainstalováno: unzip-6.0-19.el7.x86_64 září 03 11:06: 38 Installed: patch-2.7.1-10.el7_5.x86_64 Sep 03 11:06:38 Installed: 1: perl-Error-0.17020-2.el7.noarch Sep 03 11:06:38 Installed: boost-system-1.53 .0-27.el7.x86_64 3. září 11:06:38 Nainstalováno: perl-Thread-Queue-3.02-2.el7.noarch 3. září 11:06:38 Nainstalováno: avahi-libs-0.6.31-19.el7 .x86_64 září 03 11:06:38 nainstalováno: zip-3.0-11.el7.x86_64 září 03 11:06:38 nainstalováno: boost-thread-1.53.0-27.el7.x86_64 září 03 11:06:38 nainstalováno : libgfortran-4.8.5-36.el7_6.2.x86_64 Sep 03 11:06:39 Instalováno: cpp-4.8.5-36.el7_6.2.x86_64 

Další užitečné možnosti yum

Nástroj yum má několik užitečných možností, které často používáte při správě balíčků. Aby při instalaci nebo odebrání balíčků po zadání příkazu neprováděly žádné akce, můžete použít tuto možnost -y, například:

yum update -y yum nainstalovat httpd -y

Chcete-li odpovědět ne na požádání, musíte zadat možnost:

--Assumeno

Použijte yum bez pluginů nebo deaktivujte konkrétní plugin:

--noplugins

--disableplugin = fastestmirror

Povolit zakázaný plugin:

--enableplugin = fastestmirror

Povolit zakázané úložiště:

yum update -enablerepo = atomic

Zakázat konkrétní úložiště:

yum update -disablerepo = atomic

Konfigurační soubor /etc/yum.conf

Konfigurační soubor Yum - /etc/yum.conf.

Hlavní parametry konfiguračního souboru:

cachedir- lokální mezipaměť paketů (standardně / var / cache / yum)

logfile- cesta k souboru protokolu yum

zastaralé - upgrade nebo ne, zastaralé balíčky (1-ano, 0-ne)

gpgcheck - ověření podpisu balíčku před instalací (1-ano, 0-ne)

věšák - mezipaměť (1-ano, 0-ne)

cachedir - adresář pro uložení mezipaměti (výchozí / var / cache / yum)

debuglevel - úroveň ladění od 1 do 10

pluginy - povolit yum pluginy (1-ano, 0-ne)

bugtracker_url - odkaz, kde budou zaznamenány chyby yum

installonly_limit - maximální počet verzí, které lze nainstalovat pro jeden balíček.

Užitečné yum pluginy

Na co jsou yum pluginy? Stejně jako jinde zjednodušte naši práci.

Některé populární pluginy a jejich popis:

yum-plugin-fastestmirror - plugin pro měření rychlosti zrcadel a poskytování nejrychlejší instalace balíčků.

yum-plugin-security - plugin, který poskytuje seznam aktualizací týkajících se pouze zabezpečení systému.

yum-plugin-keys - vám umožní pracovat s klávesami klíče, klíče-informace, klíče-data, klíče-odstranit

Adresář, kde jsou uloženy všechny pluginy / etc / yum /

yum-plugin-versionlock - umožňuje blokovat aktualizaci určených balíčků

Chcete-li zobrazit seznam dostupných modulů yum, postupujte takto:

yum search yum-plugin

================================================== ======================= N / S uzavřeno: yum-plugin ====================== ================================================== PackageKit-yum-plugin.x86_64: Řekněte PackageKit, aby zkontroloval aktualizace, když yum opouští fusioninventory-agent-yum-plugin.noarch: Požádejte agenta FusionInventory o odeslání inventáře, když yum opouští kabi-yum-plugins.noarch: jádro CentOS Linux ABI yum plugin yum-plugin-aliases.noarch: Yum plugin pro povolení aliasu filtry yum-plugin-auto-update-debug-info.noarch: Yum plugin pro automatické aktualizace nainstalovaných debuginfo balíčků yum-plugin-changelog.noarch: Yum plugin pro prohlížení changelogů balíčků před / po aktualizaci yum-plugin-copr.noarch: Yum plugin, který vybere nejrychlejší repozitář ze seznamu zrcadlených yum-plugin-filter-data.noarch: Yum plugin to list filter na základě dat balíčku yum-plugin-fs-snapshot.noarch: Yum plugin pro automatické snímání vašich ilesystems během aktualizací yum-plugin-keys.noarch: Yum plugin pro práci s podpisovými klíči yum-plugin-list-data.noarch: Yum plugin pro výpis agregovaných dat balíčku yum-plugin-local.noarch: Yum plugin pro automatickou správu lokálních repo. stažených balíčků yum-plugin-merge-conf.noarch: Yum plugin pro sloučení změn konfigurace při instalaci balíčků yum-plugin-ovl.noarch: Yum plugin pro řešení problémů overlayfs yum-plugin-post-transaction-actions.noarch: Yum plugin pro spuštění libovolných příkazů, když jsou určité pkgs na yum-plugin-priority.noarch: plugin, který dává balíčkům priority different repos yum-plugin-protectbase.noarch: Yum plugin pro ochranu balíčků před určitými úložišti. yum-plugin-ps.noarch: Yum plugin pro prohlížení procesů, s ohledem na balíčky yum-plugin-remove-with-leaves.noarch: Yum plugin pro odstranění závislostí, které se již nepoužívají kvůli odstranění yum-plugin-rpm -warm-cache.noarch: Yum plugin pro včasný přístup k souborům rpmdb pro zahřátí přístupu k db yum-plugin-show-leaves.noarch: Yum plugin, který zobrazuje nově nainstalované balíčky listů yum-plugin-tmprepo.noarch: Yum plugin přidat dočasné úložiště yum-plugin-tsflags.noarch: Yum plugin pro přidání upgradů na další distribuční verzi yum-plugin-ověřit.noarch: Yum plugin pro přidání příkazu pro ověření a možnosti yum-plugin-versionlock.noarch: Yum plugin pro zablokování aktualizovaných balíčků před aktualizací 

Vybraný plugin můžete nainstalovat pomocí příkazu yum install, jako jakýkoli jiný balíček:

yum install yum-plugin-changelog

yum -y nainstalovat yum-versionlock

Chcete-li zablokovat aktualizaci balíčku pomocí pluginu, postupujte takto:

yum versionlock nginx

Seznam blokovaných balíčků:

yum versionlock list

Odebrat balíček z blokovaných:

yum versionlock smazat nginx

Pokud v určitém okamžiku nepotřebujete použít konkrétní plugin, můžete jej deaktivovat přidáním předpony, když se říká yum:

--disableplugin = fastestmirror

Nebo deaktivujte všechny pluginy nainstalované v systému:

--noplugins

Použití yum prostřednictvím proxy

Yum používá protokol HTTP / 1.1 pro práci s úložišti programů. Pokud má váš Linuxový server přístup k internetu pouze přes HTTP proxy server, můžete název proxy serveru zadat v konfiguračním souboru /etc/yum.con v sekci [hlavní]:

proxy = http: // proxyservername: 3128

Pokud proxy server vyžaduje autorizaci, přidejte následující řádky:

proxy_proxy_username = uživatel
proxy_password = pass

Chcete-li zkontrolovat yum prostřednictvím proxy serveru, použijte příkaz

yum clean all && yum search nginx

Pro ověření jsem uvedl veřejný proxy server z Německa a během instalace fungoval nejrychlejší plugin, našla zrcátka, ze kterých bude rychlost vyšší:

Pokud potřebujete používat proxy pouze pro některé repozitáře, nemusíte upravovat soubor /etc/yum.conf a v proxy konfiguračním souboru úložiště určovat nastavení proxy /etc/yum.repos.d/your_config.repo.

V tomto článku jsme tedy prozkoumali základní vlastnosti správce otáček pro balíček yum v systému Linux CentOS / RHEL. V dalším článku si povíme více o správě repozitářů v Yumu. Seznamte se, zkuste použít yum ve své práci.