Devo usar "apt-get remove" ou "apt-get purge"?

51

Para desinstalar um aplicativo (ou pacote) devo usar apt-get remove package-nameou apt-get purge package-name?

Qual é a vantagem de qualquer um deles para outro?

Rahmani
fonte

Respostas:

43

Se você personalizou o pacote / software, editando os arquivos de configuração diretamente ou através de uma GUI, convém manter suas personalizações. Geralmente em sistemas Unix / Linux, as configurações são salvas em arquivos de texto, mesmo que a configuração / customização seja feita via GUI.

Cada pacote deb binário Debian possui uma lista de arquivos que ele identifica como arquivos de configuração. dpkge, portanto, aptrespeite essa identificação ao remover pacotes e também em atualizações. Por padrão apt/dpkg, não removerá os arquivos de configuração na remoção de pacotes. Você precisa solicitar uma limpeza. Na atualização, solicitará que você escolha entre a versão atual e a nova (se elas diferirem) antes de substituir os arquivos de configuração. Mesmo nesse caso, ele salva uma cópia do arquivo original. Aqui, o Debian está tentando ajudá-lo, com base na suposição de que seus arquivos de configuração podem conter informações valiosas.

Portanto, se você não configurou o pacote ou não deseja manter suas configurações, pode usá-lo apt-get purge.

Se você mantiver os arquivos de configuração, se / quando reinstalar o pacote, o Debian tentará reutilizar as informações de configuração salvas. Se a versão do pacote que você está tentando (re) instalar tiver arquivos de configuração que conflitam com os arquivos de configuração que já estão instalados, ele solicitará novamente antes da substituição, como ocorre na atualização.

Comentário secundário: Se você removeu o pacote e posteriormente deseja remover os arquivos de configuração, costumava ser o caso que aptnão os removeria se o pacote não estivesse instalado. No entanto, há alguns anos, a execução apt-get purgeremoverá os arquivos de configuração, mesmo que o pacote não esteja mais instalado.

Isso foi corrigido na 0.8.0~pre1versão do apt, lançada em sexta-feira, 13 de agosto de 2010, ou possivelmente na 0.8.15~exp1versão do apt, lançada em 10 de junho de 2011. Veja o Debian Bug Report: apt-get --purge não funciona conforme o esperado , datado 24 de junho de 2002.

Faheem Mitha
fonte
11
São equivalentes: apt-get remove --purge APPVS apt-get purge APP?
mini-
11
@mini: Sim. Cite na página de manual do apt-get, "remove --purge é equivalente ao comando purge."
Faheem Mitha
if you have removed the package and later want to remove the config files, you will need to call dpkg directly, because apt will not remove the config files if the package is no longer installed.Isso significa que apt-get purgenão removerá os arquivos de configuração após a apt-get removeexecução?
Anmol Singh Jaggi
@AnmolSinghJaggi Esta parte está realmente incorreta e desatualizada. Eu pretendia mudar isso antes. Estou mudando agora.
Faheem Mitha 6/03/16
@FaheemMitha Okay!
Anmol Singh Jaggi
28

Na página do manual de apt-get:

   remove
        remove is identical to install except that packages are removed 
        instead of installed. Note that removing a package leaves its 
        configuration files on the system. If a plus sign is appended to the 
        package name (with no intervening space), the identified package 
        will be installed instead of removed.

   purge
        purge is identical to remove except that packages are removed and 
        purged (any configuration files are deleted too).

Eu usaria purgese você não quiser manter nenhum arquivo de configuração por perto.

slm
fonte
4

limpe a remoção configuration files dos seus pacotes, mas remova a manutenção configuration filesdo seu pacote.

Mas vantagens ou desvantagens: está relacionado ao seu sistema, seus pacotes, sua máquina, instale ou não, e assim por diante.

PersianGulf
fonte