Removendo com segurança * pacotes não utilizados *

2

Após vários experimentos de iniciantes do Linux, meu sistema Kubuntu continua me dizendo que existem pacotes não utilizados que não são mais necessários e que devem ser removidos. Isso parece uma boa ideia para mim.

Isto é o que o "apt-get -s autoremove" propõe para remoção:

  freeglut3 fs-uae fs-uae-launcher gir1.2-gtksource-3.0 hwdata ipython kmymoney-common libalkimia4 libexosip2-11 libglee0d1 libgnome-desktop-2-17 libgtksourceview-3.0-1 libgtksourceview-3.0-common
  libgwengui-cpp0 libgwengui-qt4-0 liblinphone5 libmediastreamer-base3 libofx6 libosip2-11 libosp5 libpanel-applet0 libportmidi0 libpyside1.2 libsdl-image1.2 libsdl-mixer1.2 libsdl-ttf2.0-0
  libsensors-applet-plugin0 libshiboken1.2 libsmpeg0 linux-headers-3.19.0-15 linux-headers-3.19.0-15-generic linux-image-3.19.0-15-generic linux-image-extra-3.19.0-15-generic meld python-dulwich
  python-fastimport python-numpy python-opengl python-pexpect python-pygame python-pyside python-pyside.phonon python-pyside.qtcore python-pyside.qtdeclarative python-pyside.qtgui python-pyside.qthelp
  python-pyside.qtnetwork python-pyside.qtopengl python-pyside.qtscript python-pyside.qtsql python-pyside.qtsvg python-pyside.qttest python-pyside.qtuitools python-pyside.qtwebkit python-pyside.qtxml
  python-simplegeneric python-svn

Para a maioria deles, não faço ideia de qual contexto os instalei. Mas pelo menos um desses pacotes definitivamente não é usado: o emulador "fs-uae" foi manualmente instalado por mim e eu pretendo continuar usando-o.

Por que o apt-get propõe remover o pacote "fs-uae"? Existe uma maneira de limpar com quebrar qualquer coisa e sem remover algo que eu preciso?

    
por Silicomancer 20.09.2015 / 23:11

1 resposta

3
Como você provavelmente já sabe, no Linux os pacotes podem especificar "dependências", ou seja, outros pacotes que devem ser instalados para que este pacote funcione. Essas dependências são resolvidas recursivamente, ou seja, dependências de suas dependências de pacote também são instaladas. Desta forma, podem existir meta-pacotes que instalem um conjunto completo de software. Exemplos comuns são libreoffice (para suite de escritório) ou kde-full para toda a área de trabalho do KDE.

Quando o apt (gerenciador de pacotes do Debian) instala algum pacote, ele marca todas as dependências como instaladas automaticamente . Desta forma, ele pode distinguir entre pacotes solicitados explicitamente pelo usuário e pacotes que foram extraídos apenas como dependências (sobre qual usuário provavelmente não se importa de forma alguma).

apt-get autoremove procura pacotes que são marcados como instalados automaticamente, mas que não são mais necessários por nenhum pacote instalado manualmente. Estas são frequentemente versões mais antigas de bibliotecas (quando a versão da biblioteca está no nome do pacote para permitir coexistência de diferentes versões, por exemplo, libavcodec54 e libavcodec56 ) ou pacotes removidos do repositório, mas algumas vezes é útil como dependência e depois é removido. Isso acontece especialmente quando você diz ao apt para instalar os pacotes recomendados ou sugeridos, mas então os configura para não puxar esses pacotes como dependências.

Para remover o pacote da lista de pacotes considerados para remoção, marque esse pacote como instalado manualmente. Você pode fazer isso usando apt-mark :

apt-mark manual <package_name>

ou aptitude (os seguintes comandos são equivalentes, use apenas um):

aptitude unmarkauto <package_name>
aptitude install <package_name>
aptitude install <package_name>&m

Finalmente, para obter algum contexto quando esses pacotes específicos foram instalados, você pode tentar pesquisar seus nomes em /var/log/apt/history.log files. Esses logs são rotacionados (compactados e colocados em arquivos separados) mensalmente; para obter o arquivo completo, você pode executar (o pedido não será preservado):

cat /var/log/apt/history.log > /tmp/full-archive
zcat history.log* >> /tmp/full-archive
    
por Mirosław Zalewski 20.09.2015 / 23:55