在执行aptitude update
/apt-get update
或使用更新管理器进行更新时,我有时会得到一个需要很长时间的存储库链接。百分比不会结束,而且需要很长时间才会忽略它。
我如何才能缩短时间,以便如果某个存储库需要超过 10 秒才能连接或完成,它应该忽略它并移动以下存储库。以下是一张解释该问题的图片:
它正在尝试连接到存档.ubuntu.com但由于耗时太长,它至少会停留在那里 3 到 5 分钟(没有测量时间),然后显示为已忽略并移至以下内容。我希望将其改为秒而不是分钟。
答案1
我怎样才能降低时间,以便如果某个存储库需要超过 10 秒才能连接或完成,它应该忽略它并移动以下存储库?
镜子是一种选择,正如@adempewolff 所解释的那样。不过,让我给你一个直接的答案:
设置 apt-get 连接超时
您可以通过以下apt.conf
选项控制这些超时:
获取::http::超时“10”; 获取::ftp::超时“10”;
请注意,这仅适用于连接超时,而不适用于“完成时间”超时,即,如果它在 10 秒内连接,它将继续下载 100MB 的包,即使速度为 1 KB/秒:)
要实现这些选项,只需在 中创建一个 conf 文件/etc/apt/apt.conf.d
;假设我们将其命名为99timeout
。
- 按
Alt+F2
,输入gksudo gedit /etc/apt/apt.conf.d/99timeout
- 输入/粘贴以上几行,并选择超时时间(以秒为单位)
- 保存并退出。
- 现在尝试
sudo apt-get update
还有终端成瘾者的“寻找最佳服务器”黑客!
扩展和移动以回答这个更合适的问题
您可以尝试调整的其他 apt-get conf 选项
Acquire::Queue-Mode
host
:排队模式;Queue-Mode 可以是或之一,access
它决定 APT 如何并行化传出连接。host
表示将为每个目标主机打开一个连接,access
表示将为每个 URI 类型打开一个连接。Acquire::Retries
:执行重试的次数。如果该值不为零,APT 将按给定的次数重试失败的文件。Acquire::http::Dl-Limit
:接受以千字节为单位的整数值,以限制下载速度,并在更新时不降低您的浏览/电子邮件/等的速度。默认值为 0,表示停用限制并尝试尽可能多地使用带宽。如果启用,它将禁用apt-get
的并行下载功能。man apt.conf
如果您认为其他内容可能有帮助,请仔细阅读!
答案2
某些存储库加载速度非常慢往往只是使用慢镜像的一个症状。许多地区的默认镜像并不是最快的(我知道中国就是这种情况)。
通过软件源 GUI 更改镜像确实很容易,您可以通过两种方式打开此窗口:
- 打开
Ubuntu Software Center
并点击菜单Software Sources
中的Edit
。
或者
- 打开终端(或输入
alt-F2
)并运行software-properties-gtk
当此窗口出现时,您将看到一个下拉菜单,显示Download From:
选择您的镜像。Other
从此菜单中选择选项。
在新出现的窗口中单击按钮Select Best Server,它将测试并自动选择适合您位置的最快服务器。
希望这可以帮助!
也可以看看:
答案3
apt-fast类似于apt-get,但会并行下载存储库更新和软件包。请参阅本教程学习如何使用它。