dpkg: erreur: la base de données d'état de dpkg est verrouillée par un autre processus

49

Je me demandais si quelqu'un pouvait me dire ce que cela signifie:

E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.
[email protected]:~$ sudo dpkg --configure -a
dpkg: error: dpkg status database is locked by another process
[email protected]:~$ 

Comment exécuter sudo dpkg --configure -a manuellement?

    
posée reidar 20.11.2012 - 00:47
la source

5 réponses

62

Première exécution:

lsof /var/lib/dpkg/lock

Assurez-vous ensuite que ce processus n'est pas en cours d'exécution:

ps cax | grep PID

S'il est en cours d'exécution:

kill PID
#wait
kill -9 PID

Assurez-vous que le processus est terminé:

ps cax | grep PID

Supprimez ensuite le fichier de verrouillage:

sudo rm /var/lib/dpkg/lock

Laissez dpkg corriger lui-même:

sudo dpkg --configure -a

Vous devriez aller bien après:)

    
réponse donnée helper 06.05.2013 - 18:02
la source
6

Vous ne pouvez pas exécuter plusieurs packages applications / commandes / outils en même temps. Parfois, cela signifie que synaptic, apt-get ou l’outil de mise à jour des paquets sont en cours d’exécution. Fermez simplement les autres outils du package ou attendez qu'ils soient terminés. Et dpkg fonctionnera.

    
réponse donnée ttoine 15.03.2013 - 14:42
la source
4

On pourrait aussi essayer:

sudo apt-get install -f

Pour réparer tout paquet défectueux:

  

Correction; tenter de corriger un système avec des dépendances cassées en place.   Cette option, lorsqu'elle est utilisée avec install / remove, peut omettre              packages permettant à APT de déduire une solution probable. Si des packages sont spécifiés, ils doivent corriger complètement le problème.   le              L'option est parfois nécessaire lors de la première utilisation d'APT. APT lui-même n'autorise pas les dépendances de paquetages cassés à   exister              sur un système. Il est possible que la structure de dépendance d’un système soit si corrompue qu’elle nécessite une intervention manuelle (qui              signifie généralement en utilisant dselect(1) ou dpkg --remove pour éliminer certains des paquets incriminés). Utiliser cette option ensemble   avec M              peut produire une erreur dans certaines situations. Élément de configuration: APT :: Get :: Fix-Broken.

    
réponse donnée blade19899 20.12.2013 - 22:37
la source
0

Cela peut se produire si le processus de mise à niveau a été interrompu (comme si vous aviez perdu votre connexion). Vous pouvez essayer d'utiliser l'écran en tant que root ( sudo su ) pour revenir dans la session.

screen -r
    
réponse donnée Xeoncross 24.01.2018 - 23:28
la source
0

Ce qui suit devrait vous aider:

sudo rm /var/lib/dpkg/lock

sudo dpkg --configure -a
    
réponse donnée Deepak Singhvi 10.08.2018 - 15:40
la source

Lire d'autres questions sur les étiquettes