YUM,DNF,RPM : installer des packages : Différence entre versions
(Page créée avec « =extraire le contenu d'un RPM sans l'installer= $ mkdir tmppath; cd tmppath $ rpm2cpio ../openssl-devel-0.9.8e-22.el5.i386.rpm | cpio -idmv $ find . ») |
m |
||
| (8 révisions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
| − | = | + | = Dépôt local sur image iso= |
| + | On veut installer des packages présents dans l'image iso d'une distribution. | ||
| + | * créer le descripteur dans /etc/yum.repos.d, par exemple | ||
| + | # vi /etc/yum.repos.d/iso.repo | ||
| + | [isorepo] | ||
| + | name=Local repo | ||
| + | baseurl=file:///mnt/iso/ | ||
| + | enabled=0 | ||
| + | gpgcheck=0 | ||
| + | On a mis enabled=0 de sorte que lorsque le montage n'est pas actif, ce dépôt ne pose pas problème. | ||
| + | * monter l'image sur /mnt/iso (on doit trouver le repodata à la racine du disque dans cet exemple, sinon adapter le chemin). | ||
| + | * sinon, on peut aussi créer un dépôt dans un répertoire quelconque contenant les rpms. Dans ce cas utiliser createrepo et adapter le chemin. | ||
| + | * installer à partir du dépôt local | ||
| + | # yum --noplugins --disablerepo="*" --enablerepo="isorepo" install myrpmname | ||
| + | |||
| + | =Extraire le contenu d'un RPM sans l'installer= | ||
$ mkdir tmppath; cd tmppath | $ mkdir tmppath; cd tmppath | ||
$ rpm2cpio ../openssl-devel-0.9.8e-22.el5.i386.rpm | cpio -idmv | $ rpm2cpio ../openssl-devel-0.9.8e-22.el5.i386.rpm | cpio -idmv | ||
$ find . | $ find . | ||
| + | |||
| + | = yum history = | ||
| + | Voir https://wbag.tonioc.ovh/?view=view&id=69 . | ||
| + | |||
| + | = installer des packages alternatifs = | ||
| + | == IUS : des versions plus récentes sans conflits de nommage == | ||
| + | Le projet IUS (https://ius.io/) propose des version plus récentes de certains produits (ex: php) par rapport aux dépôts officiels, avec des nommages différents permettant d'éviter les conflits avec les packages officiels éventuellement installés. Cela permet également d'avoir plusieurs versions en parallèle. | ||
| + | |||
| + | = nettoyer les vieux packages de kernel = | ||
| + | Outre le yum remove/erase direct: | ||
| + | $ sudo package-cleanup --oldkernels --count=2 | ||
| + | |||
| + | = Synchro distrib avec les repo = | ||
| + | $ sudo dnf distro-sync --refresh | ||
| + | |||
| + | = Solutions a problèmes divers = | ||
| + | * pb d'accès aux repositiories à cause de IPv6 (erreur 404 sur tous les miroirs par exemple) | ||
| + | # /etc/yum.conf : ajouter | ||
| + | ip_resolve=4 | ||
| + | [[Category:Linux]] | ||
| + | [[Category:RPM]] | ||
Version actuelle datée du 25 décembre 2025 à 08:48
Sommaire
Dépôt local sur image iso
On veut installer des packages présents dans l'image iso d'une distribution.
- créer le descripteur dans /etc/yum.repos.d, par exemple
# vi /etc/yum.repos.d/iso.repo [isorepo] name=Local repo baseurl=file:///mnt/iso/ enabled=0 gpgcheck=0
On a mis enabled=0 de sorte que lorsque le montage n'est pas actif, ce dépôt ne pose pas problème.
- monter l'image sur /mnt/iso (on doit trouver le repodata à la racine du disque dans cet exemple, sinon adapter le chemin).
- sinon, on peut aussi créer un dépôt dans un répertoire quelconque contenant les rpms. Dans ce cas utiliser createrepo et adapter le chemin.
- installer à partir du dépôt local
# yum --noplugins --disablerepo="*" --enablerepo="isorepo" install myrpmname
Extraire le contenu d'un RPM sans l'installer
$ mkdir tmppath; cd tmppath $ rpm2cpio ../openssl-devel-0.9.8e-22.el5.i386.rpm | cpio -idmv $ find .
yum history
Voir https://wbag.tonioc.ovh/?view=view&id=69 .
installer des packages alternatifs
IUS : des versions plus récentes sans conflits de nommage
Le projet IUS (https://ius.io/) propose des version plus récentes de certains produits (ex: php) par rapport aux dépôts officiels, avec des nommages différents permettant d'éviter les conflits avec les packages officiels éventuellement installés. Cela permet également d'avoir plusieurs versions en parallèle.
nettoyer les vieux packages de kernel
Outre le yum remove/erase direct:
$ sudo package-cleanup --oldkernels --count=2
Synchro distrib avec les repo
$ sudo dnf distro-sync --refresh
Solutions a problèmes divers
- pb d'accès aux repositiories à cause de IPv6 (erreur 404 sur tous les miroirs par exemple)
# /etc/yum.conf : ajouter ip_resolve=4