Un administrateur système a besoin d'obtenir une liste de paquets pour diverses raisons : réinstallation d'un système, installation de paquets sur une autre machine, vérification des versions et de la compatibilité ou autres raisons.
Vous pouvez obtenir la liste des paquets à l'aide de la commande :
dpkg-query -l
Une liste apparaîtra dans le panneau avec le nom, la version actuelle et une brève description de l'objectif.
Pour Ubuntu, elle utilise :
sudo apt list --installed
Elle produit également une liste des paquets avec la version et l'architecture actuelles. Il existe des commandes permettant d'afficher uniquement une liste de paquets avec leur nom, mais elles sont moins fréquemment utilisées).
Typiquement, un administrateur système a besoin de transférer une liste de paquets installés d'un serveur à un autre, plutôt que d'avoir à installer et/ou configurer chacun d'entre eux individuellement.
Il y a 2 étapes pour faire cela :
Pour créer un fichier contenant la liste des paquets installés, nous utilisons :
dpkg --get-selections | grep -v deinstall > allpackages.txt
Le nom"allpackages.txt
" est un exemple. Vous pouvez utiliser n'importe quel nom :"alllists.txt
","lists.txt
","packages
.txt
", etc.
Le fichier contenant la liste des paquets et des versions est copié sur le serveur n° 2 avec votre adresse. Par exemple, pour 200.200.200.200.200, la commande ressemblerait à ceci :
scp allpackages.txt 200.200.200.200:~/
La seule chose qu'il reste à faire est de rouler les paquets à partir du fichier copié. Pour ce faire, la commande est utilisée :
$ sudo apt-get install -y $(< allpackages.txt)
C'est fait ! Vous avez maintenant déplacé la liste des paquets du serveur n° 1 vers le serveur n° 2.