我的笔记本电脑上装有 ubuntu 12.10。当我尝试安装 vlc 时,出现此错误
E:无法获取锁 /var/lib/dpkg/lock - open (11:资源暂时不可用) E:无法锁定管理目录 (/var/lib/dpkg/),其他进程是否正在使用它?
怎么办?其他软件也装不上。而且,mp3文件无法播放。显示错误“未找到mpehg-1 layer3解码器”。
答案1
如果另一个程序正在对软件包进行某些操作(例如,您正在运行更新,您已打开 Synaptic 等),则会出现此错误。一次只允许一个程序执行此操作。
包管理器确保这一点的方式是/var/lib/dpkg/lock
在开始操作时检查文件是否存在。如果不存在,程序会创建一个。然后在完成操作后将其删除。因此,如果文件存在,则意味着另一个包操作正在运行,或者操作未正确完成,因此未删除该文件。
检查您正在使用的程序(无论是 Synaptic、Ubuntu 软件中心还是命令行apt-get
)是否是当前唯一打开的程序。
尝试等待一段时间:Ubuntu 会定期检查更新,如果您在检查更新时尝试安装 VLC,则可能会收到错误。这最多需要几分钟(如果连接良好,则不到一分钟),因此如果过了一会儿您仍然收到此错误,则这不是问题。
如果您已经检查了所有上述操作但问题仍然存在,则有两种可能性:
- 后台仍有
dpkg
进程在运行:你可以打开系统监视器,查看正在运行的进程并搜索dpkg
。或者,在终端中运行ps aux | grep dpkg | grep -v grep
:如果您没有得到任何结果,则您确定情况并非如此。相反,如果您找到一个dpkg
进程,则有进程正在运行。尝试等待。无论如何,重新启动计算机后,问题应该不会再出现。 - 在某个时候,软件包操作(安装、更新、删除或任何其他操作)崩溃/失败/被错误中断。这意味着无法删除文件
/var/lib/dpkg/lock
,如前所述。在这种情况下,您可以安全地删除此类文件。从终端运行sudo rm /var/lib/dpkg/lock
。
此后,你应该能够再次安装任何软件
答案2
要么您有其他使用锁来安装的软件包,要么您已终止或杀死正在进行安装的安装程序,这就是它无法访问锁并显示此消息的原因。
简单的解决方案是重新启动你的终端,或者重新启动你的 ubuntu。