Erro “não foi possível obter trava /var/lib/dpkg/lock-frontend”
Como corrigir o erro não foi possível obter trava /var/lib/dpkg/lock-frontend
Em uma aula de Linux, recentemente, um aluno estava tentando fazer a atualização de pacotes no sistema (era o Ubuntu Linux 18.04), e se deparou com seguinte mensagem de erro ao tentar realizar o procedimento:
“não foi possível obter trava /var/lib/dpkg/lock-frontend”
Por mais que ele tentasse repetir a operação, a mensagem persistia. Então, ele me chamou e perguntou do que se tratava.
Este é um erro comum em distribuições baseadas no Debian, como o Ubuntu, Mint e outras, ocasionado por vários problemas diferentes, mas que pode ser corrigido de forma simples.
A causa mais comum desse erro é que algum processo está usando a ferramenta de gerenciamento de pacotes apt no momento (apt / apt-get). Por exemplo, a Central de Software do Ubuntu ou o Synaptic podem estar executando alguma tarefa de atualização do sistema.
Podemos descobrir qual processo está travando o apt executando o comando seguinte:
$ ps aux | grep -i apt
Se houver algum processo listado, você pode matá-lo com o comando kill, conforme a sintaxe a seguir:
$ sudo kill -9 id_processo
Nem sempre isso funcionará. Algumas vezes não há, aparentemente, nenhum processo em execução relacionado ao apt, mas ainda assim você será brindado com a mensagem de erro anterior.
Neste caso, o que pode estar acontecendo é um problema com arquivos de trava (“lock files”), que são arquivos usados para impedir que dois ou mais processos distintos usem os mesmos dados, simultaneamente. Quando o apt (ou outro comando relacionado) é executado, ele cria arquivos de trava no sistema. Se, por algum motivo, o apt não for encerrado corretamente – por exemplo, foi interrompido durante uma atualização – os arquivos de trava não são excluídos e permanecem no sistema, realizando seu trabalho, que é o de impedir que outras instâncias do apt sejam executadas.
Neste caso, vamos proceder de forma diferente para resolver o problema – vamos simplesmente remover os arquivos de trava.
Para isso, execute os comandos a seguir no terminal do Linux:
$ sudo rm /var/lib/apt/lists/lock $ sudo rm /var/lib/dpkg/lock $ sudo rm /var/lib/dpkg/lock-frontend $ sudo rm /var/cache/apt/archives/lock
Reconfigure os pacotes na sequência:
$ sudo dpkg --configure -a
Logo após, o sistema apt deve estar novamente liberado, e você será capaz de executar suas tarefas normalmente, como atualizar listas de repositórios, atualizar programas e instalar ou excluir pacotes do sistema.
Muito bom Fábio, salvou minha vida hoje, eu estava com esse erro no sistema e não sabia mais o que fazer para conseguir instalar pacotes no linux ubuntu
Valeu Márcio, fico feliz que tenha ajudado! Abraço!
Mano, esse cara é muito bom…
Deu certinho e não faço ideia do que aconteceu
Uso o Debian 10 e a segunda opção funcionou para mim, excluindo os arquivos lock e reconfigurando o dpkg.
Muito obrigado, estava enlouquecendo por causa deste erro. Como sempre, você salvando os novos usuários
Uso o linux mint, segui os comando conforme porém não obtive êxito:/
Muito obrigado, resolveu meu problema
Muito obrigado, ajudou muito
grep -i apt.
A Partir desse comando o terminal para e fica um tempão. Não estou conseguindo resolver.
Me ajudem.
Conseguiu resolver?
Estou com o mesmo problema…
Obrigado pela ajuda.Foi o único que explicou direito e resolveu.
Muito bom! Aqui resolveu.Obrigado
obrigado me salvou
Excelente. Funcionou aqui. Obrigado!
Logo na primeira dica resolveu meu problema.
Muito obrigado.
Oi professor tudo bem, eu tava tentado resolver o problema pela a segunda solução que senhor passou mas acho que só piorou a meu caso poderia pf atualizar esse artigo obrigado.
E: Não foi possível abrir arquivo de trava /var/lib/apt/lists/lock – open (13: Permissão negada)
E: Impossível criar acesso exclusivo ao directório /var/lib/apt/lists/
W: Problema ao remover o link do ficheiro /var/cache/apt/pkgcache.bin – RemoveCaches (13: Permissão negada)
W: Problema ao remover o link do ficheiro /var/cache/apt/srcpkgcache.bin – RemoveCaches (13: Permissão negada)
Agradeço a orientação. Meu problema foi facilmente resolvido.
Salvou a minha vida! 🙂
Top!!!!
Obrigado pela dica, me ajudou muito.
Fiz tudo e não resolveu nada! (Linux Mint 19.3)
Eu havia mandado uma mensagem anterior achando que não tinha resolvido, mas me enganei, resolveu sim!! Obrigado!!
Valeu Renato!
Aqui no Ubuntu 20.04 Mate funcionou perfeitamente a segunda opção. Muito obrigada.
comprei o computador recentemente e não conseguia usar os aplicativos e nem instalar nada pois tinham muitos pacotes quebrados, realizei a segunda opção e ao invés de corrigir como instruído (pq não consegui) dei $ sudo apt update
e depois
$ sudo apt upgrade
e consegui atualizar todos os pacotes que antes não atualizavam por erro, muito obrigada
testei no RASPBIAN OS, funcionou perfeitamente……
Olá! Gostaria de saber onde posso estudar esses comandos e o que eles significam e fazem o Sistema… no meu caso esses comandos funcionaram, só que tenho medo do que estou fazendo no meu Linux, é um comando perigoso? ou talvez esse problema de trava é algo grave e tal.. alguém pode me dar um help??
Agora estou com outro problema… está aparecendo a mensagem >
The Following packages have unmet dependencies
Finalmente, depois de meses consegui fazer a atualização dos pacotes e graças a esse artigo. Obrigado Fábio.
Excelente Ronnei, eu que agradeço!
Apagar /var/lib/dpkg pode ser uma forma de resolver este problema, mas certamente trará problemas futuros na sua distro quando precisar atualizar pacotes do sistema. Eu a deixaria como última e remota opção.