Çözüm dpkg durum veritabanı başka bir işlem tarafından kilitlendi

Resolve Dpkg Status Database Is Locked Another Process



Bu eğitici, hatanın nasıl düzeltileceğini açıklar dpkg durum veritabanı başka bir işlem tarafından kilitlendi Debian tabanlı Linux dağıtımlarında.

Genellikle, bu hata şu anlama gelir: paket yöneticisi başka bir işlem tarafından kullanılıyor, muhtemelen sıkışmış. Hata gibi bir çıktı döndürebilir







dpkg durum veritabanı başka bir işlem tarafından kilitlendi

Ancak aynı neden, aşağıdaki ekran görüntüsünde gösterildiği gibi farklı hata mesajları oluşturabilir.



dpkg: hata: dpkg ön uç kilidi başka bir işlem tarafından kilitlendi



Aynı nedenin diğer belirtileri aşağıdaki mesajı içerebilir.





Önbellek kilidi bekleniyor: /var/lib/dpkg/lock-frontend kilidi alınamadı. 2839 (apt) işlemi ile tutulur... 30s

Veya hata aşağıda gösterilmiştir.



E: /var/lib/dpkg/lock-frontend kilidi alınamadı - open (11: Kaynak geçici olarak kullanılamıyor)
E: dpkg ön uç kilidi (/var/lib/dpkg/lock-frontend) alınamıyor, bunu kullanan başka bir süreç mi var?

Çoğu durumda, önceki örnekler, paketleri kurmakta, yükseltmekte veya kaldırmakta olduğunuzu bildirmektedir. Bazı durumlarda, birden fazla yönetici yazılımı paket yöneticisi aracılığıyla yönetiyor olabilir veya bir işlem uygulamayı (dpkg) engelleyebilir ve aşağıda açıklandığı gibi bu işlemin sonlandırılması sorunu çözer.

Not: Her zaman kullanmayı unutmayın dpkg ve uygun ile birlikte sudo .

dpkg veya apt kilitli veya geçici olarak kullanılamıyor nasıl düzeltilir:

dpkg veya onu öldürmek için uygun olan süreci tanımlamanız gerekir. İşlemi tanımlamak için aşağıdaki komutu kullanabilirsiniz.

sudo lsof /var/lib/dpkg/lock

Gördüğünüz gibi, işlem kimliği (PID) 16386 . Öldürmek için aşağıdaki komutu çalıştırın, değiştirin 16386 paket yöneticisini kullanan gerçek PID için.

sudo öldürme -9 16386

PID numarasını belirlemek için aşağıdaki komutu da çalıştırabilirsiniz.

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

O zaman koş:

sudo dpkg --configure -a

PID sürecini tanımlamanın ve kullanımıyla ilgili bilgileri yazdırmanın başka bir yolu, ps aşağıda gösterildiği gibi grep ile komut verin.

ps için | uygun

Diğer dpkg ve apt hatalarını düzeltme

Bu bölümde, birkaç apt ve dpkg sorununu çözmek için bazı komut kombinasyonları bulabilirsiniz.

Sorunlardan önce çalıştırmanız gereken ilk komut uygun güncelleme, Aşağıda gösterildiği gibi. Bu komut, uygun depoları günceller.

sudo apt-get güncellemesi

Daha önce kullanılan dpkg –configure -a Komut, bağımlılık sorunlarını gidermek için kullanılır.

sudo dpkg --configure -a

Aşağıdaki komut, bağımlılık sorunlarını gidermek için de kullanılabilir.

sudo apt-get -f kurulumu

Yararsız bağımlılıkları temizlemek için şunları çalıştırabilirsiniz:

sudo apt-temiz alın

Debian paket yöneticileri hakkında

Debian'ın mevcut paket yöneticileri arasında dpkg, uygun , apt-get , yetenek , sinaptik, ve dpkg-deb .

  • dpkg: Dpkg, Debian ve onun tabanlı dağıtımları için ana paket yöneticisidir.
  • uygun: paketleri getirebilen ve bağımlılıkları çözebilen dpkg için bir önyüzdür.
  • yetenek: Apt için etkileşimli bir ön uç.
  • Sinaptikler: Grafik paket yöneticisi.
  • dpkg-deb: .deb paketlerini kurmak için başka bir komut.

Tüm Debian paket yöneticileri hakkında ek bilgileri şu adreste bulabilirsiniz: https://www.debian.org/doc/manuals/debian-faq/pkgtools.en.html#pkgprogs

Çözüm

Gördüğünüz gibi, dpkg veya apt sorunlarını düzeltmek oldukça kolaydır ve çoğu hatanın bilinen nedenleri vardır. Yukarıda açıklanan komutlar, bozuk paketler veya kesintiye uğramış prosedürlerle ilgili hemen hemen tüm sorunları çözebilir. apt ve aptitude dpkg ön uçlar olduğundan, genellikle sorunları düzeltmeye yönelik önlemler aynıdır. Açıklanan tüm adımlar çalışmıyorsa ve hatanız bir masaüstü bilgisayarda gerçekleşiyorsa, bilgisayarınızı yeniden başlatmak paket yöneticisini serbest bırakmalıdır. Ancak yukarıdaki tüm adımlar doğru uygulanırsa işi yapmalıdır.

Umarım bu makale sorunun nasıl çözüleceğini açıklar. dpkg durum veritabanı başka bir işlem tarafından kilitlendi hata faydalı oldu.