你好,游客 登录 注册 搜索
背景:
阅读新闻

Ubuntu使用教程:E: 无法获得锁 /var/lib/apt/lists/lock - open (11 资源临时不可用)

[日期:2014-06-19] 来源:Linux公社  作者:Linux [字体: ]

查看一下是否有使用apt-get的程序,终端输入:ps -aux,找到使用apt-get的程序(最后一列),查看其PID号,然后杀死其进程,输入sudo kill PID.

用sudo apt-get update时出现“ E: 无法获得锁 /var/lib/apt/lists/lock”错误。

在网上搜索到的解决方案──“将/var/lib/apt/list/lock删除掉即可”──其实是一种极端的情况,也就是在上次更新没有正常关闭的情况下使用。

在大部分情况下,问题的原因在于其它的程序如系统的自动更新、新立得等正在使用apt-get进程,所以解决方法也就是将这一进程关闭。

E: 无法获得锁 /var/lib/apt/lists/lock - open (11 资源临时不可E: 无法获得锁 /var/lib/apt/lists/lock - open (11 资源临时不可

具体如下:

1、ps-aux 查出apt-get进程的PID,通常是一个四位数字。

2、用sudo kill PID代码 杀死进程

3、用sudo apt-get update,sudo apt-get dist-upgrade升级。

方法一:

执行一下 sudo dpkg --configure -a

方法二(亲测可以用):

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

方法三:

1、ps-aux 查出apt-get进程的PID,

2、用sudo kill PID代码 杀死进程(我都是找出带apt字样的进程格杀勿论)

---------------------------分割线---------------------------

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

出现这个问题的原因可能是有另外一个程序正在运行,导致资源被锁不可用。而导致资源被锁的原因,可能是上次安装时没正常完成,而导致出现此状况。
 
解决方法:输入以下命令
 
sudo rm /var/cache/apt/archives/lock
 
sudo rm /var/lib/dpkg/lock
 
之后再安装想装的包,即可解决
 

今天玩Ubuntu的时候,在弄更新源的时候,突然出现以下错误:
 
[1]+ Stopped                sudo apt-get update
www.linuxidc.com@linux:~$ sudo apt-get update
E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the list directory
 
开始以为是权限不够,就是用 sudo apt-get update,发现还是报错,问题没有解决。于是上网搜索了一下,答案如下:
 
问题应该是之前那个更新被强制取消的问题,进程仍然还在。用这个命令查看一下:
 
ps -e | 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 没有任何结果了
 
继续执行sudo apt-get update
 
OK! 
 
 
原因:刚装好的Ubantu系统,内部缺少很多软件源,这时,系统会自动启动软件源更新进程“apt-get”,并且它会一直存活。由于它在运行时,会占用软件源更新时的系统锁(以下称“系统更新锁”,此锁文件在“/var/lib/apt/lists/”目录下),而当有新的apt-get进程生成时,就会因为得不到系统更新锁而出现"E: 无法获得锁 /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)"错误提示!因此,我们只要将原先的apt-get进程杀死,从新激活新的apt-get进程,就可以让新立德软件管理器正常工作了!

这时,你可以按一下步骤来解决:
1、输入以下命令:“ps -aux  > temp.txt”.敲回车确定。这时会有“warning”出现,但不予理会。
2、输入以下命令:“grep -n apt-get temp.txt”键入回车确定。而后从命令输出中找到 apt-get 进程的PID。
3、输入以下命令:“sudo kill <PID>”。
4、完成。

or
 

如果提示错误:E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)
输入
 sudo rm /var/lib/apt/lists/lock 即可

祝好运!

---------------------------分割线---------------------------

linuxidc@ubuntu:~$ sudo apt-get update
E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/
linuxidc@ubuntu:~$ sudo apt-get update
E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/
linuxidc@ubuntu:~$ sudo apt-get update
E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/
linuxidc@ubuntu:~$ sudo apt-get update
E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
E: Unable to lock directory /var/lib/apt/lists/
linuxidc@ubuntu:~$


linuxidc@ubuntu:~$ sudo rm /var/cache/apt/archives/lock
linuxidc@ubuntu:~$ sudo rm /var/cache/apt/archives/lock
rm: cannot remove ‘/var/cache/apt/archives/lock’: No such file or directory
linuxidc@ubuntu:~$ sudo rm /var/lib/dpkg/lock
linuxidc@ubuntu:~$

更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-06/103437.htm

linux
相关资讯       Ubuntu使用教程 
本文评论   查看全部评论 (1)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
第 1 楼
* zhuang1227会员 发表于 2014/8/8 13:48:46
胡拼乱凑的一篇文章,内容多处重复,排版混乱