[TOC]
1.前言
描述:对于某度或者某讯来说,普通用户下载的速度可是少得可怜几KB几KB得,这时候我们这篇文章就尤为重要了;
常用得方式(方法):
- BaiduCDP:https://laod.cn/tools/baiducdp.html
- PanDownload(AAP/网页版本): http://pandownload.com/
用户脚本管理器:https://greasyfork.org/zh-CN
- Chrome:https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo
- Firefox:https://addons.mozilla.org/firefox/addon/tampermonkey/
百度云在线解析网站
Xdown官方网站:https://xdown.org/
2.Aria2-AriaNg
描述:Aria2作为一款Linux下的下载神器,很多极客都在使用,可以下载http资源.种子文件、磁力链接等,功能强大,而且整合Chrome插件可以摆脱百度云盘的速度限制
。
简单的说可以直接利用网页ariang监听Aria2开放的6800端口进行简化下载输入命令的复杂性,结合Pandownload进行提取出URL简直爽歪歪;
Aria2具有特点:
- 1、高速,自动多线程下载;断点续传;
- 2、轻量占用内存非常少,通常情况平均4~9MB内存占用(官方介绍);
- 3、多平台。支援 Win/Linux/OSX/Android 等操作系统下的部署;
- 4、模块化。分段下载引擎,文件整合速度快;
- 5、支持RPC界面远程;
- 6、全面支持BitTorrent协议;
联合使用产品:
- AriaNg:https://github.com/mayswind/AriaNg
- Aria2官网:https://aria2.github.io/
- Win64:https://pan.baidu.com/s/1-GFkG3l2XNwtiuO4Ffbsdw (开箱即用)
(1) 操作流程
打开AriaNg网页测试:http://ariang.mayswind.net/latest/#!/downloading
再AriaNg设置中设置Aria2 RPC 信息

WeiyiGeek.
运行aria2c进行监听6801端口
1
PS F:\ChoromeDownload\aria2\aria2> aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all --rpc-listen-port=6801 -c -D
刷新Ariang页面进行本地得Aria2链接;

WeiyiGeek.
- 新建下载链接进行下载即可;

WeiyiGeek.
(2) Aria2安装
描述:在Linux中aria2不能向在Win中进行开箱即用,需要进行相应得配置,并且是可以安装在路由器上面的;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21#yum安装
yum install epel-release #安装EPEL源 = EPEL的全称叫 Extra Packages for Enterprise Linux
yum install aria2 -y
#编译安装,Aria2 1.17.1以上版本要求gcc >= 4.8.3 or clang >= 3.4
yum -y install clang #安装clang
#安装GCC,通过SCL安装GCC
#CentOS 6
wget https://copr.fedoraproject.org/coprs/rhscl/devtoolset-3/repo/epel-6/rhscl-devtoolset-3-epel-6.repo -O /etc/yum.repos.d/rhscl-devtoolset-3-epel-6.repo
yum install devtoolset-3-gcc devtoolset-3-gcc-c++ devtoolset-3-binutils devtoolset-3-gcc-gfortran
scl enable devtoolset-3 bash #启用SCL环境中新版本GCC
gcc --version #检查反馈的第一行是不是gcc (GCC) 4.9.2 20150212 (Red Hat 4.9.2-6),是的话说明环境成功
#编译Aria2
wget https://github.com/aria2/aria2/releases/download/release-1.29.0/aria2-1.29.0.tar.gz #这里可以自己替换最新的版本
tar xzvf aria2-1.29.0.tar.gz
cd aria2-1.29.0
./configure
make
make install
man aria2c #这个是aria2使用手册,看得懂的看,看不懂就不用运行。如果运行了,按一下Q键就可以退出
管理脚本(推荐)
该脚本默认使用配置文件启动,可自行修改配置文件内容1
2
3
4
5
6wget http://7jps5o.com1.z0.glb.clouddn.com/aria2/conf/aria2 -O /etc/init.d/aria2
chmod +x /etc/init.d/aria2
启动 : /etc/init.d/aria2 start
停止:/etc/init.d/aria2 stop
重启:/etc/init.d/aria2 restart
(3) Aria2配置
在/root目录创建aria2文件夹,在文件夹内创建aria2.session和aria2.log文件并且创建配置aria2.conf1
2mkdir .aria2 & cd .aria2
touch aria2.session aria2.log
注意:需要修改文件保存路径和RPC授权令牌,以备注“手动更改”。 保存并修改以下代码创建为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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135## 文件保存相关 ##
# 文件默认保存路径设置
dir=/home/data
# 文件自动重命名
auto-file-renaming=false
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
disk-cache=32M
# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc
# 预分配所需时间: none < falloc ? trunc < prealloc
# falloc和trunc则需要文件系统和内核支持
# NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项
file-allocation=none
## 下载相关设置 ##
# URI复用
reuse-un=false
# 断点续传
continue=true
# 运行并发连接
follow-torrent=true
# 禁用netrc记录账号密码用于自动登录服务器
no-netrc=true
# 最大尝试次数
max-tries=0
# 文件未找到重试次数
max-file-not-found=5
# 使用UTF-8处理Content-Disposition
content-disposition-default-utf8=true
# 最大同时下载任务数,运行时可修改, 默认:5
max-concurrent-downloads=10
# 每个服务器最大连接数, 默认:1
max-connection-per-server=6
# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M
# 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载
min-split-size=10M
# 单任务连接数,默认:5
split=20
# 整体下载速度限制, 运行时可修改, 默认:0
max-overall-download-limit=0
## 上传相关设置 ##
# 整体上传速度限制, 运行时可修改, 默认:0
#max-overall-upload-limit=0
# 单个任务上传速度限制, 默认:0
max-upload-limit=2M
# 启用对等交换
enable-peer-exchange=true
# 对等交互特征
peer-id-prefix=-TR2770-
## 网络监听设置 ##
# 禁用IPv6, 默认:false
disable-ipv6=true
## aria2设置 ##
# 禁用控制台输出
quiet=true
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=60
# 启动加载文件
input-file=/root/.aria2/aria2.session
# 状态保存文件,在Aria2退出时保存`错误/未完成`的下载任务到会话文件
save-session=/root/.aria2/aria2.session
# 延迟加载input-file
deferred-input=true
# 客户端伪装, PT需要
peer-id-prefix=-TR2770-
# 请求的User-Agent设置
user-agent=Transmission/2.77
## BT/PT下载相关 ##
# 当下载的是一个种子(以.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
# 分离仅做种的任务
bt-detach-seed-only=true
# 每个种子限速, 对少种的PT很有用, 默认:50K
# bt-request-peer-speed-limit=50K
# 做种时间30分钟
seed-time=30
# 当种子的分享率达到这个数时, 自动停止做种, 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
# 无速度自动停止时间 秒
bt-stop-timeout=180
# tracker地址
bt-tracker=udp://62.138.0.158:6969/announce,udp://188.241.58.209:6969/announce,udp://93.158.213.92:1337/announce,udp://151.80.120.114:2710/announce,udp://151.80.120.114:2710/announce,udp://208.83.20.20:6969/announce,udp://5.206.19.247:6969/announce,udp://37.235.174.46:2710/announce,udp://54.37.235.149:6969/announce,udp://89.234.156.205:451/announce,udp://159.100.245.181:6969/announce,udp://185.181.60.67:80/announce,udp://194.143.148.21:2710/announce,udp://185.19.107.254:80/announce,udp://51.15.226.113:6969/announce,udp://142.44.243.4:1337/announce,udp://51.15.40.114:80/announce,udp://176.113.71.19:6961/announce,udp://46.148.18.250:2710/announce,udp://46.148.18.254:2710/announce
## 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
# 随机监听范围内的端口
listen-port=6881-6999
# RPC监听端口, 端口被占用时可以修改, 默认:6800
rpc-listen-port=6800
# 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项
rpc-secret=<TOKEN>
# 设置的RPC访问用户名, 此选项新版已废弃, 建议改用 --rpc-secret 选项
rpc-user=ruyo
# 设置的RPC访问密码, 此选项新版已废弃, 建议改用 --rpc-secret 选项
rpc-passwd=RUYO.net
配置文件详细说明1
2
3mkdir /etc/aria2/
cat /dev/null & /etc/aria2/aria2.session
wget https://00img.top/data/20161060575174457728.conf -O /etc/aria2/aria2.conf
(4) Aria2使用
- 开启aria2
默认情况下第一种的启动方法是没有保存设定的功能的,重启服务或服务器配置都会丢失。-D 用于后台执行,daemon 模式,这样ssh断开连接后程序不会退出和screen一样的效果这样便可以与AriaNg网页端进行联用;
1
2
3
4
5
6
7
8
9#第一种方法
aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all -c -D
#第二种方法(推荐)
aria2c --conf-path=/root/.aria2/aria2.conf -D
#开机自动启动aria2,只需要将第二种方法添加至/etc/rc.d/rc.local文件底部
#注意:centos7以后官方将/etc/rc.d/rc.local 的开机自启的权限默认禁止了.如果需要开启执行以下代码
chmod +x /etc/rc.d/rc.local
实际案例: WeiyiGeek.aria2c下载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#0.URL有缩减可以直接进行下载
aria2c "http://d0.baidupcs.com/file/a98b34355bccd232f85e4dc2f443118e" --header "User-Agent: WeiyiGeek/1.23.3"
#1.直接在命令行下载,下载完成后自动退出,就和wget 的工作方式一样。
aria2c "download.url"
#2.Aria2命令行使用。
#使用Aria2下载文件,只需在命令后附加地址即可。如:
aria2c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.6.tar.bz2
#3.分段下载。利用Aria2的分段下载功能可以加快文件的下载速度,对于下载大文件时特别有用。为了使用aria2的分段下载功能,你需要在命令中指定 -s 选项。如:
aria2c -s 2 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.6.tar.bz2 #这将使用2连接来下载该文件。-s后面的参数值介于1~5之间,你可以根据实际情况选择。
#4.断点续传。在命令中使用-c选项可以断点续传文件。如:
aria2c -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.6.tar.bz2
#5.下载tor-rent文件。你也可以使用Aria2下载BitTor—-rent文件。如:
aria2c -o gutsy.torrent http://cdimage.ubuntu.com/daily-live/current/gutsy-desktop-i386.iso.tor-rent
#6.后台下载
aria2c -D url
aria2c –deamon=true url
#7.验证文件
aria2c –checksum=md5=别人提供的md5
#8.B-T下载
aria2c /tmp/CentOS-6.3-i386-bin-DVD1to2.torr-ent
aria2c http://mirrors.163.com/centos/6.6/isos/x86_64/CentOS-6.6-x86_64-minimal.tor-rent
#9.设置dht端口
aria2c –dht-listen-port=1234 .torrent
#10.下载需要引用页的文件
aria2c –referer=referurl url
#11.限速下载
aria2c –max-download-limit=500k url //单个文件
aria2c –max-overall-download-limit=500k url //全局
#12.下载需要Cookie验证的文件
aria2c –essay-header='Cookie:cookie名称=cookie内容' url
aria2c –load-cookies=cookie文件 url
#13.批量下载文本中所有URL
aria2c -i uris.txt
#注意:当源地址存在诸如&,*等shell的特殊字符,请使用单引号或双引号把URI包含起来。
RPC Server模式:该模式可以配合下文的图形管理。
默认启动是 6800 端口,怕别人盗用可以设置用户名和密码(1.18.4以上版本支持密钥)
。
(5) 安装AriaNg
AriaNg是一个web端网站,需要自行安装php服务器,可使用lnmp等一键安装包,安装完服务器并解析域名后,进入网站根目录,直接下载最新版的AriaNg压缩包并解压。1
2
3#最新版本的可以打开链接查看 https://github.com/mayswind/AriaNg/releases
wget https://github.com/mayswind/AriaNg/releases/download/1.1.3/AriaNg-1.1.3.zip
unzip AriaNg-1.1.3.zip
点击AriaNg设置进入RPC设置,因为之前aria2都配置好了,只需要输入正确的Aria2 RPC 密钥即可,对就是之前手动修改的RPC授权令牌。 WeiyiGeek.
(6) 其他Aria2图形管理
图形管理界面可以不用和Aria2放到同一台机器上,也可以直接使用别人搭建好的UI。
比如以下这些都是可以的,直接将你的RCP信息输入即可。
PS: 你输入的信息只会保存在你本地,不会上传到别人的服务器上,代码都是开源的。
- http://aria2.jike.info
- http://binux.github.io/yaaw/demo
- http://aria2c.com
- http://ariang.mayswind.net
方法总结:
- Aria2 Web UI:支持中文,能管理其他服务器上的aria2程序。
git clone https://github.com/ziahamza/webui-aria2
- YAAW:
git clone https://github.com/binux/yaaw