AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 17823
Accepted
Ivan
Ivan
Asked: 2010-12-17 18:08:49 +0800 CST2010-12-17 18:08:49 +0800 CST 2010-12-17 18:08:49 +0800 CST

Como listar todos os pacotes instalados

  • 772

Eu gostaria de gerar uma lista de todos os pacotes instalados em um arquivo de texto para que eu possa revisá-lo e instalá-lo em massa em outro sistema. Como eu faria isso?

package-management apt
  • 24 24 respostas
  • 4679001 Views

24 respostas

  • Voted
  1. Best Answer
    Sabacon
    2010-12-17T19:02:36+08:002010-12-17T19:02:36+08:00

    Ubuntu 14.04 e superior

    A aptferramenta no Ubuntu 14.04 e acima torna isso muito fácil.

    apt list --installed
    

    Versões mais antigas

    Para obter uma lista de pacotes instalados localmente, faça isso no seu terminal:

    dpkg --get-selections | grep -v deinstall
    

    (A -vtag "inverte" grep para retornar linhas não correspondentes)

    Para obter uma lista de um pacote específico instalado:

    dpkg --get-selections | grep postgres
    

    Para salvar essa lista em um arquivo de texto chamado packagesem sua área de trabalho, faça isso em seu terminal:

    dpkg --get-selections | grep -v deinstall > ~/Desktop/packages
    

    Alternativamente, basta usar

    dpkg -l
    

    (você não precisa executar nenhum desses comandos como superusuário, portanto, nenhuma sudoou outras variantes são necessárias aqui)

    • 2821
  2. intuited
    2012-08-29T13:35:16+08:002012-08-29T13:35:16+08:00

    Para obter apenas os pacotes que foram instalados expressamente (não apenas instalados como dependências), você pode executar

    aptitude search '~i!~M'
    

    Isso também incluirá uma breve descrição, que você pode desejar. Caso contrário, adicione também a opção -F '%p', conforme mencionado por karthick87.


    Ainda outra opção parece ser copiar o arquivo /var/lib/apt/extended_states, que é um banco de dados de arquivos de texto neste formato:

    Package: grub-common
    Architecture: amd64
    Auto-Installed: 0
    
    Package: linux-headers-2.6.35-22-generic
    Architecture: amd64
    Auto-Installed: 1
    

    Auto-Installed: 0indica que o pacote foi instalado expressamente e não é apenas uma dependência.

    • 490
  3. bcl
    2013-02-03T02:39:47+08:002013-02-03T02:39:47+08:00

    Para listar todos os pacotes instalados intencionalmente (não como dependências) pelos comandos do apt, execute o seguinte:

    (zcat $(ls -tr /var/log/apt/history.log*.gz); cat /var/log/apt/history.log) 2>/dev/null |
      egrep '^(Start-Date:|Commandline:)' |
      grep -v aptdaemon |
      egrep '^Commandline:'
    

    Isso fornece uma visualização baseada em tempo reverso, com comandos mais antigos listados primeiro:

    Commandline: apt-get install k3b
    Commandline: apt-get install jhead
    ...
    

    Dados de instalação também mostrando o uso sináptico, mas sem detalhes (o mesmo com a data de instalação):

    (zcat $(ls -tr /var/log/apt/history.log*.gz); cat /var/log/apt/history.log) 2>/dev/null |
      egrep '^(Start-Date:|Commandline:)' |
      grep -v aptdaemon |
      egrep -B1 '^Commandline:'
    

    fornecendo o seguinte:

    Start-Date: 2012-09-23  14:02:14
    Commandline: apt-get install gparted
    Start-Date: 2012-09-23  15:02:51
    Commandline: apt-get install sysstat
    ...
    
    • 251
  4. gogaman
    2012-05-17T10:26:48+08:002012-05-17T10:26:48+08:00

    Crie um backup de quais pacotes estão instalados atualmente:

    dpkg --get-selections > list.txt
    

    Em seguida, (em outro sistema) restaure as instalações dessa lista:

    dpkg --clear-selections
    sudo dpkg --set-selections < list.txt
    

    Para se livrar de pacotes obsoletos:

    sudo apt-get autoremove
    

    Para ser instalado como no momento do backup (ou seja, para instalar pacotes definidos por dpkg --set-selections):

    sudo apt-get dselect-upgrade
    
    • 208
  5. Tim Tisdall
    2014-07-11T05:43:47+08:002014-07-11T05:43:47+08:00
    apt-mark showmanual
    

    estado das páginas man:

    irá imprimir uma lista de pacotes instalados manualmente

    Portanto, deve apenas fornecer uma lista de pacotes instalados explicitamente (embora isso inclua pacotes que faziam parte da instalação inicial padrão) sem todas as dependências incluídas devido à instalação desses pacotes.

    Para gerar o resultado em um arquivo de texto:

    apt-mark showmanual > list-manually-installed.txt
    
    • 94
  6. kyleN
    2012-05-17T10:40:42+08:002012-05-17T10:40:42+08:00

    dpkg-query(em vez de dpkg --get-selections, que lista alguns pacotes que não estão instalados) da seguinte forma:

    dpkg-query -W -f='${PackageSpec} ${Status}\n' | grep installed |  sort -u | cut -f1 -d \ > installed-pkgs
    

    Ou:

    dpkg -l | grep ^ii | sed 's_  _\t_g' | cut -f 2 > installed-pkgs
    
    • 44
  7. karthick87
    2010-12-17T19:35:42+08:002010-12-17T19:35:42+08:00

    Para listar todos os pacotes instalados,

    dpkg -l |awk '/^[hi]i/{print $2}' > 1.txt
    

    ou

    aptitude search -F '%p' '~i' > 1.txt
    

    ou

    dpkg --get-selections > 1.txt
    

    Nota:
    Você obterá o arquivo 1.txt resultante em sua pasta pessoal ou poderá especificar seu próprio caminho.

    • 42
  8. user.dz
    2015-09-06T15:09:50+08:002015-09-06T15:09:50+08:00

    APT-Clone

    Este pacote pode ser usado para clonar/restaurar os pacotes em um sistema baseado em apt.

    • Ele irá salvar/restaurar os pacotes, sources.list, keyring e estados de instalação automática.
    • Ele também pode salvar/restaurar pacotes que não podem mais ser baixados usando dpkg-repack.

    fonte:man apt-clone

    O APT-Clone é usado pelo ubiquity(instalador do Ubuntu) para o processo de atualização. É muito melhor do que a dpkg --get-selectionssolução porque:

    1. Ele preserva todas as informações dos repositórios.
    2. Ele mantém o controle de quais pacotes foram instalados automaticamente.
    3. Permite reempacotar arquivos DEB instalados localmente.

    Como usar

    1. Instalar

       sudo apt-get install apt-clone
      
    2. Fazer backup

       sudo apt-clone clone path-to/apt-clone-state-ubuntu-$(lsb_release -sr)-$(date +%F).tar.gz
      
    3. Restaurar backup

       sudo apt-clone restore path-to/apt-clone-state-ubuntu.tar.gz
      

      Restaurar para a versão mais recente:

       sudo apt-clone restore-new-distro path-to/apt-clone-state-ubuntu.tar.gz $(lsb_release -sc)
      

    Estrutura do resultado

    Ele cria um arquivo tar compactado em gzip que pode ser facilmente editado e revisado antes de restaurar em outras máquinas. Aqui um exemplo de sua estrutura:

    /
    ├── etc
    │   └── apt
    │       ├── preferences.d
    │       ├── sources.list
    │       ├── sources.list.d
    │       │   ├── anton_-ubuntu-dnscrypt-vivid.list
    │       │   ├── maarten-baert-ubuntu-simplescreenrecorder-vivid.list
    │       │   └── megasync.list
    │       ├── trusted.gpg
    │       └── trusted.gpg.d
    │           ├── anton__ubuntu_dnscrypt.gpg
    │           ├── anton__ubuntu_dnscrypt.gpg~
    │           ├── maarten-baert_ubuntu_simplescreenrecorder.gpg
    │           └── maarten-baert_ubuntu_simplescreenrecorder.gpg~
    └── var
        └── lib
            └── apt-clone
                ├── extended_states
                ├── installed.pkgs
                └── uname
    
    • 38
  9. Tamer
    2011-04-13T04:26:16+08:002011-04-13T04:26:16+08:00

    Eu recomendo usar o blueprint . Embora seja projetado para servidores, também pode ser usado em desktops. Ele irá criar um shell script/chef/puppet que você pode usar para reinstalar todos os seus pacotes.

    • 37
  10. Nerdfest
    2010-12-17T20:46:37+08:002010-12-17T20:46:37+08:00

    Você pode usar o Synaptic para salvar o estado atual do seu pacote instalado. No Synaptic, selecione "arquivo/salvar marcações", digite o nome do arquivo para salvar o estado e certifique-se de marcar a caixa "Salvar estado completo, não apenas alterações".

    O arquivo salvo a partir disso pode ser carregado em uma nova máquina usando "marcações de arquivo/leitura" no Synaptic.

    • 37

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como adicionar um diretório ao PATH?

    • 17 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Marko Smith

    Como faço para obter a temperatura da CPU?

    • 21 respostas
  • Marko Smith

    Como posso adicionar um usuário como um novo sudoer usando a linha de comando?

    • 7 respostas
  • Marko Smith

    Alterar permissões e propriedade da pasta

    • 9 respostas
  • Marko Smith

    Como você reinicia o Apache?

    • 13 respostas
  • Marko Smith

    Como posso desinstalar o software?

    • 11 respostas
  • Marko Smith

    Como os PPAs podem ser removidos?

    • 26 respostas
  • Martin Hope
    justingrif Como adicionar um diretório ao PATH? 2009-07-23 12:42:23 +0800 CST
  • Martin Hope
    NES Como habilitar ou desabilitar serviços? 2010-12-30 13:03:32 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    Olivier Lalonde Como manter os processos em execução após encerrar a sessão ssh? 2010-10-22 04:09:13 +0800 CST
  • Martin Hope
    David B Como posso adicionar um usuário como um novo sudoer usando a linha de comando? 2010-10-16 04:02:45 +0800 CST
  • Martin Hope
    Hans Como removo versões antigas do kernel para limpar o menu de inicialização? 2010-08-21 19:37:01 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve