Un administrador de sistemas necesita obtener una lista de paquetes por varias razones: reinstalar un sistema, instalar paquetes en otra máquina, comprobar versiones y compatibilidad u otras razones.
¿Cómo obtener una lista de paquetes de Ubuntu / Debian Linux?
Puede obtener la lista de paquetes con el comando:
dpkg-query -l
Aparecerá una lista en el panel con el nombre, la versión actual y una breve descripción del propósito.
Para Ubuntu utiliza:
sudo apt list --installed
También muestra una lista de paquetes con la versión actual y la arquitectura. Hay comandos para mostrar sólo una lista de paquetes con nombres, pero se usan con menos frecuencia).
¿Cómo copiar y migrar paquetes en Ubuntu / Debian Linux?
Normalmente, un administrador de sistemas necesita transferir una lista de paquetes instalados de un servidor a otro, en lugar de tener que instalar y/o configurar cada uno individualmente.
Hay 2 pasos para hacer esto:
- Guarde la lista de paquetes del servidor #1 que fueron previamente emitidos por el comando;
- Instalar las dependencias en el servidor #2.
Para crear un archivo con la lista de paquetes instalados, usamos:
dpkg --get-selections | grep -v deinstall > allpackages.txt
El nombre"allpackages.txt" es por ejemplo. Se puede utilizar cualquier nombre:"alllists.txt","lists.txt","packages.txt" y así sucesivamente.
El archivo con la lista de paquetes y versiones se copia en el servidor nº 2 con su dirección. Por ejemplo, para 200.200.200.200 el comando sería así:
scp allpackages.txt 200.200.200.200:~/
Lo único que queda por hacer es enrollar los paquetes desde el fichero copiado. Para ello se utiliza el comando
$ sudo apt-get install -y $(< allpackages.txt)
¡Listo! Ahora has movido la lista de paquetes del servidor #1 al servidor #2.