Diferença entre remoção e completa?

Iniciado por CientistaMaluco, 30 de Agosto de 2008, 12:13

tópico anterior - próximo tópico

CientistaMaluco

Olá a todos. Hoje ao entrar no Gestor de Pacotes Synaptic para remover o AssaultCube surgiu-me a dúvida. Qual é a diferença entre remoção e remoção completa?  :)

felipeborges

Creio eu, que a Remoção seja remover o aplicativo em sí. Somente o aplicativo.

Já a Remoção Completa apagaria o aplicativo, suas dependências, e as preferências do usuário (geralmente ocultas na pasta /home).

Meu blog sobre GNU/Linux
Debian Lenny e Gentoo.

clcampos

#2
Citação de: felipeborges online 30 de Agosto de 2008, 13:00
Creio eu, que a Remoção seja remover o aplicativo em sí. Somente o aplicativo.

Já a Remoção Completa apagaria o aplicativo, suas dependências, e as preferências do usuário (geralmente ocultas na pasta /home).


Os arquivos ocultos dentro do diretório $HOME do usuário não são deletados, até porque é difícil saber exatamente quais são.

Como exemplo o pidgin que usa o diretório ~/.purple para salvar dados, não sendo então exatamente padrão a criação de diretórios/arquivos ocultos (para configuração) com o mesmo nome do pacote.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

alarcon

#3
man dpkg (algumas partes dele):

Citar...

PACKAGE SELECTION STATES
       install
              The package is selected for installation.

       deinstall
              The  package  is  selected  for  deinstallation (i.e. we want to
              remove all files, except configuration files).

       purge  The package is selected to be purged (i.e.  we  want  to  remove
              everything, even configuration files).

....

-r, --remove, -P, --purge package...|-a|--pending
              Remove an installed package. -r or  --remove  remove  everything
              except configuration files. This may avoid having to reconfigure
              the package if it is reinstalled later. (Configuration files are
              the  files  listed  in the debian/conffiles control file). -P or
              --purge removes everything, including configuration files. If -a
              or  --pending is given instead of a package name, then all pack‐
              ages unpacked, but marked  to  be  removed  or  purged  in  file
              /var/lib/dpkg/status, are removed or purged, respectively.

              Removing of a package consists of the following steps:

              1. Run prerm script

              2. Remove the installed files

              3. Run postrm script


man apt-get (algumas partes dele):

Citar...

install
           install is followed by one or more packages desired for
           installation. Each package is a package name, not a fully qualified
           filename (for instance, in a Debian GNU/Linux system, libc6 would
           be the argument provided, not libc6_1.9.6-2.deb) All packages
           required by the package(s) specified for installation will also be
           retrieved and installed. The /etc/apt/sources.list file is used to
           locate the desired packages. If a hyphen is appended to the package
           name (with no intervening space), the identified package will be
           removed if it is installed. Similarly a plus sign can be used to
           designate a package to install. These latter features may be used
           to override decisions made by apt-get´s conflict resolution system.

           A specific version of a package can be selected for installation by
           following the package name with an equals and the version of the
           package to select. This will cause that version to be located and
           selected for install. Alternatively a specific distribution can be
           selected by following the package name with a slash and the version
           of the distribution or the Archive name (stable, testing,
           unstable).

           Both of the version selection mechanisms can downgrade packages and
           must be used with care.

           Finally, the apt_preferences(5) mechanism allows you to create an
           alternative installation policy for individual packages.

           If no package matches the given expression and the expression
           contains one of ´.´, ´?´ or ´*´ then it is assumed to be a POSIX
           regular expression, and it is applied to all package names in the
           database. Any matches are then installed (or removed). Note that
           matching is done by substring so ´lo.*´ matches ´how-lo´ and
           ´lowest´. If this is undesired, anchor the regular expression with
           a ´^´ or ´$´ character, or create a more specific regular
           expression.

       remove
           remove is identical to install except that packages are removed
           instead of installed. 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.
...


Então também entendo que o modo remoção completa (purge) atua na remoção além do pacote em si, também na remoção dos arquivos de configuração, na teoria.

Clcampos quando da desinstalação do pidgin, por exemplo, pela remoção completa ele não removeria a pasta ~/.purple também?

clcampos

#4
Não.

Nunca tentei removê-lo no 8.04, mas quando necessitei removê-lo tive que fazer isso manualmente.

Outra coisa que podem pesquisar no fórum... O que mais tem são pessoas que removem pacotes (usando o --purge) e ao reinstalar o programa e ele continuar com as configurações antigas, isto porque o diretório de configuração ainda existe.

O engraçado é que alguns casos basta remover (ou renomear, que seria o menos perigoso) os arquivos/diretórios de configuração para que um aplicativo volte ao seu "estado inicial", ou default, não sendo necessário reinstalar o tal pacote.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

clcampos

alarcon alguns pacotes ao serem instalados já geram arquivos dentro de /etc.

Talvez esses arquivos/diretórios de configuração sejam apagados quando de uma remoção completa...

Mas estes arquivos/diretórios criados na $HOME do usuário normalmente são criados durante a execução dos aplicativos... e pode até ter algum que seja removido, mas não lembro de ver algum ser removido.

Outra coisa... não uso o synaptic... é muito raro... eu uso mesmo via ambiente caracter.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

alarcon

#6
Citação de: clcampos online 30 de Agosto de 2008, 14:58
Não.

Nunca tentei removê-lo no 8.04, mas quando necessitei removê-lo tive que fazer isso manualmente.

Outra coisa que podem pesquisar no fórum... O que mais tem são pessoas que removem pacotes (usando o --purge) e ao reinstalar o programa e ele continuar com as configurações antigas, isto porque o diretório de configuração ainda existe.

O engraçado é que alguns casos basta remover (ou renomear, que seria o menos perigoso) os arquivos/diretórios de configuração para que um aplicativo volte ao seu "estado inicial", ou default, não sendo necessário reinstalar o tal pacote.

Então o parâmetro --purge é uma função inócua nos comandos apt-get e dpkg mesmo ele falando em "remove everything, even configuration files" ?  

alarcon

#7
Citação de: clcampos online 30 de Agosto de 2008, 15:10
alarcon alguns pacotes ao serem instalados já geram arquivos dentro de /etc.

Talvez esses arquivos/diretórios de configuração sejam apagados quando de uma remoção completa...

Mas estes arquivos/diretórios criados na $HOME do usuário normalmente são criados durante a execução dos aplicativos... e pode até ter algum que seja removido, mas não lembro de ver algum ser removido.

Outra coisa... não uso o synaptic... é muito raro... eu uso mesmo via ambiente caracter.

Entendi, então quando se fala em arquivos de configurações, está querendo dizer os que ficam em /etc e não na pasta pessoal dentro da home.

clcampos

Presumo que sim... desculpe ter ficado editando a mensagem ... é que realmente não gostei do que escrevi a primeira vez.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

0tacon

 A diferença entre a remoção e a remoção completa as vezes é inexistente. no Opera por exemplo, não faz a menor diferença, os arquivos de configuração continuam no /home/~/.opera mesmo com a remoção completa. Por isso, se "der pau" no Opera e for necessário começar do zero, é preciso remover a pasta .opera antes.


clcampos

É o que falei 0tacon... as vezes num problema com um aplicativo é melhor apenas renomear/remover o diretório/arquivo de configuração.

Feito isso e se o problema ainda persistir parta para reinstalar o pacote, mas comigo é raro precisar fazer isso.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

alarcon

#11
Citação de: clcampos online 30 de Agosto de 2008, 15:25
É o que falei 0tacon... as vezes num problema com um aplicativo é melhor apenas renomear/remover o diretório/arquivo de configuração.

Feito isso e se o problema ainda persistir parta para reinstalar o pacote, mas comigo é raro precisar fazer isso.

Também não altero muito o meu sistema e por isso nem sabia ao certo as funções do remover completamente (--purge). Aqui quando muito instalo uma versão mais nova sobre uma mais antiga, nunca tendo que reinstalar nada, exceto o pidgin.

O pidgin eu já removi para instalar a versão mais nova do getdeb, mas lá eu usei a remoção simples, até por que pensei que assim estava preservando minhas configurações pessoais em ~/.purple  ;D

Ah, não precisa se desculpar clcampos. ;)

CientistaMaluco

Obrigado pela explicação. São estes pequenos pormenores que fazem com que uma pessoa aprenda todos os dias.  :D

ewsg

Interessante o que vocês mencionaram acima.

Quer dizer que, no caso do Pidgin, posso baixar tranqüilamente o pacote .deb da versão 2.5.0 do getdeb.net e simplesmente instalar por cima da versão que possuo instalada, sem sequer remover a anterior?

De qualquer forma tanto faz, uma vez que a pasta que guarda os logs e configurações pessoais relativas ao aplicativo permanecerá inalterada mesmo em uma eventual remoção, correto? :)

clcampos

Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!