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
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.