美文网首页Linux我用 LinuxLinux学习之路
Ubuntu报错,无法获取锁 E: Could not get

Ubuntu报错,无法获取锁 E: Could not get

作者: 霜天渔火 | 来源:发表于2019-05-31 23:17 被阅读0次

背景

我在Ubuntu虚拟机上运行命令sudo apt-get install subversion下载svn时报错:

报错截图

错误信息提示大概是说无法获取位置/var/lib/dpkg/的某个锁。

报错原因

通过查阅资料,我了解到这个错误的原因可能是有另一个程序正在运行,占用了锁,这个运行的程序可能是之前下载未正常完成或者是系统自动更新产生的。

于是我用ps aux | grep apt-get 查看了一下正在运行apt-get的进程:

查看进程

果然有一个PID为2642的进程。

话不多说,直接kill掉:

杀死进程

奇怪了,还是报错。

那么再次查看一下进程,又发现了一个PID为2657的,那再杀死它吧。

然后再看一下,却还是有一个进程:

再次杀死进程

看来这样无穷无尽的kill是没有用的。到底是什么原因我还不想去探究,现在要紧的是把这个问题解决掉,我才能正常下载svn。

解决方法

最后使用了最暴力的解决办法,直接删除这个锁的文件:

sudo rm /var/lib/dpkg/lock-frontend
sudo rm/var/lib/dpkg/lock

奏效了:

删除锁

注意:这样暴力删除锁不知道会造成什么不良后果,请慎用!

但就我的情况来说,并没有出现后续问题。等以后空了去详细查一下这个报错产生和kill进程失败的原因。

相关文章

网友评论

    本文标题:Ubuntu报错,无法获取锁 E: Could not get

    本文链接:https://www.haomeiwen.com/subject/bvuntctx.html