为了提高安装效率,我正在考虑在必须使用命令和脚本时进行并发包sudo apt-get install
安装 。sudo snap install
pip install --user
这是一个好主意,还是一个坏主意(即,这对 Linux 操作系统或计算机硬件(如存储介质)来说可能是灾难性的)?执行此操作时我应该注意哪些陷阱?
答案1
系统不允许apt install
一次执行多次。第二次执行时会出错,因为它无法锁定特殊文件。原因:apt remove
并且 apt install
可能会有冲突的操作。一个包可能需要删除另一个操作所需的内容。我们称之为“依赖地狱”。
“snap” 可以做到这一点,但你需要一个特殊的功能:
snap set system experimental.parallel-instances=true
不会有问题:“snap”被设计为独立于一切。这里不存在依赖性问题:所有 snap 都安装自己的软件。
“pip” 也可以做到这一点。
xargs --max-args=1 --max-procs=4 sudo pip install < install.txt
它将安装“install.txt”中的软件包(每行一个软件包),并且它将一次安装(在此示例中)4 个软件包。请注意:这可能会因依赖关系而变得棘手。pipenv install package packages
应该可以解决依赖关系问题,但有一个严重的缺点:它会创建一个文件和一个锁定文件,创建该文件需要很长时间,因此速度不会有太大提高。但完成后它会并行安装。
假设您要同时使用这 3 个中的 1 个(而不是同时使用其中 1 个超过一次):您可以同时运行其中 1 个,其中 snap 和 pip 可以并行安装。另外请注意:可以使用 安装也可以使用apt
安装的软件包pip
。同时这样做可能会带来麻烦。
正如评论中所说:sudo apt update
在安装新软件之前务必先执行此操作。
是否建议同时执行“sudo apt-get install”、“sudo snap install”和“pip install --user”?
不,但是“推荐”并不是真正的亮点 :)