Estou prestes a mover um servidor de uma caixa Ubuntu para outra. Não estou clonando a caixa antiga pela nova; Estou criando um novo sistema e moverei os dados conforme necessário. Quero instalar todo o software que tenho na caixa antiga da nova.
Existe uma maneira simples de encontrar o histórico de todos os comandos "sudo apt-get install" que forneci ao longo do tempo? Ou seja, o dpkg -l mostra todos os pacotes que foram instalados, mas não qual pacote de nível superior os instalou. Se existe uma maneira do dpkg me fornecer o pacote de instalação, eu posso encontrar os únicos lá; caso contrário, quero outra coisa para dizer "você instalou esses 24 pacotes".
Respostas:
A
apt
história está/var/log/apt/history.log
como foi dito em um comentário acima. Dito isto, isso não listará pacotes que foram instalados manualmente, usandodpkg
GUIs, comogdebi
. Para ver todos os pacotes que passaramdpkg
, você pode olhar/var/log/dpkg.log
.fonte
http://www.debianadmin.com/clone-your-ubuntu-installation.html
e /var/adm/apt/history.log
fonte
/var/log/apt/history.log
(você digitou o local incorretamente), depois de alguns meses, ele será removidoVocê pode listar os pacotes cuja instalação foi solicitada explicitamente
apt-mark
.Caso você esteja executando um lançamento antigo do Debian, aqui está uma maneira manual.
O comando a seguir fornece a lista de pacotes cuja instalação foi solicitada, manual ou automaticamente. A menos que você esteja no meio de (des) instalar pacotes, esta é a lista de pacotes instalados.
O comando a seguir fornece um superconjunto de pacotes instalados automaticamente:
Juntando tudo, o seguinte comando lista os pacotes instalados manualmente:
fonte
comm -23 <(apt-mark showmanual | sort -u) <(gzip -dc /var/log/installer/initial-status.gz | sed -n 's/^Package: //p' | sort -u)
apt-mark showmanual
que é equivalente ao seu último comando.Mostra todos os pacotes que você instalou usando:
sudo apt-get install xxxxx
fonte
Em vez da combinação tac / cabeça, é melhor usar cauda (nas últimas 25 linhas):
fonte
As outras respostas ajudaram, mas me deram muita saída. Para reduzir a saída, comecei
apt-mark showmanual
como nesta resposta e depois filtramos os pacotes originalmente instalados (veja esta resposta para saber como obter uma lista dos pacotes originalmente instalados; estou usando o ubuntu 18.04.2, portanto, o link abaixo) .O script filtra pacotes que estavam no manifesto original fazendo uma comparação independente da versão, para que os pacotes atualizados não apareçam na lista. Acabei com uma lista de cerca de 60 pacotes.
A outra maneira que eu gosto é essa resposta que pesquisa todos os logs do apt .
fonte
Para obter a lista dos pacotes instalados mais recentes em ordem decrescente, eu gosto de usar (por exemplo, 25 linhas):
fonte
tail -25 /var/log/apt/history.log | tac