Como prevenir e corrigir erros de dependência do pacote no Ubuntu

Como prevenir e corrigir erros de dependência do pacote no Ubuntu
Erros de dependência do pacote podem ocorrer no Ubuntu após a instalação de alguns aplicativos. As decisões tomadas pelos usuários durante os problemas de instalação ou nível do sistema fora do controle dos usuários podem levar a pacotes quebrados.

Se você vir palavras como "dependências não atendidas", "pacotes quebrados", "pacotes foram mantidos de volta" na saída do terminal, é provável que você tenha conflitos de dependência. Este artigo listará alguns métodos que podem ser usados ​​para prevenir e corrigir esses tipos de erros de dependência. Observe que os métodos sugeridos abaixo não estão em nenhuma ordem.

Atualizar pacotes

A primeira coisa a fazer em caso de erros é executar o comando de atualização. Ele atualizará quaisquer repositórios oficiais e de terceiros que você adicionou ao seu sistema e puxará uma nova lista de pacotes. Executando o comando de atualização do Terminal Bypasses Fases Fased of Ubuntu Packages através do Atualizador da GUI, para que você sempre obtenha a lista mais recente de pacotes.

Você pode atualizar os repositórios executando o seguinte comando:

$ sudo apt update

Alterar o servidor de download do pacote

Se você receber erros de “não conseguir localizar o pacote” quando executar o comando de atualização acima, tente alterar os espelhos de download. Os pacotes do Ubuntu são servidos para os usuários finais de servidores localizados em todo o mundo. Às vezes, apenas atualizações parciais ou quebradas estão disponíveis nesses servidores, resultando em erros durante a atualização. Esse problema geralmente é resolvido automaticamente depois de um tempo quando todos os pacotes do Ubuntu são clonados corretamente nesses espelhos. No entanto, você pode alterar manualmente o local do espelho para corrigir este problema.

Para alterar o servidor de download, inicie o aplicativo "Software & Atualizações" do lançador de aplicativos. Na guia "Ubuntu Software", a seleção da lista suspensa "Download From" está quase garantida para corrigir qualquer problema de disponibilidade de pacotes. No entanto, a velocidade de download pode ser baixa, dependendo da sua localização e da proximidade dos servidores. Por padrão, o Ubuntu seleciona um servidor que fornecerá velocidade máxima com base no seu local atual. Você pode substituí -lo escolhendo qualquer servidor listado ou clicando em "Selecionar melhor servidor" para deixar a escolha no Ubuntu.

Atualizar pacotes

A atualização de pacotes instalados pode corrigir erros de dependência. Existem dois comandos disponíveis para atualizar pacotes do Ubuntu, ambos com comportamentos diferentes:

  • “Atualização”: atualizações instaladas, se houver atualizações disponíveis, não remove nenhum pacote, mesmo que haja dependências não atendidas e quebradas
  • “Dist-upgrade”: faz tentativas de atualizar de maneira inteligente e resolver dependências, remove e instala novas dependências sempre que necessário para corrigir erros

Os comandos para atualizar e upgrade distantes, respectivamente, são:

$ sudo apt update
$ sudo apt dist upgrade

Limpe pacotes em cache e residual

O gerenciador de pacotes do Ubuntu "apt" mantém os pacotes baixados em uma pasta de cache. Da próxima vez que você precisar reinstalar um pacote que já foi armazenado em cache, o Ubuntu receberá o pacote Deb da pasta de cache, em vez de fazer o download novamente do servidor. A limpeza deste cache limpa o espaço do disco e também ajuda a corrigir erros de dependência e instalação em alguns casos.

O cache do pacote da APT pode ser limpo executando o comando abaixo:

$ sudo apt limpo

Existe outro comando APT "Autoclean" que limpa o cache do pacote. No entanto, em vez de limpar a pasta inteira, ele remove apenas pacotes que foram removidos dos servidores repositórios.

$ sudo apt autoclean

Faça uma instalação simulada

É possível simular a instalação de um pacote para verificar quaisquer erros em potencial que ocorram durante a instalação real. Execute o comando abaixo enquanto substitui o “nome do pacote” pelo nome desejado do pacote (sem cotações) para fazer uma instalação simulada.

$ sudo apt install-"nome do pacote" que sepulou

Uma remoção simulada pode ser feita da mesma maneira:

$ sudo apt Remove-Nome do pacote de pacote de seco

Corrija pacotes quebrados

É possível ter pacotes quebrados e dependências não atendidas, especialmente quando você está instalando vários pacotes de uma só vez. O comando abaixo fará uma tentativa de corrigir esses problemas, instalando e reparando dependências quebradas ou removendo um pacote que é responsável por conflitos de dependência.

$ sudo apt -f install

Configurar pacotes falhou em instalar devido a interrupções

Às vezes, o gerente de pacotes apt para deixando abruptamente deixando para trás pacotes que não foram configurados. Essas interrupções geralmente são devido a fatores fora do controle do gerente de pacotes apt. Por exemplo, se você fechou acidentalmente o terminal ou seu PC desligar de repente, o APT não poderá terminar a configuração. Executar o comando abaixo corrigirá erros de pacote e problemas de dependência decorrentes deste problema.

$ sudo dpkg -configure -a

Use PPA-Purge

Um "arquivo de pacote pessoal" ou um PPA é um repositório de software que permite que os usuários do Ubuntu atualizem ou instalem novos pacotes de fontes não oficiais. PPA-Purge é uma ferramenta que remove essas fontes e rebaixamentos de PPA de terceiros instalados de PPAs para versões de estoque. O uso do PPA-Purge resolverá quaisquer conflitos de dependência decorrentes de pacotes instalados ou atualizados a partir do PPA. Para instalar o aplicativo de linha de comando PPA-Purge no Ubuntu, execute o seguinte comando:

$ sudo apt install ppa-purge

Para purgar um PPA, execute o comando no seguinte formato:

$ sudo ppa-purge “ppa: endereço”

Por exemplo, o Geany Text Editor PPA adicionado daqui pode ser expulso pelo comando executando:

$ sudo ppa-purge ppa: geany-dev/ppa

Use Aptitude Package Manager

O gerenciador de pacotes de aptidão pode ser usado em vez do gerenciador de pacotes APT padrão no Ubuntu para resolver erros de dependência. Aptitude é mais recente que o APT Package Manager e oferece opções extras, um front -end baseado em terminal e facilidade de uso geral. Aptitude combina muitas opções adequadas em um único comando para que você não precise executar vários comandos para corrigir erros.

Por exemplo, o uso do gerenciador de pacotes de aptidão para remover até um único pacote obterá uma opção para remover pacotes não utilizados e restantes, enquanto existe um comando separado para fazer o mesmo. A aptidão é muito mais inteligente na resolução de conflitos de dependência do que o APT, geralmente fornece feedback detalhado para resolver conflitos, com várias opções que podem ser selecionadas pelo usuário. Eu sempre garanto que a aptidão e o purgo de PPA estão instalados no meu sistema antes de obter pacotes altamente experimentais.

Aptitude pode ser instalada executando o comando abaixo:

$ sudo apt install aptitude

Aptidão e Apt compartilham muitas opções de linha de comando com aptidão com algumas diferenças. Você pode explorar todas as opções de aptidão daqui.

Reinstale o pacote de desktop ubuntu

A reinstalação do pacote "Ubuntu-Desktop" atrairá pacotes essenciais que foram instalados por padrão no Ubuntu. Ele receberá todos os pacotes que dependem do pacote ubuntu-desktop. Para reinstalar o Ubuntu-Desktop, execute o comando abaixo:

$ sudo apt install --reinstall ubuntu-desktop

Observe que o comando acima instalará apenas pacotes essenciais e não aplicativos como Firefox, Thunderbird, Video Player etc.

Remova ou desative os PPAs antes de atualizar para uma versão mais recente do Ubuntu

Embora o Ubuntu desative qualquer PPAS antes de fazer uma atualização do sistema, para evitar erros de dependência não atendidos durante e após uma atualização do sistema, você deve remover manualmente qualquer PPAS de terceiros. A melhor maneira de fazer isso é executar o comando ppa-purge explicado acima.

Você também pode remover apenas os repositórios de PPA. No entanto, isso pode não impedir erros de dependência durante a atualização. Os PPAs podem ser removidos por duas maneiras, a primeira envolve o uso da linha de comando e a segunda exige o uso de um aplicativo GUI. Observe que esses métodos removerão apenas repositórios de PPA, deixando para trás quaisquer pacotes atualizados ou instalados no sistema.

Para remover um PPA usando a linha de comando, execute o comando abaixo no seguinte formato:

$ sudo add-aprop-repository--reove "ppa: nome"

Por exemplo, o editor de texto Geany PPA adicionado daqui pode ser removido executando o comando:

$ sudo add-aprop-repositor-remove ppa: geany-dev/ppa

Para remover um PPA usando o método GUI, geralmente você precisa iniciar o aplicativo "Software & Atualizações" do lançador de aplicativos. No entanto, devido a um bug no Ubuntu, esse método nem sempre funciona e não consegue desativar os PPAs.

Para contornar isso, temos que instalar o Synaptic Package Manager, que é um front -end para o APT. Para instalar o comando sináptico, execute:

$ sudo apt install sináptico

Inicie o “Synaptic Package Manager” do lançador de aplicativos. Clique em "Configurações"> "Repositórios". Vá para a guia "Outro software" e clique em um PPA que você deseja remover para destacá -lo. Clique no botão "Remover" na parte inferior para remover o PPA do sistema. Você também pode desativar um PPA sem removê-lo para que ele possa ser reativado após a atualização do sistema. Para fazer isso, desmarque a caixa de seleção na frente de um PPA. Depois de seguir as etapas acima, feche a janela "Software e atualizações". Quando solicitado a atualizar os repositórios, clique no botão "Recarregar".

Seja cauteloso ao adicionar novos PPAs ao sistema

A maioria dos erros de dependência do Times surgem ao usar PPAs de terceiros ou instalar pacotes Deb de fontes não oficiais. Há também uma chance de malware entrar no seu sistema através de um PPA. Portanto, você deve sempre ter cuidado ao adicionar qualquer PPA aleatório ao seu sistema. Adicione apenas um PPA se você confiar na sua fonte e mantenedores / desenvolvedores. Embora não tenhamos ouvido falar de malware ou adware distribuídos por PPAs até agora, sempre há um risco, pois são repositórios de terceiros que possuem pacotes não verificados pelos desenvolvedores do Ubuntu.

Conclusão

Estes são alguns métodos que podem ser usados ​​para corrigir e impedir erros de dependência no Ubuntu. As coisas tendem a quebrar, especialmente ao usar o Ubuntu como seu principal ambiente de desenvolvimento com toneladas de aplicativos de terceiros e ferramentas de linha de comando. No entanto, a maioria desses erros de dependência pode ser minimizada com a instalação de aplicativos de fontes oficiais, de renome e confiáveis.