最近,每当我使用终端安装或更新任何程序时,我都会遇到一个全新的问题。它显示
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?
所以我搜索了互联网并找到了一个可能的解决方案,即了解哪个进程对 dpkg 有锁定并终止该进程,这似乎有效,但我每次登录电脑时都必须这样做。似乎有两个进程。这是我在安装 nodejs 时所做的
$ sudo lsof /var/lib/dpkg/lock
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
unattende 1234 root 4uW REG 8,6 0 1049800 /var/lib/dpkg/lock
$ sudo kill -9 1234
$ sudo apt-get install -y nodejs
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?
$ sudo lsof /var/lib/dpkg/lock
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
aptd 2787 root 8uW REG 8,6 0 1049800 /var/lib/dpkg/lock
$ sudo kill -9 2787
所以我想知道是否有人可以为我提供这个问题的永久解决方案,因为这太烦人了。
答案1
这可能是 Ubuntu 的自动更新功能。登录后尝试等待几分钟,它现在应该可以正常运行。
为了完全防止这种情况发生,请unattended-upgrades
使用以下命令卸载该软件包(启动这些更新):
sudo apt purge unattended-upgrades
重新启动后,您遇到的问题应该消失。