Um administrador de sistemas precisa de obter uma lista de pacotes por várias razões: reinstalar um sistema, instalar pacotes noutra máquina, verificar versões e compatibilidade ou outras razões.
Pode obter os pacotes listados com o comando:
dpkg-query -l
Uma lista aparecerá no painel com o nome, a versão atual e uma breve descrição do propósito.
Para o Ubuntu, ele usa:
sudo apt list --installed
Também apresenta uma listagem de pacotes com a versão atual e a arquitetura. Existem comandos para produzir apenas uma lista de pacotes com nomes, mas são menos usados).
Tipicamente, um administrador de sistemas precisa de transferir uma lista de pacotes instalados de um servidor para outro, em vez de ter de instalar e/ou configurar cada um individualmente.
Há 2 passos para fazer isso:
Para criar um arquivo com a lista de pacotes instalados, usamos:
dpkg --get-selections | grep -v deinstall > allpackages.txt
O nome"allpackages.txt
" é um exemplo. Pode usar qualquer nome:"alllists.txt
","lists.txt
","packages
.txt
" e assim por diante.
O ficheiro com a lista de pacotes e versões é copiado para o servidor #2 com o seu endereço. Por exemplo, para 200.200.200.200.200 o comando seria o seguinte:
scp allpackages.txt 200.200.200.200:~/
A única coisa que falta fazer é lançar os pacotes a partir do ficheiro copiado. Para fazer isso, o comando é usado:
$ sudo apt-get install -y $(< allpackages.txt)
Pronto! Agora você moveu a lista de pacotes do servidor #1 para o servidor #2.