没有输出的输入是不完整的

0%

curl命令下载资源速度缓慢解决方案

在服务器下载资源往往会通过curl或者wget命令,但是有时部分资源会因为网络问题下载缓慢甚至直接下载失败。
本文提出三种解决方案来解决这个问题。

排查DNS解析问题

类似于 raw.githubusercontent.com 等网站,有时会因为 DNS 解析问题无法访问,但下载缓慢也可能来自代理、连接或传输网络,不能只凭“慢”就认定 DNS 污染。

当时我通过 ipaddress 查询地址,做过临时修改 hosts 的尝试:

截图中的 199.232.96.133、199.232.68.133 都是 2020 年的查询结果。GitHub/CDN 的地址会变化,不能再把这些旧地址直接加入 /etc/hosts,否则还可能影响正常的 DNS 调度。

如要用 hosts 做临时诊断,应先确认当前网络下的地址有效,保留原配置,并在测试后撤销本次添加的条目。具体可以参考 GitHub 官方连接排查说明 和 IP 地址说明。

下载源码自行编译

有些package会提供多种方式供大家下载使用,比如yum安装、apt-get安装、brew安装,curl下载后sh安装。
除此之外,还可以下载项目提供的源代码,自行编译安装。常见的方式是使用make命令,不过具体构建工具、依赖库和安装步骤还是要按项目文档来。

其他主机拷贝

如果两台机器的操作系统、CPU 架构和动态库等运行条件兼容,可以通过scp命令复制已安装的二进制文件;有额外资源或配置的软件不能只复制一个程序文件。相关scp的使用说明可以参见文章Linux scp命令

我暂时知道的解决方式就上面三种,如果以后有其他方式可以再补充吧。