我想执行多个 apt 操作,比如sudo apt install ubuntu-gnome-desktop
在一个终端和sudo apt remove lubuntu-desktop
另一个终端中。当我尝试执行此操作时,我得到了这个(请不要问我为什么安装这些桌面;我在 Ubuntu 上做过很多实验,以至于由于破坏了系统,我不得不多次重新安装它)
$ sudo apt autoremove
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 执行一项操作!!
我知道破坏锁不安全,但我愿意自己承担所有风险!!
我的问题不是重复的这因为我想知道如何在多个终端上执行此操作。我知道这些方法apt install package1 package2
。apt install package1 && apt remove package2
如果这样做apt install pack1 && apt remove pack2
,那么我必须等待很长时间才能安装 pack1。
如果我把锁弄坏了它还能用吗?
答案1
不允许。不能同时多次使用 apt。但是,你可以像这样使用它 ->sudo apt-get update && apt-get upgrade
这样,更新和升级都可以进行。
答案2
您可以在一次 APT 过程中删除锁定文件。但这样做根本不明智。
软件中的一个基本原则是,如果某个数据结构被一个进程修改,那么在第一个进程完成其工作之前,不应允许另一个进程访问该数据结构,因为第二个进程可能会得到错误的信息,然后尝试做一些不可能的事情,比如除以零或使用不可用的资源,或者它可能会写入不正确的内容。 此类不一致是数据损坏,会造成严重破坏。
允许多个 APT/DPKG 进程同时操作数据库将导致数据库损坏。APT 可能无法再确定您安装了哪些软件或其记录是否是最新的。它很可能会开始抛出大量错误并拒绝执行任何操作。这样做不会为您节省任何时间,所以请不要这样做。