“Debconf: DbDriver” config “: config.dat está bloqueado por outro processo: Recurso temporariamente indisponível” ao instalar pacotes

93

Estou tentando instalar o flashybridmas quando eu digito o apt-get install flashybridcomando, recebo este erro:

root@user-desktop:/home/user# apt-get install flashybrid
Reading package lists... Done
Building dependency tree
Reading state information... Done
flashybrid is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0B of additional disk space will be used.
debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable
Setting up flashybrid (0.15+nmu2) ...
debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable
dpkg: error processing flashybrid (--configure):
subprocess post-installation script returned error exit status 1
Errors were encountered while processing:
flashybrid
E: Sub-process /usr/bin/dpkg returned an error code (1)

Eu também tentei este para encontrar o que já está usando esse arquivo:

root@user-desktop:/home/user# lsof | grep /var/cache/debconf/config.dat
lsof: WARNING: can't stat() fuse.gvfs-fuse-daemon file system /home/user/.gvfs
Output information may be incomplete.
dpkg-prec 4672 root 4rW REG 8,6 39658 1697827 /var/cache/debconf/config.dat

Mas não sei como consertar isso.

Dimitris7
fonte

Respostas:

110

Este é um comando mais simples

Eu apenas fiz:

sudo rm /var/cache/debconf/*.dat 

Depois de executar o apt-get installe (eu estava instalando o curl) e ele funcionou, restaurou as páginas de manual do db.

PS: Eu removi algo com o apt-get e tive esse problema. mas resolvi simplesmente agradeço também a @rajagenupula

ucefkh
fonte
Eu useisudo \rm -v /var/cache/debconf/*.dat
Mark Stewart
17
Não faça isso ... você pode quebrar seu sistema. A resposta correta é usar o fusor e interromper o processo, como na resposta de Sayed abaixo.
Ryan P
8
Hum, não apague isso. Apenas mate o processo que abriu o arquivo.
jorfus
4
Isso pode ser uma coisa muito perigosa de se fazer. Por favor, veja a resposta abaixo
BlackDivine
1
No meu caso, não havia processo em execução; portanto, essa foi a única solução que funcionou.
MacroMan 17/08/18
106

Uma solução para esse problema de bloqueio está detalhada no wiki :

sudo fuser -v /var/cache/debconf/config.dat

Irá mostrar qual processo está mantendo o bloqueio:

                     USER        PID ACCESS COMMAND
/var/cache/debconf/config.dat:
                     root      18210 F.... dpkg-preconfigu

Depois, basta anotar o PID e matá-lo da seguinte forma:

sudo kill PID
sudo kill -9 PID  # if the first doesn't work
Sayed Jalil Hassan
fonte
1
Isso funcionou fantástico! Muito obrigado, eu não sabia do 'fusor'!
stolsvik
1
O fusor também tem a opção de opção -kque mata o processo encontrado que usa o arquivo: sudo fuser -v -k /var/cache/debconf/config.datmata o processo imediatamente
minni
1
Isso deve ser selecionado como a melhor resposta.
Arda
Trabalhou para mim quando uma atualização do Debian do Stretch para o Buster acidentalmente foi realizada.
Adambean 19/07
15
  1. abra seu terminal
  2. abra a localização /var/cache/debconfcomgksu nautilus
  3. mova (recorte / cole) todos os arquivos .dat para outro diretório de backup.
  4. tente executar novamente (provavelmente ocorrerá um erro diferente)
  5. restaure esses arquivos dat a partir do diretório de backup mencionado acima.
  6. Em seguida, tente novamente o que estava fazendo (deve funcionar desta vez).
rɑːdʒɑ
fonte
1
Eu tive um problema semelhante e acabei de excluir todos os arquivos na pasta debconf.
Agmenor
Eu disse lá no ponto 3. um arquivo com senha e com extensão. ok agora o que você está recebendo. você pode publicá-los aqui pelo link pastebin.
21712
mesmo problema, eu precisava para remover todos os arquivos em debconf pasta
equivalent8
Eu ainda estou recebendo o debconf erro: apt-extracttemplates falhou: Nenhum tal lima ou diretório apt-extracttemplates falhou
1
Eu estava ficando muito bravo, vi sua resposta e de repente há progresso. Obrigado.
David Carboni
7
sudo fuser -vik /var/cache/debconf/config.dat

Irá exibir o processo e perguntar se você deseja finalizá-lo.

coderPatros
fonte
obrigado sua ajuda me ..: D
Budi Mulyo
0

Ainda existe um processo executando o bloqueio do debconf. Você deve esperar até terminar . Ou descubra como ficou travado, pois em alguns casos tentará fazer uma pergunta, mas como você não tem escopo para vê-la. Se você esperar um pouco e as coisas não mudarem, talvez seja necessário reiniciar o sistema ou encerrar o processo.

sudo kill 4672

ou

sudo killall dpkg-prec

Isso garantirá que seu banco de dados não seja danificado e evitará problemas adicionais.

Braiam
fonte
3
Eu acho que é inútil usar a identificação de processo 4672 no seu primeiro exemplo de comando. Alguém pode usar esse comando como está, mas não funcionará, pois ele provavelmente teria um ID de processo diferente.
user205301
@ user205301 é isso que o segundo é para;)
Braiam