在Ubuntu中使用apt-get的时候,始终显示“E:无法定位软件包”,E: 无法获得锁 /var/lib/apt/lists/lock

1.可能的一个原因是因为安装过后没有更新软件源,试试用 sudo apt-get update 命令更新一下软件源。

转自:http://blog.csdn.net/u011514810/article/details/51405515


2.今天玩
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、完成。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值