
Ele lista 1.546 pacotes a serem removidos. Incluindo xorg
, xserver
e outros pacotes principais. Eu digitei "sim" no passado e como esperado isso bloqueou o sistema operacional, tive que reinstalá-lo do zero. Desta vez respondi "não" e tentei:
sudo apt-get -y update --fix-missing
mas ainda quer remover tudo. Como posso consertar isso, por favor!
Responder1
Isso acontece mais comumente quando as pessoas instalam um desktop em uma instalação mínima. Mas isso pode acontecer quando você instala QUALQUER tipo de pilha principal em um sistema Ubuntu.
No exemplo do Desktop, significa que toda a pilha do desktop está pendurada em um único metapacote (como o ubuntu-desktop
pacote). Quando você remove algum elemento ou aplicativo do Desktop - que remove o metapacote do desktop - essa ação torna toda a pilha do desktop elegível para remoção automática.
Prevenção
Quando as pessoas usam o verdadeiro Desktop Installer, há uma camada adicional de proteção de marcação apt para evitar que as pessoas removam automaticamente toda a área de trabalho.
Você também pode instalar explicitamente (ou marcar com apt) os aplicativos que usa. Dessa forma, a maioria das dependências da sua área de trabalho não será removida automaticamente.
sudo apt install shotwell # Example of explicitly installing sudo apt-mark manual shotwell # Example of apt-marking
instalar usando pacotes de tarefas, por exemplo, Ubuntu MATE pode ser instalado por
sudo apt-get install ubuntu-mate-desktop^
Note o
^
, significa tarefa; instalar desta forma evitará arruinar o sistema se alguém quiser executar comandos potencialmente perigosos, comosudo apt autopurge ubuntu-mate-desktop
o meta-pacote.
Recuperação
Você pode simplesmente reinstalar o pacote de tarefas da área de trabalho.
sudo apt install --reinstall ubuntu-desktop^ # Example of re-installing a Ubuntu desktop task
Você também pode copiar a longa lista de remoções e colá-la em um comando de instalação. Observe quenomeandoum pacote o torna inelegível para remoções automáticas futuras, mas sua preocupação parece ser muitas remoções automáticas em vez de poucas. Se você precisar recuperar essa lista, ela estará no seu
/var/log/apt/history.log
arquivo.
Responder2
Se você acha que o autoremove está removendo coisas que você deseja manter, para cada pacote você deve:
- use
dpkg -l | grep $shortpackagename
para verificar se há uma versão mais recente também instalada; nesse caso, não há problema em remover a versão mais antiga - use
apt rdepends $packagename
para ver se há um pacote pai que você também deseja. Se houver, instale esse pacote pai ou uma dependência reversa desse pai - Se não houver nenhum pacote de dependência pai (óbvio) que você deseja manter, mas ainda deseja mantê-lo,
apt install $packagename
para que ele não seja desinstalado pelo autoremove.
Um bom exemplo do acima (como mencionado nos comentários), se o autoremove quiser remover, xorg
instale ubuntu-desktop
e você provavelmente descobrirá que muitos dos autoremoves agora terão uma dependência pai instalada e a lista ficará mais curta.
Quando a lista for curta o suficiente para que o que resta sejam pacotes obsoletos ou coisas com as quais você tem certeza de que não se importa, então o autoremove é seguro.
Esta situação não é normal, não acontece automaticamente. É causada, em algum momento, pela remoção de algo crítico do sistema que faz com que algum pacote pai importante (como ubuntu-desktop) seja removido.