Gestió de paquets RPM, YUM, DNF i Zypper
Introducció
A més dels gestors de paquets de debian, que ja vam discutir aquí hi ha més gestors de paquets, com els que explicarem avui: RPM, YUM, DNF i Zypper.
El gestor de paquets RPM
rpm és l’eina essencial per administrar paquets de software en sistemes Red Hat o derivats. Les seves funcions principals són:
Instal·lar, actualitzar i eliminar paquets
Per instal·lar paquets, farem:
$ sudo rpm -i PACKAGENAME
On PACKAGENAME és el paquet a instal·lar. Per actualitzar paquets, fem:
$ sudo rpm -U PACKAGENAME
Per veure més informació en les dues comandes esmentades, podem afegir el paràmetre -v. Per veure el progrès podem afegir també -h.
Per eliminar un paquet, farem:
$ sudo rpm -e PACKAGENAME
Maneig de dependències
RPM no pot resoldre dependències per si sol, així que si un paquet requereix d’altres per poder funcionar, rpm llistarà aquests paquets necessaris, però serà cosa de l’usuari instal·lar-los.
Llistar paquets instal·lats
Per llistar els paquets instal·lats, farem:
$ sudo rpm -qa
Obtenir informació de paquets
Per obtenir informació sobre un paquet instal·lat (núm. de versió, arquitectura, data d’instal·lació,…), farem:
$ sudo rpm -qi PACKAGENAME
Per obtenir una llista dels arxius dins un paquet instal·lat, fem:
$ sudo rpm -ql PACKAGENAME
Per obtenir informació sobre un paquet no instal·lat, podem fer:
$ sudo rpm -qip PACKAGENAME
# I també
$ sudo rpm -qlp PACKAGENAME
Esbrinar quin paquet posseeix un arxiu específic
Per esbrinar quin arxiu posseeix un paquet instal·lat, utilitzarem els paràmetres -qf (“query file”) seguit de l’arxiu:
$ sudo rpm -qf /usr/bin/unzip
YellowDog Updater Modified (YUM)
Aquest gestor de paquets estava pensat per la distribució Yellow Dog Linux, però amb el temps va evolucionar per administrar paquets en sistemes basats en RPM.
És semblant a apt en quant a funcions, ja que permet cercar, instal·lar i eliminar paquets i maneja les dependències automàticament.
Buscar paquets
Per instal·lar un paquet, primer s’ha de conèixer el seu nom. Per això, yum permet realitzar cerques amb yum search:
$ sudo yum search 7zip
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.usfcar.br
* epel: mirror.globo.com
* extras: mirror.ufscar.br
* updates: mirror.ufscar.br
(...)
Instal·lar, actualitzar i eliminar paquets
Com ja hem explicat abans, yum gestiona les dependències automàticament. Per tant, si volem instal·lar un paquet i no tenim les seves dependències, yum les instal·larà automàticament.
Per instal·lar un paquet, fem:
$ sudo yum install PACKAGENAME
Per verificar si hi ha actualitzacions per un paquet, fem:
$ sudo yum check-update PACKAGENAME
Si no afegim PACKAGENAME, buscarà si hi ha actualitzacions disponibles per a tots els paquets instal·lats.
I per actualitzar, fem:
$ sudo yum update PACKAGENAME
Com abans, si no afegim PACKAGENAME, actualitzarà tots els paquets del sistema.
Per eliminar un paquet, fem:
$ sudo yum remove PACKAGENAME
Trobar quin paquet proporciona un arxiu específic
Per veure les dependències que falten a l’hora d’instal·lar un paquet:
$ sudo yum whatprovides libgimpui-2.0.so.0
També funciona amb paquets instal·lats.
Obtenir informació sobre un paquet
Per obtenir informació sobre un paquet, fem:
$ sudo yum info PACKAGENAME
Gestió de repositoris de software
Els repositoris de yum es troben a /etc/yum.repos.d. Cada repo es representa amb un arxiu .repo. Per afegir repositoris, els podem afegir al directori mencionat o al final de /etc/yum.conf, tot i que la manera correcta de fer-ho és amb l’eina que proveeix yum, yum-config-manager.
Per afegir un repositori, utilitzarem el paràmetre –ad-repo:
$ sudo yum-config-manager --ad-repo https://...repo
Per llistar els repositoris disponibles, farem:
$ sudo yum repolist all
Per habilitar o deshabilitar repositoris, fem:
$ sudo yum config-manager --enable/disable REPO
yum emmagatzema la caché a /var/cache/yum. Per netejar-la, podem fer yum clean seguit del que volem netejar.
DNF
És l’eina que s’utilitza a Fedora i és una bifurcació de yum, pel que és molt semblant.
Buscar paquets
Per buscar paquets, farem:
$ sudo dnf search PATTERN
Obtenir informació d’un paquet
Per obtenir informació sobre un paquet, fem:
$ sduo dnf info PACKAGENAME
Instal·lar paquets
Per instal·lar un paquet, fem:
$ sudo dnf install PACKAGENAME
Eliminar paquets
Per eliminar un paquet fem:
$ sudo dnf remove PACKAGENAME
Actualitzar paquets
Per actualitzar paquets, fem:
$ sudo dnf update PACKAGENAME
Si no afegim quin paquet volem actualitzar, els actualitzarà tots.
Trobar quin paquet proporciona un arxiu específic
Per trobar quin paquet dona un arxiu, fem:
$ sudo dnf provides FILENAME
Obtenir una llista dels paquets instal·lats
Per llistar els paquets instal·lats, fem:
$ sudo dnf list --installed
Llistar el contingut d’un paquet
Per llistar el contingut d’un paquet, fem:
$ sudo dnf repoquery -l PACKAGENAME
Gestió de repositoris de software
Per llistar els repositoris, fem:
$ sudo dnf repolist
Per llistar només els habilitats, afegim el paràmetre –enabled.
Per afegir un repositori, fem:
$ sudo dnf config-manager --ad-repo URL
I per habilitar-lo, ho fem també amb config-manager i la opció –set-emabled REPO_ID.
Zypper
És l’eina de paquets utilitzada per SUSE i openSUSE. Té característiques semblants a apt i yum, i també resol dependències per si mateix.
Actualització dels índexos de paquets
També funciona amb repositoris i metadades, que s’han d’actualitzar perquè la utilitat conegui els últims paquets disponibles. Es fa amb:
$ sudo zypper refresh
zypper té una funció d’actualització automàtica que es pot habilitar per cada repositori.
Buscar paquets
Per buscar paquets, farem:
$ sudo zypper se PACKAGENAME
I per buscar en els paquets instal·lats, podem afegir el paràmetre -i.
Instal·lar, actualitzar i eliminar paquets
Per instal·lar paquets, fem:
$ sudo zypper in PACKAGENAME
zypper també pot instal·lar paquets rpm. Per fer-ho, utilitzarem la mateixa comanda especificant la ruta del paquet .rpm.
Per actualitzar els paquets, fem:
$ sudo zypper update
Per eliminar un paquet, fem:
$ sudo zypper rm PACKAGENAME
Trobar quin paquet proporciona un arxiu específic
Per trobar quin paquet dona un arxiu, fem:
$ sudo zypper se --provides /ruta/al/paquet
Obtenir informació de paquets
Per obtenir inforamció d’un paquet, fem:
$ sudo zypper info PACKAGENAME
Gestió de repositoris de software
Per veure una llista dels repositoris del sistema, fem:
$ sudo zypper repos
Podem habilitar i deshabilitar repositoris amb el paràmetre modifyrepo seguit de -e (enable) o -d (disable).
Per automatitzar l’actualització dels repositoris, utilitzarem modifyrepo amb -f i -F.
Afegir i eliminar repos
Per això tenim dues opcions, addrepo i removerepo.
Fins aquí el post d’avui. Espero que hagi estat d’interès i d’ajut tan per aprendre a utilitzar certs gestors de paquets com per estudiar per certificacions LPIC. Recorda que pots deixar un comentari i compartir. Ens veiem al següent!