我有一个大量使用 apt 的脚本,目前它面临锁定问题,如下所示:
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?
我希望 apt 尝试获取锁而不是中止。这可能吗?
答案1
据我所知,让 apt 不锁定是不可能的。发生错误是因为脚本试图同时运行多个 apt 会话。我认为最好修改脚本,以便 apt 操作可以一个接一个地运行,也许可以排成队列。
答案2
除了@Wilhelm 的建议(很好)之外,如果您留下了一个不会消失的陈旧锁文件(有时会发生这种情况),您必须手动将其删除。
sudo rm -rf /var/lib/dpkg/lock
但要非常小心,确保路径完全正确,因为sudo rm -rf
如果您将路径指向正在使用的文件(甚至是系统文件),它将删除这些文件,从而可能永久破坏您的系统。