很多时候都会出现这样的问题,我的连接带宽很小,当运行一个sudo aptitude safe-upgrade
或类似的程序时,下载量很大,然后偶然发现一个我想通过包管理额外安装的程序,那么我必须自己记住。更糟糕的是,当我必须添加 ppa 时...
有没有办法将 PPA 并将要安装的包添加到队列中,即使有另一个安装或升级实例正在运行?
我正在使用 Ubuntu 11.10,并且不受 aptitude、apt-get 或 synaptic 的约束,但更喜欢 CLI 解决方案。
答案1
您可以在下载阶段安全地中断 apt。
否则,穷人的队列?
while pgrep aptitude; do sleep 10; done && aptitude install foo
:)
答案2
我知道这个回答有点晚了,但这是apt-iq
我写的一个小脚本,叫做 (apt install query)。一旦有可能,它就会在后台运行 apt-get 命令。
#!/bin/bash
# apt-iq - An install queue system for apt-get.
# usage: apt-iq [aptgetargs].
# apt-iq --nosep [aptgetargs]
# Run with --nosep to NOT split off and free the terminal.
if [ $1 == '--nosep' ]; then
while :; do
lsof /var/lib/dpkg/lock >/dev/null 2>&1
[ ! $? = 0 ] && break
sleep .01
done
apt-get ${@:2} -y -qq
echo "DONE."
else
$0 --nosep $@ &
fi
使用方法:
sudo apt-iq install foo
sudo apt-iq remove bar