Ubuntu e Debian ambos usam pacotes para adicionar às capacidades do sistema, permitindo que os usuários façam mais com suas máquinas. No entanto, por melhor que este sistema de pacotes seja, as coisas ainda podem quebrar. Quer seja uma má instalação, uma má configuração, ou se algo modificou os arquivos externamente após a instalação, os pacotes podem às vezes dar errado e não funcionar mais, tornando-os ‘quebrados’. Isto também pode afetar o apt-get, o gerenciador de pacotes embutido, o que pode fazer com que você não consiga instalar nenhum pacote adicional, atualizando-os, ou até mesmo removendo qualquer um deles.
Neste tutorial, nós iremos rever vários métodos para corrigir seus pacotes quebrados tanto no Ubuntu 16.04 quanto no Debian 9. Como este problema pode acontecer devido a várias razões, existem várias soluções, algumas das quais podem ou não funcionar na sua máquina. Portanto, é melhor ver qual pacote específico quebrou e por quê, o que o ajudará a decidir qual método seguir primeiro.
Table of Contents
Método 1: Usando apt-get
Mais frequentemente do que não, um pacote quebrado que quebrou após ter sido instalado pode ser relativamente fácil de consertar, graças a uma ferramenta embutida dentro do apt-get. Executando os seguintes comandos irá tentar corrigir quaisquer pacotes quebrados atualmente instalados em seu sistema:
sudo apt-get update --fix-missing
sudo apt-get install -f
(a opção -f é a abreviação de fix-broken.)
Try e veja se o primeiro comando corrige seu problema antes de executar o segundo comando. Dê-lhe alguns momentos para tentar corrigir quaisquer erros que possa encontrar. Se ele funcionar, então tente usar o pacote que foi quebrado – provavelmente ele será corrigido agora. Caso ainda não tenha sido corrigido, prossiga para a próxima solução abaixo.
Método 2: Usando dpkg e apt-get
Esta solução irá ajudar se um pacote de software quebrou enquanto estava sendo instalado. Você pode tentar usar o método anterior antes de continuar, pois ele pode ajudar. Primeiro, limpamos o apt-get e tentamos usar o dpkg para configurar qualquer pacote que precise:
sudo dpkg --configure -asudo apt-get cleansudo apt-get update
Após isso, veja se o pacote foi corrigido. Se não foi, você pode precisar deletar os arquivos de bloqueio. Os arquivos de bloqueio são usados para manter recursos disponíveis para certos programas – isso ajuda a evitar que outros programas acessem os arquivos ao mesmo tempo. Isto pode ser feito simplesmente apagando a lista de arquivos de bloqueio:
sudo rm /var/lib/apt/lists/lock
Após isto, tente executar os comandos acima mais uma vez. A partir daí, tente reinstalar o pacote para ver se ele agora pode ser instalado com sucesso.
Método 3: Usando o dpkg para remoção forçada
Ás vezes, em raras ocasiões, os comandos acima não funcionarão, e um pacote quebrado não poderá ser corrigido. Neste caso, você precisará remover o pacote manualmente e com força. Este método requer que você já saiba qual pacote está quebrado.
Você pode primeiro tentar remover o pacote problemático normalmente através do apt-get digitando o seguinte comando:
sudo apt-get remove
Provavelmente não terá sucesso, mas vale a pena tentar antes de removê-lo com força.
Dependente dos erros que você obtiver ao tentar remover o pacote normalmente, você poderá ser capaz de identificar o pacote quebrado usando dpkg e grep:
dpkg -l | grep ^..r
Este comando lista todos os pacotes, então o grep lista quaisquer resultados contendo o sinalizador ‘r’ no terceiro campo, que significa “reinstrequired” (reinstalar obrigatório). Se o pacote quebrado aparecer, você será capaz de removê-lo.
Execute o seguinte comando para forçar a remoção do pacote de sua máquina. Não se esqueça de introduzir a sua password para autorizar a eliminação. Substitua pelo nome do pacote quebrado.
sudo dpkg --remove --force-remove-reinstreq
Embora isso seja feito, limpe e atualize o apt-get:
sudo apt-get cleansudo apt-get update
Depois disso, tente instalar o pacote do zero. Ele deve instalar normalmente agora.
Outras Soluções
Estes métodos são as melhores maneiras de corrigir ou remover um pacote quebrado do seu sistema – mas, às vezes, não será suficiente. Em casos raros, o sistema não verá o pacote quebrado, mas ainda assim impedirá o seu apt-get de funcionar normalmente. Nesses casos, a melhor solução normalmente é ir e excluir arquivos manualmente. No entanto, o processo para excluir esses arquivos varia de pacote para pacote, e pode ser arriscado. Portanto, tente estas soluções primeiro antes de tentar apagar ficheiros do seu sistema.
Se seguir estes métodos, terá corrigido ou removido com sucesso quaisquer pacotes quebrados encontrados no seu sistema. Claro, você não precisa consertar pacotes quebrados se você usar um de nossos serviços Managed Linux VPS, neste caso você pode simplesmente pedir aos nossos especialistas administradores Linux para fazer isso por você. Eles estão disponíveis 24 horas por dia, 7 dias por semana, e irão ajudá-lo a consertar seus pacotes quebrados imediatamente.