Como localizo e removo pacotes quebrados que instalei?

11

Eu estava pesquisando algumas perguntas aqui para encontrar uma solução para localizar e remover pacotes quebrados. Sendo um novato, instalei alguns PPAs projetados para 11.10 na minha máquina 12.04 LTS. No terminal, sugeri que eu tentasse o apt-get -f install, o que me levou a essa pergunta. Uma grande lição aprendida para mim, se alguém puder ajudar

stephenmyall
fonte

Respostas:

6

O Synaptic Package Manager (disponível no Software Center) é uma ferramenta gráfica para gerenciar pacotes e, entre muitos recursos, permite filtrar os pacotes por estado. Em alguns cliques, selecionando a categoria desejada no painel esquerdo, você verá a lista de pacotes que requerem correção.

Rafał Cieślak
fonte
28
  • Instale o Synaptic Package Manager, através do Software Center ou executando este comando no Terminal:

     sudo apt-get install synaptic 
    
  • Abra-o digitando synaptico traço do Unity e depois pressionando Enter.

  • Em seguida, siga este procedimento:

    1. Selecione a categoria "Status". Isso mostra os pacotes organizados por status.
    2. Selecione a categoria "Dependências desfeitos" no painel superior esquerdo.
    3. Selecione os pacotes quebrados. Se os pacotes forem mais de um, selecione todos eles pressionando Ctrl+ A.
    4. Em seguida, clique com o botão direito do mouse em um pacote selecionado e selecione a opção "Marcar para remoção completa" no menu.

    Captura de tela mostrando "Marcar para remoção completa" em pacotes com dependências quebradas

É isso aí. Os pacotes quebrados se foram.

Anwar
fonte
Eu não tenho Broken dependenciesna minha página de status.
precisa saber é o seguinte
3

Sem downloads, sem GUI necessário:

Você pode listar pacotes quebrados:

dpkg -l | grep ^..r 

r state (no terceiro campo) significa: reinst-required (pacote quebrado, reinstalação necessária)

explicação dos campos do dpkg

Para listar e remover esses pacotes:

dpkg -l | grep ^..r | while read -r | tr -s ' ' | cut -d' ' -f2 | while read -r name; do sudo apt-get remove "$name"; done

(Resposta copiada deste tópico .)

JellicleCat
fonte
1

Para limpar os pacotes que você instalou do ppa, você deve usar ppa-purge, assumindo que o ppa seja ppa: xorg-edger / ppa

  1. sudo apt-get install ppa-purge
  2. sudo apt-get update
  3. sudo ppa-purge ppa:xorg-edger/ppa
  4. ele solicitará uma lista de pacotes para remover e / ou fazer o downgrade, se nada parecer suspeito, responda Y e aguarde
  5. se tiver sorte, deve terminar sem erro; caso contrário, você precisará fazer uma sudo apt-get install -f

Se após a etapa 5 você ainda tiver erros, volte e atualize sua pergunta.

Boa sorte.

número 5
fonte
E: Não foi possível localizar o pacote ppa-purge
stiv
Vou dizer que .. ppa-purge não existe.
John Drefahl
0

Eu criei um script para corrigir pacotes quebrados. Ele procura os pacotes quebrados no /var/log/dist-upgrade/apt.log e, em seguida, localiza os nomes dos pacotes e aplica o comando especificado neles.

Tome cuidado ao usar esse script, porque às vezes alguns pacotes quebrados estão relacionados ao sistema e podem causar um novo problema. então use o comando install ou upgrade em vez do comando remove .

Obtenha daqui

Faça o download do script usando o comando abaixo:

wget https://gist.githubusercontent.com/EmpireWorld/8eb920165777399cfd684d8d4227a6e2/raw/17e6d4a151a6163aa45dd8302b965ed433b27741/fix-broken.sh

Em seguida, execute-o:

./fix-broken.sh

Além disso, você pode definir a ação que deseja aplicar a pacotes quebrados como este:

./fix-broken (install|upgrade|remove)

A ação padrão é remover .

Hasan Bayat
fonte