如何停止和重新启动 apt-get

如何停止和重新启动 apt-get

我的连接速度非常慢(~10KB/s),因为我的移动运营商限制了我的速度。现在,他们会发送大约 32KB 的数据,然后停止。

我正在尝试通过 apt-get 安装软件包,我注意到我可以停止(ctrl-c)然后重新启动安装,它会从上次中断的地方继续。

这样做,我可以得到一点数据,然后停止它,启动它,然后我得到更多的数据,否则(不停止和重新启动)我必须等待大约 15 秒才能获得更多数据

有什么方法可以自动执行此操作并让脚本停止 apt-get 并重新启动?

答案1

这是一个脚本,它将软件包名称作为参数并apt-get重复运行,并在几秒钟后将其终止。它apt-get以“下载”模式运行,因此它只会下载,而不会安装。您可能需要sleep根据提供商限制下载的速度来调整时间。

#!/bin/bash

me=$(basename $0)

if (($# == 0))
then
    printf "Usage: %s package [package]...\n" $me
    exit 1
fi

printf "Will install %d package(s).\n" $#
printf "This will run forever.\n"
printf "You can stop it by pressing ctrl-C when prompted.\n"
printf "If that fails, open another window and type 'killall %s'.\n" $me
read -p "Press 'Enter' to continue: "

while :
do
    timeout 3 apt-get -y -d install "$@"
    printf "Press ctrl-C within one second to stop\n"
    sleep 1
done

答案2

我认为最好尝试CtrlZ后台暂停该进程。你也许可以fg使用恢复一旦你的连接恢复。

要暂停作业,请按Ctrl+ Z

当您收到网络信号时重新启动作业:

fg %1

答案3

你可能想要使用apt-fast,它会同时从多个镜像下载。即使您断开与其中一个镜像的连接,它也会继续从其他镜像下载。您可以直接从 apt-fast 的 GitHub 页面下载并设置它,它有非常完善的文档。

相关内容