Comandos úteis do apt (dpkg)

Comandos úteis do apt (dpkg)

Por favor, poste seus comandos apt menos conhecidos, mas úteis, envolvendo apt-*, dpkg ou aptitude.

Responder1

Algum comando que uso com frequência:

para ver dependências e reverter dependências:

apt-cache [--important] [--installed] [--recurse] depends $package
apt-cache rdepends $package

Para remover um pacote, todos os pacotes autoremove e todos os arquivos de configuração relacionados:

sudo apt-get --purge --auto-remove purge $package

Para ver aptas opções de configuração reais:

apt-config dump | less

Para modificar uma opção na linha de comando

$ apt-config dump | grep -i recommend
APT::Install-Recommends "1";
$ sudo apt-get -o APT::Install-Recommends="0" install $package

Este foi apenas um exemplo de especificação de opções do APT através da linha de comando, para evitar a instalação de pacotes recomendados, você pode usar:

sudo apt-get --no-install-recommends $package

Para ver todos os pacotes locais/obsoletos:

aptitude search ~o

Para ver pacotes removidos com configuração residual:

aptitude search ~c

e para removê-los

sudo aptitude purge ~c

Para obter uma lista de todos os pacotes instalados ( dpkg -làs vezes pode fornecer saída de colunas truncadas)

dpkg --get-selections | awk '{ print $1 }'

ou

dpkg-query -Wf '${Package}\n'  # other fields available, see man page

Para desmontar, modificar e montar um pacote

dpkg-deb -x file.deb ./dir
cd dir 
dpkg-deb -e ../file.deb
# apply your modification, then... 
cd ..
dpkg-deb -b dir file-new.deb

Responder2

Dois que eu uso muito são: -

apt-get autoremove <packagename>

O que removerá o pacote e quaisquer dependências não utilizadas, o que é útil se você experimentar um aplicativo, decidir que não precisa dele e desejar que o lixo também seja removido.

dpkg -S /path/to/file

O que me diz com qual pacote um arquivo foi instalado.

Finalmente, mais um..

dpkg -l <packagename> | grep ^ii

Lista pacotes, mas apenas aqueles que possuem o status ii, o que significa que estão instalados, portanto não mostrará coisas que removi.

Se você deseja obter o nome do pacote para um arquivo que não foi instalado ( dpkg -S, mas para pacotes não instalados), instale apt-filee execute:

apt-file search /path/to/file

Responder3

Ver o ChangeLog de um pacote

$ aptitude changelog <pkgname>

Exemplo:

$ aptitude changelog sudo
sudo (1.7.0-1ubuntu2.4) karmic-security; urgency=low

  * SECURITY UPDATE: properly handle multiple PATH variables when using
    secure_path in env.c
    - Adapted http://www.sudo.ws/repos/sudo/raw-rev/a09c6812eaec
    - CVE-2010-1646
...

Responder4

Para obter comandos de lista que começam com 'apt-', faça o seguinte. abra um terminal e digite 'apt-' e pressione a tecla TAB duas vezes para listar todos os comandos que começam com 'apt-'.

Exemplo de saída:

apt-add-repository    apt-extracttemplates  apt-key
apt-cache             apt-file              apt-mark
apt-cdrom             apt-ftparchive        apt-sortpkgs
apt-config            apt-get 

Para obter informações detalhadas, você pode verificar a página de manual de um comando específico

por exemplo:man apt-get

informação relacionada