tente dpkg -l
lista-lhe os pacotes, a versão e uma breve descrição.
apt-cache dump --installed
não funciona, ele também lista os pacotes desinstalados.
Eu quero listar os pacotes de instalação cada um por uma linha, com o número da versão instalada.
A maneira mais simples é usar dpkg
, mas pode mostrar alguns pacotes estranhos e trunca nomes longos de pacotes e números de versão:
dpkg -l
Para listar apenas pacotes instalados corretamente e não truncar nomes:
dpkg -l | grep '^ii'
Para obter mais controle sobre o formato de saída, você pode usar dpkg-query
:
dpkg-query -W -f '${status} ${package} ${version}\n' | \
sed -n 's/^install ok installed //p'
Outro comando pode ser:
apt-show-versions
Ele também fornece informações sobre o estado do pacote (atualizado, atualizável, ...) e sobre a distribuição de origem (wheezy, jessie, ...). É fácil filtrar os pacotes que vieram de backports ou outros repositórios exóticos.
Este programa é empacotado separadamente. Instale-o primeiro com:
apt-get install apt-show-versions
O comando a seguir lista os pacotes com suas versões, e adicionalmente permite que você configure um sistema com os mesmos pacotes e versões posteriormente, usando o arquivo pkg-selections.txt
gerado aqui:
aptitude -q -F "%?p=%?V %M" --disable-columns search \~i > pkg-selections.txt
Cada linha conterá nome do pacote, versão e um opcional "A" se o pacote foi instalado automaticamente.
Fonte: " Clonagem de um sistema Debian - pacotes e versões idênticas ". Também contém o script que configura um sistema a partir de pkg-selections.txt
.
Para listar os nomes de cada pacote instalado, digite como qualquer usuário:
dpkg --get-selections
Você receberá uma saída assim:
accountsservice install
aclinstall install
acpi-supportinstall install
acpidinstall install
...
Para remover a sequência de caracteres desnecessária "install", você pode usar sed :
dpkg --get-selections | sed 's:install$::'
E se você quiser salvá-lo em um arquivo chamado InstalledPackages , digite:
dpkg --get-selections | sed 's:install$::' > InstalledPackages
Se você não tiver acesso ao sistema ativo e tiver um backup da partição root /
, poderá:
root@backup_server /mnt/old_root/var/lib/dpkg/info # ls -la *.list | awk {'print $9'}| sed 's/.list//' >> /root/installed_app
Agora, este /root/installed_app
contém todos os pacotes instalados!