我如何解锁 /var/lib/dpkg/lock?

我尝试在我的Ubuntu系统上安装Dropbox,但现在我无法安装或卸载任何软件。我收到了以下错误信息:
E: Unable to lock the administration directory /var/lib/dpkg/lock?

我已经尝试过杀死 dpkg 并重启它 sudo kill -TERM PID 但它立即尝试再次完成安装并卡住了。

我该如何解决这个问题?

3个回答

sudo rm /var/lib/dpkg/lock应该能解决问题。你可以使用ps afx|grep dpkg来检查是否仍有进程在同时运行。sudo killall dpkg将停止所有正在运行的dpkg进程。

如果你需要取消dropbox的安装,请尝试sudo dpkg --force-remove-reinstreq --remove nautilus-dropbox


1我没有使用第一个命令,因为我听说如果程序仍在运行,这可能会导致严重的问题。不过,sudo dpkg --force-remove-reinstreq --remove nautilus-dropbox 这个命令解决了问题。 - akp234
1好的回答,但手动删除锁定文件应该是最后的选择。 - Sophit
没有这样的文件或目录:/var/lib/dpkg/lock - IgorGanapolsky
使用pgrep -f 'dpkg|apt'代替ps ... | grep ...,因为后者是错误的;ps ... | grep -v grep | grep ...是旧的做法。 - dhchdhd

这意味着软件中心或其他终端仍在运行一个软件包操作,强制删除并不是推荐的做法,因为它可能会导致损坏。但是尝试关闭它们,如果这样还不起作用,那么重新启动并只打开一个终端窗口,不要进行其他操作来安装/执行软件包操作。

随着自动更新的功能,apt-get 在重新启动时经常会自动启动。楼主在安装过程中遇到了失败的问题,所以我认为这并不会有太大帮助。 - Alexis Wilke

/var/lib/dpkg/lock实际上是一个文件。如果你认为它很重要,只需将其重命名,而不是删除它。
sudo mv /var/lib/dpkg/lock /var/lib/dpkg/lock-backup

6这没有任何意义,即使备份一切也不会对你造成伤害。如果你手动移除一个锁定,就假设打破了创建该锁定的流程,所以没有理由备份它。再次运行该流程,锁定将会“按需”创建。 - m3nda
4那个文件无论如何都是空的。 - Alexis Wilke