Total Pageviews

Saturday, 7 November 2020

解决Ubuntu出现E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)| E: Unable to lock directory的问题

 Ubuntu16 升级软件包出现错误

root@hosltoc:~# sudo apt-get update

Reading package lists... Done

E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)

E: Unable to lock directory /var/lib/apt/lists/

出现这个问题的原因可能是有另外一个程序正在运行,导致资源被锁不可用。而导致资源被锁的原因,可能是上次安装时没正常完成,而导致出现此状况。

原因:刚装好的Ubantu系统,内部缺少很多软件源,这时,系统会自动启动软件源更新进程apt-get,并且它会一直存活。由于它在运行时,会占用软件源更新时的系统锁(以下称“系统更新锁”,此锁文件在/var/lib/apt/lists/目录下),而当有新的apt-get进程生成时,就会因为得不到系统更新锁而出现:

E: 无法获得锁 /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)错误提示!

因此,我们只要将原先的apt-get进程杀死,重新激活新的apt-get进程,就可以让新的软件管理器正常工作了!


解决方法

找出并杀掉apt-get或者apt进程

用这个命令查看一下进程:

ps -ef | grep apt

显示结果如下:

6362 ? 00:00:00 apt

6934 ? 00:00:00 apt-get

7368 ? 00:00:00 synaptic

执行:

sudo killall apt

sudo killall apt-get

sudo killall synaptic

再次在终端里查看ps -e | grep apt 没有任何结果了


删除锁定文件

首先运行下面的命令来移除 /var/lib/dpkg/ 文件夹下的锁定文件:

sudo rm /var/lib/dpkg/lock

强制重新配置软件包:

sudo dpkg --configure -a

也可以删除 /var/lib/apt/lists/ 以及缓存文件夹下的锁定文件:

sudo rm /var/lib/apt/lists/lock

sudo rm /var/cache/apt/archives/lock

更新软件包源列表:

sudo apt-get update

OK!

转自:https://www.tecmint.com/fix-unable-to-lock-the-administration-directory-var-lib-dpkg-lock/

------------------------

 Ubuntu出现错误:Could not get lock /var/lib/dpkg/lock 解决办法


使用命令 sudo apt-get update时提示出现以下错误:

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?  

解决办法:

You can delete the lock file with the following command:


sudo rm /var/lib/apt/lists/lock

You may also need to delete the lock file in the cache directory


sudo rm /var/cache/apt/archives/lock

sudo rm /var/lib/dpkg/lock

After that, try opening Synaptic again.

No comments:

Post a Comment