RPM et commandes utiles

  • Connaître les dépendances d'un paquet :
    rpm -qpR {.rpm-file}
    rpm -qR {package-name}
  • Savoir a quel paquet apartient un fichier donné :
    rpm -qf /mon/fichier
  • Lister les fichiers d'un paquet :
    rpm -qlp {.rpm-file}
    rpm -ql {package-name}
  • Lister les fichiers d'un paquet avec leurs permissions :
    rpm -qlv {package-name}
  • Afficher le changelog d'un paquet RPM :
    rpm -q --changelog -p {.rpm-file}
  • Extraire un fichier d'un paquet RPM (noter le “./” en debut de chemin de fichier):
    rpm2cpio mon.fichier.rpm | cpio -ivd ./mon/fichier/a/extraire

    comme par exemple :

    rpm2cpio /tmp/jenkins-1.609.3-1.1.noarch.rpm | cpio -ivd ./etc/logrotate.d/jenkins
Cela va créer l’arborescencecessaire pour extraire le fichier avec son chemin relatif
  • Obtenir l'adresse de télechargement d'un paquet RPM :
    Il peut arriver si une machine n'est pas connectée a internet qu'on veuille juste obtenir le lien ves le RPM qu'on souhaite installer: pour se faire, utiliser l'outil yumdownloader du paquet yum-utils, par exemple ppour le paquet tmux :
    yumdownloader --urls tmux
  • Télécharger uniquement les paquets sans les installer (avec en bonus la possibilité de définir le répertoire de sortie) avec le plugin yum-plugin-downloadonly:
    # yum install yum-plugin-downloadonly
    # yum install --downloadonly --downloaddir=/tmp/ puppet-server

Yum et commandes utiles

  • Installer un paquet local rpm avec yum :
    yum --nogpgcheck localinstall mon.fichier.local.rpm
  • Lister les paquets des dépendances requises pour un paquet particulier :
    yum deplist monpaquet
  • voir le changelog complet d'un paquet (yum install yum-plugin-changelog pour installer le plugin changelog) :
    yum changelog all monpaquet
  • voir le changelog depuis une date :
    yum changelog 2019-01 monpaquet
  • voir le changelog d'un paquet pret a etre mis a jour :
    yum update monpaquet --changelog

Dire a yum de ne pas mettre a jour certains paquets

Tout d'abord il vous faudra installer le plugin yum versionlock si vous ne l'avez pas deja :

# yum install yum-plugin-versionlock
  • ensuite pour figer une version (par exemple sur ansible) :
    # yum versionlock ansible
  • lister les paquets dont la version a été bloquée :
    # yum versionlock list
  • supprimer le lock unitairement (par exemple sur ansible) :
    # yum versionlock exclude ansible
  • effacer cette liste (bien sur attention cela va autoriser les mises a jour :p)
    # yum versionlock clear

Si d'aventure vous vouliez voir quelles versions seraient disponibles sans l'utilisation de versionlock, il suffit de le desactiver temporairement, comme par exemple avec la commande suivante :

# yum --disableplugin=versionlock update
sysadmin/tips/rpm.txt · Dernière modification: 2019/12/24 15:28 par james
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0