Ubuntu

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

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

Se você vir palavras como “dependências não atendidas”, “pacotes quebrados”, “pacotes foram mantidos” 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.

Pacotes de atualização

A primeira coisa a fazer em caso de erros é executar o comando de atualização. Ele irá atualizar todos os repositórios oficiais e de terceiros que você adicionou ao seu sistema e puxar uma nova lista de pacotes. Executar o comando de atualização a partir do terminal ignora a distribuição em fases dos pacotes oficiais do Ubuntu por meio do atualizador GUI, para que você sempre obtenha a lista mais recente de pacotes.

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

$ sudo apt update

Alterar servidor de download de pacote

Se você receber erros “não foi possível localizar o pacote” ao executar o comando de atualização acima, tente alterar os espelhos de download. Os pacotes do Ubuntu são servidos aos usuários finais a partir de servidores localizados em todo o mundo. Às vezes, apenas atualizações de pacotes parciais ou quebradas estão disponíveis nesses servidores, resultando em erros durante a atualização. Este 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 esse problema.

Para alterar o servidor de download, inicie o aplicativo “Software & Updates” no inicializador de aplicativos. Na guia “Software Ubuntu”, selecionar “Servidor principal” na lista suspensa “Baixar de” quase certamente corrigirá quaisquer problemas de disponibilidade de pacote. No entanto, a velocidade de download pode ser baixa dependendo da sua localização e proximidade dos servidores. O Ubuntu, por padrão, seleciona um servidor que lhe dará a velocidade máxima com base em sua localização atual. Você pode substituí-lo escolhendo qualquer servidor listado ou clicando em “Selecionar o melhor servidor” para deixar a escolha no Ubuntu.

Pacotes de atualização

Atualizar pacotes instalados pode corrigir erros de dependência. Existem dois comandos disponíveis para atualizar os pacotes do Ubuntu, ambos com comportamentos diferentes:

Os comandos para upgrade e dist-upgrade respectivamente são:

$ sudo apt update
$ sudo apt dist-upgrade

Limpe os pacotes em cache e residuais

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 obterá o pacote deb da pasta de cache em vez de baixá-lo novamente do servidor. A limpeza desse cache libera espaço em disco e também ajuda a corrigir dependências e erros de instalação em alguns casos.

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

$ sudo apt clean

Há outro comando apt “autoclean” que limpa o cache do pacote. No entanto, em vez de limpar a pasta inteira, ele remove apenas os pacotes que foram removidos dos servidores de repositório.

$ sudo apt autoclean

Faça uma instalação simulada

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

$ sudo apt install --dry-run “nome do pacote”

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

$ sudo apt remove --dry-run “nome do pacote”

Consertar Pacotes Quebrados

É possível ter pacotes quebrados e dependências não atendidas, especialmente quando você está instalando vários pacotes de uma vez. O comando abaixo tentará corrigir estes problemas instalando e reparando dependências quebradas ou removendo um pacote que é responsável pelo conflito de dependências.

$ sudo apt -f install

Configurar pacotes com falha de instalação devido a interrupções

Às vezes, o gerenciador de pacotes apt pára abruptamente de deixar para trás pacotes que não foram configurados. Essas interrupções são geralmente devido a fatores fora de controle do gerenciador de pacotes apt. Por exemplo, se você acidentalmente fechou o terminal ou seu PC desligou repentinamente, o apt não será capaz de 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 Pacotes Pessoais” ou um PPA é um repositório de software que permite aos usuários do Ubuntu atualizar ou instalar novos pacotes de fontes não oficiais. PPA-Purge é uma ferramenta que remove essas fontes de PPA de terceiros e faz o downgrade de pacotes instalados de PPAs para versões de estoque. Usar o PPA-Purge resolverá quaisquer conflitos de dependência decorrentes de pacotes instalados ou atualizados do PPA. Para instalar o aplicativo de linha de comando PPA-Purge no Ubuntu, execute o seguinte comando:

$ sudo apt install ppa-purge

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

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

Por exemplo, o editor de texto Geany PPA adicionado de aqui pode ser eliminado executando o comando:

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

Use o Gerenciador de Pacotes Aptitude

O gerenciador de pacotes aptitude pode ser usado em vez do gerenciador de pacotes apt padrão no Ubuntu para resolver erros de dependência. Aptitude é mais novo que o gerenciador de pacotes apt e oferece opções extras, uma interface baseada em terminal e facilidade de uso geral. O Aptitude combina várias opções do apt em um único comando para que você não precise executar vários comandos para corrigir erros.

Por exemplo, usar o gerenciador de pacotes aptitude para remover até mesmo um único pacote lhe dará a opção de remover pacotes não usados ​​e restantes, enquanto há um comando separado no apt para fazer o mesmo. O Aptitude é 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 asseguro que o aptitude e PPA-Purge estão instalados no meu sistema antes de obter qualquer pacote altamente experimental.

O Aptitude pode ser instalado executando o comando abaixo:

$ sudo apt install aptitude

Aptitude e apt compartilham muitas opções de linha de comando com aptitude tendo algumas diferenças. Você pode explorar todas as opções de aptidão de aqui.

Reinstale o pacote Ubuntu Desktop

Reinstalar o pacote “ubuntu-desktop” irá puxar em pacotes essenciais que foram instalados por padrão no Ubuntu. Irá obter todos os pacotes que dependem do meta 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 básicos essenciais e não aplicativos como Firefox, Thunderbird, reprodutor de vídeo, etc.

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

Mesmo que o Ubuntu desative quaisquer 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 quaisquer PPAs de terceiros. A melhor maneira de fazer isso é executar o comando PPA-Purge explicado acima.

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

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

$ sudo add-apt-repository --remove “ppa: nome”

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

$ sudo add-apt-repository --remove ppa: geany-dev / ppa

Para remover um PPA usando o método GUI, geralmente você precisa iniciar o aplicativo “Software e atualizações” no inicializador de aplicativos. No entanto, devido a um bug no Ubuntu, este método nem sempre funciona e falha em desabilitar os PPAs.

Para contornar isso, temos que instalar o gerenciador de pacotes Synaptic, que é um frontend para o apt. Para instalar o Synaptic, execute o comando:

$ sudo apt install synaptic

Abra o “Synaptic Package Manager” do inicializador 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 possa ser reativado após a atualização do sistema. Para fazer isso, basta desmarcar 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

Na maioria das vezes, surgem erros de dependência ao usar PPAs de terceiros ou instalar pacotes deb de fontes não oficiais. Também existe a chance de um malware entrar em seu sistema por meio de um PPA. Portanto, você deve sempre ter cuidado ao adicionar qualquer PPA aleatório ao seu sistema. Apenas adicione um PPA se você confiar em sua fonte e mantenedores / desenvolvedores. Mesmo que não tenhamos ouvido falar de malware ou adware distribuído por meio de PPAs até agora, sempre há um risco, pois esses são repositórios de terceiros com pacotes não verificados pelos desenvolvedores do Ubuntu.

Conclusão

Estes são alguns métodos que podem ser usados ​​para corrigir e prevenir erros de dependência no Ubuntu. As coisas tendem a quebrar, especialmente ao usar o Ubuntu como seu ambiente de desenvolvimento principal 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.

Instale o último jogo de estratégia OpenRA no Ubuntu Linux
OpenRA é um motor de jogo de estratégia em tempo real Libre / Free que recria os primeiros jogos Westwood como o clássico Command & Conquer: Red Alert...
Instale o emulador Dolphin mais recente para Gamecube e Wii no Linux
O Dolphin Emulator permite que você jogue seus jogos de Gamecube e Wii escolhidos em computadores pessoais Linux (PC). Sendo um emulador de jogo disp...
Como usar o GameConqueror Cheat Engine no Linux
O artigo cobre um guia sobre como usar o mecanismo de cheat GameConqueror no Linux. Muitos usuários que jogam no Windows costumam usar o aplicativo “C...