参考资料:
在Ubuntu中,有时候运用sudo apt-get install 安装软件时,会出现一下的情况
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还在运行,此时的解决方案有多种,每一种不一定是十分有效的,可以尝试多种方法。
1.找到并且杀掉所有的apt-get 和apt进程
注意事项apt-get和apt两个部分,不同的Ubuntu版本对应的可能不一样,把两个部分都筛选一下即可。
运行下面的命令来生成所有含有 apt 的进程列表,你可以使用ps和grep命令并用管道组合来得到含有apt或者apt-get的进程。
#所有含有apt的进程
ps -A | grep apt
#所有函授apt-get的进程
ps -A | grep apt-get
#找出所有的 apt 以及 apt-get 进程
如果存在对应的进程,会有相应的编号和内容的显示,其中一列数字就是进程编号Processnumber。例如:
6362 ? 00:00:00 apt
6934 ? 00:00:00 apt-get
7368 ? 00:00:00 synaptic
以上结果中 6362进程和6934进程即为需要kill掉的进程,运行以下命令删除相应的进程。
$ sudo kill -9 processnumber
或者
$ sudo kill -SIGKILL processnumber
kill掉相应的进程,问题就解决了。
2.删掉相应的文件
sudo rm /var/lib/apt/lists/lock