دوره‌ های آموزشی نووا
آگوست 22, 2017

مواجه شدن با خطای Could not get lock

Avatar photo
برنامه نویس MERN Stack
مواجه شدن با خطای Could not get lock

همانطور که میدانید نصب نرم افزار ها یا بروز رسانی سیستم عامل لینوکس با استفاده از چند دستور خاص انجام میشود که یکی از این دستورات apt-get میباشد. شما میتوانید با استفاده از دستور apt-get در توزیع های Debian و Ubuntu و kali و … کلیه برنامه ها و سیستم عامل را بروز رسانی کنید اما بعضی از مواقع ممکن است با خطای Could not get lock مواجه شوید که در ادامه نحوه برطرف نمودن این خطا را یاد خواهید گرفت.

علت دریافت خطای Could not get lock چیست؟

E: Could not get lock /var/lib/dpkg/lock – open (11 Resource temporarily unavailable)

E: Unable to lock the administration directory (/var/lib/dpkg/) is another process using it?

یکی از عواملی که معمولا سبب دریافت خطای Could not get lock میشود استفاده همزمان از دستور apt-get برای نصب یا بروز رسانی برنامه ها میباشد. یعنی اگر شما با یک Terminal سعی کنید با استفاده از دستور apt-get سیستم عامل خود را بروز رسانی کنید و با یک Terminal دیگر سعی کنید برنامه ای را با دستور apt-get نصب کنید احتمالا با خطای Could not get lock مواجه خواهید شد. چراکه Resource های مذکور در خطا توسط برنامه اول در حال استفاده میباشد و با اجرای دوباره دستور apt-get این منابع به صورت خودکار قفل میشوند.

البته فقط چند بار استفاده همزمان از دستور apt-get باعث دریافت این خطا نمیشود بلکه اگر شما برنامه Synaptic Package Manager یا برنامه Ubuntu software Center را به همراه دستور apt-get استفاده کنید ممکن با خطای Could not get lock مواجه شوید.

چگونه مشکل Could not get lock را برطرف سازیم؟

برای حل مشکل Could not get lock کافیست ابتدا Process که باعث قفل شدن Resource های مذکور در خطا شده را با دستور ps پیدا کرده و با دستور kill آنها را ببندید سپس با دستور rm قفل ایجاد شده را حذف کنید. برای مثال:

ps aux | grep '[a]pt'

خروجی دستور بالا را بررسی کنید و سپس Process ID یا PID مربوطه را در جلوی دستور زیر بنویسید:

kill PID

در دستور بالا باید بجای کلمه PID عدد Process را بنویسید.

بعد از بستن کلیه Process های مربوطه باید از دستور زیر برای حذف قفل استفاده کنید:

sudo rm /var/lib/apt/lists/lock

راه حل دوم در حل مشکل Could not get lock

اگر به هر دلیلی روش اول مشکل شما را حل نکرد میتوانید از دستورات زیر برای برطرف کردن مشکل could not get lock استفاده کنید:

sudo rm /var/lib/apt/lists/lock

sudo rm /var/cache/apt/archives/lock

sudo rm /var/lib/dpkg/lock

اگر سوال یا انتقاد یا راه حلی بهتر برای حل مشکل Could not get lock دارید نووا بلاگ را از محبت خود محروم نکنید.

یک پاسخ به “مواجه شدن با خطای Could not get lock”

  1. Avatar photo ابوالفضل گفت:

    مرسی عالی بود

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *