![E:无法获取锁 /var/lib/dpkg/lock-frontend - open(11:资源暂时不可用)?](https://linux22.com/image/1597059/E%EF%BC%9A%E6%97%A0%E6%B3%95%E8%8E%B7%E5%8F%96%E9%94%81%20%2Fvar%2Flib%2Fdpkg%2Flock-frontend%20-%20open%EF%BC%8811%EF%BC%9A%E8%B5%84%E6%BA%90%E6%9A%82%E6%97%B6%E4%B8%8D%E5%8F%AF%E7%94%A8%EF%BC%89%EF%BC%9F.png)
E:无法获取锁 /var/lib/dpkg/lock-frontend - 打开(11:资源暂时不可用)E:无法获取 dpkg 前端锁(/var/lib/dpkg/lock-frontend),另一个进程是否正在使用它?
如果我尝试在任何命令上运行 sudo apt install,这就是我得到的结果。
答案1
以下错误似乎是由于多种原因引起的,例如,多个 dpkg 实例或空间不足,或者因为您忘记了 apt-get 的 sudo。
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
为了诊断这个问题,首先在启动时在 bash 脚本中添加以下内容:
set -o xtrace
这将在执行每个命令时显示带有 + 符号前缀的命令。在我的例子中,确实发生了这种情况,因为我忘记在 apt-get 前面添加 sudo。
答案2
正如评论中提到的,我收到此错误是因为 Ubuntu 正在自动运行更新。以下是我验证它的方法
# apt-get update firefox
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (var/lib/dpkg/lock-frontend), is another process using it?
# lsof | grep lock-frontend
unattended 1601 root 11uW REG 8,1 0 1207581 /var/lib/dpkg/lock-frontend
{{...more lines like this...}}
# ps all
{{...many lines but some mention dpkg, for example:}}
{{...}} do_wait Ss+ pts/1 0:00 /usr/bin/dpkg --status-{{...}}
{{...}} do_wait S+ pts/1 0:00 /bin/sh /var/lib/dpkg/i{{...}}
# top
{{ shows dpkg-related processes so you can see that they're doing something }}
一旦top
停止显示与 dpkg 相关的进程 --- 就我而言仅仅 5 分钟后 --- 我就能apt-get
正常使用。