宇宙主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

欧基零壹微头条IP归属甄别会员请立即修改密码
查看: 1351|回复: 9

【教程】Linux 如何进行多线程下载

[复制链接]
发表于 2021-5-7 23:48:59 | 显示全部楼层 |阅读模式
本帖最后由 nnt 于 2021-5-24 01:52 编辑

本文首发于:https://blog.1234234.xyz/archives/9/

Dz不好排版,看得难受的MJJ可以移步至原文

前言

最近需要从本地传一个文件到纽约的buyvm服务器(千兆带宽、Debian9),奈何本地带宽小加上速度不理想,就尝试先传到onedrive上,再利用oneindex下载到目标服务器,说干就干,经过简单的google搜索,可以知道:wget是不支持多线程下载的,可以尝试安装其他应用。

正文
本文尝试使用两款工具:axel和aria2
由于我服务器使用的是debian9系统,所以也以debian9为例

axel
安装
安装步骤很简单:
首先去github下载其releases包

  1. wget https://github.com/axel-download-accelerator/axel/releases/download/v2.17.9/axel-2.17.9.tar.bz2
复制代码


解压并打开解压后的文件夹:

  1. tar -xjvf axel-2.17.9.tar.bz2
  2. cd axel-2.17.9
复制代码


安装程序

  1. ./configure && make && make install
复制代码


创建软链接

  1. ln ./axel /usr/bin/axel
复制代码


之后可以尝试运行命令:axel --version 试试是否已成功安装。

使用

语法

  1. axel [options] url1 [url2] [url...]
复制代码


选项

  1. --max-speed=x , -s x         # 最高速度x
  2. --num-connections=x , -n x   # 连接数x
  3. --output=f , -o f            # 下载为本地文件f
  4. --search[=x] , -S [x]        # 搜索镜像
  5. --header=x , -H x            # 添加头文件字符串x(指定 HTTP header)
  6. --user-agent=x , -U x        # 设置用户代理(指定 HTTP user agent)
  7. --no-proxy , -N             # 不使用代理服务器
  8. --quiet , -q                # 静默模式
  9. --verbose ,-v               # 更多状态信息
  10. --alternate , -a            # Alternate progress indicator
  11. --help ,-h                  # 帮助
  12. --version ,-V               # 版本信息
复制代码


例子,以10个线程下载vultr的测试文件:

  1. axel -n 10 http://sjo-ca-us-ping.vultr.com/vultr.com.1000MB.bin
复制代码


可以看到速度非常夸张(差不多跑满了带宽):



aria2
由于axel在通过在线oneindex的文件时总是出现一些奇怪的问题(cloudflare 500错误等),这里尝试换用aria2进行下载

安装
由于debian内置源存有aria2的包,那么这里可以直接通过apt-get下载:

  1. apt-get install aria2
复制代码


使用
具体的命令参数就不贴了,网上有很多了,就举个简单例子好了:

  1. aria2c -x [线程数] [URL]
复制代码


可以看到效果不错,速度提升很明显(wget下载速度1.6M/s左右)

发表于 2021-5-7 23:50:01 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2021-5-7 23:50:17 | 显示全部楼层
axel可以直接apt安装,yum没试过
 楼主| 发表于 2021-5-7 23:51:42 | 显示全部楼层
zenghaochen 发表于 2021-5-7 23:50
axel可以直接apt安装,yum没试过

我刚最开始的时候也是用的apt安装,然后发现版本是2.12版本的...
用的时候还出现了ssl错误,在issue那看还是16年的bug... 所以还是github安装为好
发表于 2021-5-7 23:53:03 | 显示全部楼层
nnt 发表于 2021-5-7 23:51
我刚最开始的时候也是用的apt安装,然后发现版本是2.12版本的...
用的时候还出现了ssl错误,在issue那看 ...

az...我自己算是轻量用户,自己从微软那拉iso没啥问题
发表于 2021-5-8 00:02:08 | 显示全部楼层
技术贴必顶
发表于 2021-5-8 01:10:34 | 显示全部楼层
https is not supported yet
这个怎么解决,大佬们
 楼主| 发表于 2021-5-8 08:43:42 | 显示全部楼层
SSDHD 发表于 2021-5-8 01:10
https is not supported yet
这个怎么解决,大佬们

是axel嘛,我没遇到这个问题
发表于 2021-5-8 08:46:45 来自手机 | 显示全部楼层
还有个mwget
 楼主| 发表于 2021-5-8 09:37:48 | 显示全部楼层

mwget连个官方git都没有,下载地址看起来是个人网站...感觉一点都不靠谱
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宇宙主机交流论坛

GMT+8, 2024-10-31 07:25 , Processed in 0.065874 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表