Ubuntu 包管理

1. 错误 Could not get lock /var/lib/dpkg/lock 的解决方案

在使用Ubuntu的过程中,这个问题我遇到N遍了,每次解决之后就忘了当时是如何解决的,所以这次就记录下来

我在使用apt-get安装软件包时,遇到以下错误

1
2
3
$ apt-get install -y tree
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?

查了一下网上的资料,得知出现这个问题的原因可能是:apt-get进程可能没有结束,此时你再次运行apt-get,就会出现上述错误。即有另一个程序正在占用apt-get install进程,由于它在运行时,会占用软件源更新时的系统锁(简称系统更新锁),此时资源被锁。

查看apt相关进程,发现确实上锁了

1
2
3
$ ps -ef | grep apt
root 2939 1 0 17:47 ? 00:00:00 /bin/sh /usr/lib/apt/apt.systemd.daily install
root 2943 2939 0 17:47 ? 00:00:00 /bin/sh /usr/lib/apt/apt.systemd.daily lock_is_held install

解决方法

1
2
rm -rf /var/lib/dpkg/lock
apt-get update

panchaoxin wechat
关注我的公众号
支持一下