Vyřešit stavovou databázi dpkg je uzamčen jiným procesem

Resolve Dpkg Status Database Is Locked Another Process



Tento tutoriál vysvětluje, jak chybu opravit Databáze stavu dpkg je uzamčena jiným procesem v distribucích Linuxu založených na Debianu.

Tato chyba obvykle znamená správce balíčků je používán jiným procesem, pravděpodobně uvízl. Chyba může vrátit výstup jako







Databáze stavu dpkg je uzamčena jiným procesem

Ale stejná příčina může generovat různé chybové zprávy, jak je znázorněno na obrázku níže.



dpkg: chyba: dpkg frontend lock je uzamčen jiným procesem



Další příznaky stejné příčiny mohou zahrnovat následující zprávu.





Čekání na zámek mezipaměti: Nelze získat zámek/var/lib/dpkg/lock-frontend. Je držen procesem 2839 (apt) ... 30 s

Nebo je chyba zobrazena níže.



E: Nelze získat zámek/var/lib/dpkg/lock -frontend - otevřeno (11: Zdroj dočasně nedostupný)
E: Nelze získat zámek dpkg frontend (/var/lib/dpkg/lock-frontend), používá jej jiný proces?

Ve většině případů předchozí příklady hlásí, že již instalujete, upgradujete nebo odebíráte balíčky. V některých případech může správu softwaru spravovat více správců prostřednictvím správce balíčků nebo může proces zablokovat aplikaci (dpkg) a problém vyřeší zabití tohoto postupu, jak je vysvětleno níže.

Poznámka: Vždy nezapomeňte použít dpkg a výstižný s sudo .

Jak opravit dpkg nebo apt uzamčené nebo dočasně nedostupné:

Musíte identifikovat proces zabírající dpkg nebo vhodný k jeho zabití. K identifikaci procesu můžete použít níže uvedený příkaz.

sudo lsof/var/lib/dpkg/lock

Jak vidíte, ID procesu (PID) je 16386 . Chcete -li to zabít, spusťte níže uvedený příkaz a nahraďte jej 16386 pro skutečný PID pomocí správce balíčků.

sudo kill -9 16386

Můžete také spustit níže uvedený příkaz k identifikaci čísla PID.

sudo lsof/var/cache/apt/archives/lock

Poté spusťte:

sudo dpkg --configure -a

Dalším způsobem, jak identifikovat proces PID a vytisknout informace o jeho použití, je použití ps příkaz s grep, jak je uvedeno níže.

ps do | grep apt

Oprava dalších chyb dpkg a apt

V této části najdete několik kombinací příkazů k vyřešení několika problémů s apt a dpkg.

První příkaz, který byste měli spustit před problémy, je výstižná aktualizace, Jak je ukázáno níže. Tento příkaz aktualizuje vhodná úložiště.

sudo apt-get update

Dříve používané dpkg –configure -a příkaz se používá k opravě problémů se závislostí.

sudo dpkg --configure -a

Níže uvedený příkaz lze také použít k vyřešení problémů se závislostí.

sudo apt -get -f install

Chcete -li vyčistit zbytečné závislosti, můžete spustit:

sudo apt-get clean

O správcích balíčků Debianu

Mezi dostupné správce balíčků Debianu patří dpkg, výstižný , apt-get , nadání , synaptický, a dpkg-deb .

  • dpkg: Dpkg je hlavní správce balíčků pro Debian a jeho distribuce.
  • výstižné: je frontend pro dpkg schopný načítat balíčky a řešit závislosti.
  • nadání: Interaktivní frontend pro apt.
  • Synaptika: Správce grafických balíků.
  • dpkg-deb: Další příkaz k instalaci balíčků .deb.

Další informace o všech správcích balíčků Debianu najdete na https://www.debian.org/doc/manuals/debian-faq/pkgtools.cs.html#pkgprogs

Závěr

Jak vidíte, oprava problémů s dpkg nebo apt je docela snadná a většina chyb má známé příčiny. Výše vysvětlené příkazy mohou opravit téměř všechny problémy související s poškozenými balíky nebo přerušenými procedurami. Protože apt a aptitude jsou dpkg frontendy, jsou opatření k řešení problémů obvykle stejná. Pokud všechny popsané kroky nefungují a vaše chyba probíhá na stolním počítači, restartování počítače musí uvolnit správce balíčků. Ale všechny výše uvedené kroky, pokud jsou použity správně, musí udělat práci.

Doufám, že tento článek vysvětluje, jak vyřešit Databáze stavu dpkg je uzamčena jiným procesem chyba byla užitečná.