Veškerý software v systému Linux je rozdělen do balíčků, které lze instalovat, odinstalovat, upgradovat, dotazovat se a ověřovat. Systémy CentOS/RHEL používají Red Hat Package Manager (RPM) pro usnadnění instalace, upgradu a odstranění softwarových balíčků.
CentOS/RHEL také poskytuje yum (Yellowdog Updater, Modified) utilita, která pracuje s balíčky RPM. Když yum nainstaluje nebo upgraduje softwarový balíček, nainstaluje nebo upgraduje také všechny závislosti balíčku. Nástroj yum stahuje hlavičky balíčků a balíčky z úložišť. Úložiště jsou úložiště, ze kterých lze načíst a nainstalovat softwarové balíčky.
Konfigurační soubory Yum
Hlavní konfigurační soubor pro yum je /etc/yum.conf . Konfigurační soubory, které definují úložiště, jsou v /etc/yum.repos.d adresář. Příklad /etc/yum.conf následuje zde:
# cat /etc/yum.conf [main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=3
Globální konfigurace jsou definovány v sekci [main]:
Parametr | Účel |
---|---|
cachedir | Adresář pro ukládání stažených balíčků |
keepcache | Nastavte na 0, abyste označili odstranění balíčků po jejich instalaci. |
úroveň ladění | Množství zaznamenaných informací, od 0 do 10 |
soubor protokolu | Soubor protokolu yum |
exactarch | Pokud je nastaveno na 1, yum aktualizuje balíčky pouze s balíčky stejné architektury. |
zastaralé | Při nastavení na 1 nahradí yum během aktualizace zastaralé balíčky. |
gpgcheck | Pokud je nastaveno na 1, yum kontroluje podpisy GPG, aby ověřil pravost balíčků. Direktiva gpgkey určuje umístění klíče GPG. |
pluginy | Pokud je nastaveno na 1, povolí pluginy yum, které rozšiřují funkčnost. |
installonly_limit | Maximální počet verzí, které lze nainstalovat současně pro libovolný jednotlivý balíček |
yum repozitáře
Linux ukládá informace o každém úložišti do samostatného souboru v /etc/yum.repos.d adresář. Následuje příklad:
# ls -lrt /etc/yum.repos.d total 20 -rw-r--r-- 1 root root 733 Jul 27 18:09 rhel7.2.repo -rw-r--r-- 1 root root 358 Nov 5 14:00 rhel7.3.repo
Soubory repo definují, která úložiště se mají použít. Každý repo soubor obsahuje specifikace pro několik souvisejících úložišť. Například
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Direktivy v repo souborech zahrnují:
směrnice | Účel |
---|---|
jméno | Popisuje úložiště |
baseurl | Je umístění hlavního úložiště (http://, ftp:// nebo file://) |
povoleno | Když je nastaveno na 1, yum používá úložiště. Úložiště je zakázáno, pokud je nastaveno na 0. |
yum úložiště mohou být také lokálně přístupná, nejen přes internet. Místní úložiště yum se vytvářejí pomocí createrepo a poté nastavení baseurl do místního adresáře.
CentOS / RHEL 6 :Jak nastavit úložiště yum pomocí lokálně připojeného DVDCentOS / RHEL 7 :Jak nastavit úložiště yum pomocí lokálně připojeného DVD
CentOS / RHEL :Jak vytvořit a hostovat úložiště yum přes httpd
Obslužný program yum je často nejrychlejší způsob, jak provádět úlohy správy balíčků. Poskytuje možnosti nad rámec těch, které poskytuje rpm a nástroje pro správu grafických balíčků. Existuje mnoho příkazů yum, ale následující uvádí příklady běžných úloh.
Výpis balíčků
Existuje několik příkazů yum pro seznam balíčků v libovolném úložišti povoleném ve vašem systému nebo nainstalovaném. Můžete uvést konkrétní typy balíčků a také upřesnit svůj seznam specifikací balíčku s názvem, architekturou, verzí nebo vydáním libovolného balíčku.
Chcete-li vypsat všechny balíčky ve všech úložištích a všechny balíčky nainstalované ve vašem systému, použijte následující příkaz:
# yum list
Chcete-li zobrazit seznam všech balíčků nainstalovaných v systému, použijte následující příkaz:
# yum list installed
Chcete-li zobrazit seznam všech dostupných balíčků k instalaci do libovolného povoleného úložiště ve vašem systému, použijte následující příkaz:
# yum list available
Následující příklad najde název balíčku, ke kterému soubor (například /etc/sysconfig/atd) patří:
# yum provides /etc/sysconfig/atd at-3.1.13-17.el7.x86_64 : Job spooling tools ...
Kontrola aktualizací
Chcete-li zjistit, které balíčky nainstalované ve vašem systému mají dostupné aktualizace, použijte následující příkaz:
# yum check-update
Zobrazí se název balíčku plus architektura, verze aktualizovaného balíčku a úložiště (nebo
kanál ULN). Zadáním aktualizace seznamu yum vrátíte stejný výstup.
Aktualizace balíčků
Můžete si vybrat aktualizaci jednoho balíčku, více balíčků nebo všech balíčků najednou. Pokud mají nějaké závislosti balíčku (nebo balíčků) k dispozici aktualizace, aktualizují se také.
Aktualizace jednoho balíčku
Chcete-li aktualizovat jeden balíček, použijte následující syntaxi příkazu:
# yum update package_name
Chcete-li například aktualizovat balíček bind-libs, zadejte:
# yum update bind-libs
yum zkontroluje závislosti, zobrazí vyřešené závislosti a souhrn transakce, zobrazí výzvu „Je to v pořádku [y/N] “, čeká na vaši odpověď a poté stáhne a nainstaluje balíček a všechny potřebné závislé balíčky. Použijte yum -y abyste výzvu obešli.
Aktualizace všech balíčků
Chcete-li aktualizovat všechny balíčky a jejich závislosti, zadejte yum update (bez jakýchkoli argumentů):
# yum update
Instalace balíčků
Chcete-li nainstalovat nový balíček spolu s libovolnými závislostmi balíčku, použijte následující syntaxi:
# yum install package_name
Chcete-li například nainstalovat balíček zsh, zadejte:
# yum install zsh
Aktualizace a instalace jader
Když používáte yum, nemusíte se starat o rozdíl mezi instalací a aktualizací balíčku jádra. yum vždy nainstaluje nové jádro bez ohledu na to, zda používáte aktualizaci yum nebo instalaci yum.
Odebrání balíčků
K odstranění balíčku použijte následující syntaxi:
# yum remove package_name
Chcete-li například odebrat balíček zsh, zadejte:
# yum remove zshPříklady příkazů „yum history“ k zobrazení, vrácení zpět, opakování a vrácení transakcí yum
CentOS / RHEL :Konfigurace automatických aktualizací yum pomocí služby yum-cron