Aria2

Aria2是一款开源下载工具,可简化不同设备和服务器之间的下载过程,支持磁力链接、BT种子、http等类型的文件下载,具有优秀性能及较低的资源占用,架构轻巧。

Aria2

  • upported protocols
    • HTTP(S)
    • FTP
    • SFTP
    • BitTorrent(BT)
    • Metalink

启动设置

设置环境变量

1.将aria2c.exe放置在自定义文件夹。

2.将<自定义文件路径>添加至环境变量PATH即可。

3.终端中输入aria2c即可(可自定义该执行文件名称)。

Start.vbs

1
2
3
4
5
CreateObject("WScript.Shell").Run "aria2c.exe --conf-path=D:\Applications\Aria2\aria2.conf",0
'aria2c.exe为环境变量下的aria2c.exe文件'
'若没有定义PATH,需要在同级目录下'
'--conf-path=D:\Applications\Aria2\aria2.conf为配置文件路径'
'可生成快捷f'

Start.bat(同vbs)

1
2
@echo off & title Aria2
aria2c.exe --conf-path=aria2.conf

Stop.bat

1
2
3
@echo off & title Aria2 Stop
Taskkill /F /IM aria2c.exe
pause > nul

Restart.bat

1
2
Taskkill /F /IM aria2c.exe
start Start.vbs

Boot.bat

1
2
3
4
5
6
7
@echo off & title Aria2 开机启动
echo 1.将 Aria2 设为开机启动
echo 2.取消 Aria2 开机启动
set /p aria2= 请输入对应的序号:
IF %aria2% EQU 1 (REG ADD HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ /v Aria2 /t REG_SZ /d %cd%\Start.vbs /f)
IF %aria2% EQU 2 (REG DELETE HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ /v Aria2 /f)
pause > nul

新建文件

  1. Aria2.log:日志文件

  2. aria2.session:下载历史文件

  3. aria2.conf:配置文件


UI

  1. Aria2 Web
  2. Aria2Ng
  3. webui-aria2
  4. yaaw

aria2.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# 文件的保存路径(可使用绝对路径或相对路径), 默认: 当前启动位置
dir=E:\Downloads
# 日志文件
log=E:\APP\Aria2\aria2.log
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
disk-cache=16M
# 断点续传
continue=true
# 客户端伪装
user-agent=netdisk;5.2.6;PC;PC-Windows;6.2.9200;WindowsBaiduYunGuanJia
referer=http://pan.baidu.com/disk/home

## 下载连接相关 ##
# 最大同时下载任务数, 运行时可修改, 默认:5
#max-concurrent-downloads=5
# 同一服务器连接数, 添加时可指定, 默认:1,最大为16
max-connection-per-server=6
# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载
min-split-size=10M
# 单个任务最大线程数, 添加时可指定, 默认:5
#split=5
# 整体下载速度限制, 运行时可修改, 默认:0
#max-overall-download-limit=0
# 单个任务下载速度限制, 默认:0
#max-download-limit=0
# 整体上传速度限制, 运行时可修改, 默认:0
#max-overall-upload-limit=0
# 单个任务上传速度限制, 默认:0
#max-upload-limit=0
# 禁用IPv6, 默认:false
#disable-ipv6=true
# 连接超时时间, 默认:60
#timeout=60
# 最大重试次数, 设置为0表示不限制重试次数, 默认:5
#max-tries=5
# 设置重试等待的秒数, 默认:0
#retry-wait=0
# 后台运行
daemon=true

## 进度保存相关 ##
# 从会话文件中读取下载任务
input-file=E:\APP\Aria2\aria2.session
# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件
save-session=E:\APP\Aria2\aria2.session
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
#save-session-interval=60

## RPC相关设置 ##
# 启用RPC, 默认:false
enable-rpc=true
# 允许所有来源, 默认:false
rpc-allow-origin-all=true
# 允许非外部访问, 默认:false
rpc-listen-all=true
# 事件轮询方式, 取值:[epoll, kqueue, port, poll, select], 不同系统默认值不同
#event-poll=select
# RPC监听端口, 端口被占用时可以修改, 默认:6800
rpc-listen-port=6800
# 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项
#rpc-secret=<TOKEN>
# 设置的RPC访问用户名, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-user=<USER>
# 设置的RPC访问密码, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-passwd=<PASSWD>
# 是否启用 RPC 服务的 SSL/TLS 加密,启用加密后 RPC 服务需要使用 https 或者 wss 协议连接
#rpc-secure=true
# 在 RPC 服务中启用 SSL/TLS 加密时的证书文件,使用 PEM 格式时,您必须通过 --rpc-private-key 指定私钥
#rpc-certificate=/path/to/certificate.pem
# 在 RPC 服务中启用 SSL/TLS 加密时的私钥文件
#rpc-private-key=/path/to/certificate.key

## BT/PT下载相关 ##

# 最小做种时间, 单位:分
# seed-time = 60
# 分离做种任务
bt-detach-seed-only=true
# 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true
#follow-torrent=true
# BT监听端口, 当端口被屏蔽时使用, 默认:6881-6999
listen-port=51413
# 单个种子最大连接数, 默认:55
#bt-max-peers=55
# 打开DHT功能, PT需要禁用, 默认:true
enable-dht=true
# 打开IPv6 DHT功能, PT需要禁用
#enable-dht6=false
# DHT网络监听端口, 默认:6881-6999
#dht-listen-port=6881-6999
# 本地节点查找, PT需要禁用, 默认:false
bt-enable-lpd=true
# 种子交换, PT需要禁用, 默认:true
enable-peer-exchange=true
# 每个种子限速, 对少种的PT很有用, 默认:50K
#bt-request-peer-speed-limit=50K
# 客户端伪装, PT需要
## 设置 peer id 前缀
peer-id-prefix=-TR2770-
user-agent=Transmission/2.77
# 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0
seed-ratio=0
# 强制保存会话, 即使任务已经完成, 默认:false, 较新的版本开启后会在任务完成后依然保留.aria2文件
#force-save=false
# BT校验相关, 默认:true
#bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=true
# 保存磁力链接元数据为种子文件(.torrent文件), 默认:false
bt-save-metadata=true


# Trackers


命令行

Aria2 Documentation

1
2
#aria2c [<OPTIONS>] [<URI>|<MAGNET>|<TORRENT_FILE>|<METALINK_FILE>] ...
aria2c https://dl101.zlibcdn.com/dtoken/c8bc6a947d196ee591a12c763f135b9faria2c https://w.wallhaven.cc/full/3z/wallhaven-3z32j3.jpg

Example

1.Download a file

1
$ aria2c "http://host/file.zip"

To stop a download, press Ctrl-C. You can resume the transfer by running aria2c with the same argument in the same directory.

2.Download a file from two different HTTP servers

1
$ aria2c "http://host/file.zip" "http://mirror/file.zip"

3.Download a file from one host using multiple connections

1
$ aria2c -x2 -k1M "http://host/file.zip"

Basic Options

  1. The directory to store the downloaded file.
1
-d, --dir=<DIR>
1
aria2c -d C:\Users\29921\Desktop https://w.wallhaven.cc/full/rd/wallhaven-rddgwm.jpg
  1. Downloads the URIs listed in FILE.
1
-i, --input-file=<FILE>
1
C:\Users\29921\Desktop>aria2c -i urls.txt
1
2
3
4
5
#urls.txt
https://w.wallhaven.cc/full/8o/wallhaven-8ok7vk.jpg
https://w.wallhaven.cc/full/g7/wallhaven-g75r7d.jpg
https://w.wallhaven.cc/full/8o/wallhaven-8oev1j.jpg
https://w.wallhaven.cc/full/j3/wallhaven-j3wqwm.jpg

You can specify multiple sources for a single entity by putting multiple URIs on a single line separated by the TAB character. Additionally, options can be specified after each URI line.Option lines must start with one or more white space characters (SPACE or TAB) and must only contain one option per line. Input files can use gzip compression.

  1. The file name of the log file.
1
-l, --log=<LOG>

If - is specified, log is written to stdout.If empty string(“ “) is specified, or this option is omitted, no log is written to disk at all.

1
aria2c -l aria2.log https://w.wallhaven.cc/full/rd/wallhaven-rdqxmm.jpg
  1. Set the maximum number of parallel downloads for every queue item.(Default:5)
1
-j, --max-concurrent-downloads=<N>
1
2
aria2c -i urls.txt -j1
aria2c -i urls.txt -j5
1
2
3
4
5
6
7
#urls.txt
https://w.wallhaven.cc/full/p8/wallhaven-p86z2j.jpg
https://w.wallhaven.cc/full/v9/wallhaven-v9py65.jpg
https://w.wallhaven.cc/full/vg/wallhaven-vgyozm.jpg
https://w.wallhaven.cc/full/j5/wallhaven-j55e7y.jpg
https://w.wallhaven.cc/full/83/wallhaven-83xjgo.jpg
https://w.wallhaven.cc/full/g8/wallhaven-g8yx37.jpg
  1. -V, –check-integrity [true|false]

Default: false

Check file integrity by validating piece hashes or a hash of entire file.If piece hashes are provided, this option can detect damaged portions of a file and re-download them. If a hash of entire file is provided, hash check is only done when file has been already download.

  1. -c, –continue [true|false]

Default: true

Continue downloading a partially downloaded file.Use this option to resume a download started by a web browser or another program which downloads files sequentially from the beginning. Currently this option is only applicable to HTTP(S)/FTP downloads

1
aria2c -cfalse https://dldir1.qq.com/music/clntupate/QQMusicSetup.exe