在Linode VPS上搭建离线下载神器Aria2+WEBUI管理及对国内云盘看法

在Linode VPS上搭建离线下载神器Aria2+WEBUI管理及对国内云盘看法

在Linode VPS上搭建离线下载神器Aria2+WEBUI管理及对国内云盘看法

这年头vps商家都玩得比较HIGH,不少大硬盘的vps,之前的一般使用方法是当*看看外面的世界和Dropbox同步…… 然而现在流量用不完,所以找点其它用途吧,做个人下载服务器,这个方法不错,基于目前国内各大网盘环境,所以vps可能是另外一个选择。

为什么要花这么多时间去做这个事情呢?因为按照国内这么多云服务商的尿性来看,各家的云服务的质量基本上是动态变化的:最开始115是王者,资源多且不限速;迅雷也很不错,离线下载服务器基本上是国内最大的资源库,君不见和谐前迅雷的会员粘性多强啊…..如果开放搜索的话,不用说,那肯定是——–第一时间被告到破产……..和谐活动后,迅雷系开始衰弱,百度盘崛起,凭借超大的容量和后续跟上的资源累积速度,慢慢成为了国内最大的个人云服务;成为王者后,就开始了“速速散退,老子要开始耍流氓啦~”的模式:所有爱情动作片变8秒教育警示短片、开始大规模的限速(为了现在的百度云会员提速服务做铺垫)、砍各种外链(虽然这是形势所迫)……….然后,115的口碑居然又上来了,也不知道啥原因,离线基本成功率100%,真良心…….

以上这些过往历史,都充分说明了,这些云服务商是不能被充分信任的,资源的存储不是一个一劳永逸的过程,在还没化身为土豪、拥有上百TB的个人资料库前,我们应该怎么做呢?很简单,重要的、希望反复重温的东西,砸铁卖锅也要买个移动硬盘装着(而且现在不是很贵);对于其他的一些不太重要、可能想去探索的资源,就让他们在多个盘里待着吧~等到需要的时候,这种双向交流的能力就大大地体现出来了:个人服务器作为一个给力的中转中心,成为各个网盘的枢纽,既可以用aria2把数据从网盘商移出来(美国的VPS带宽大大地给力),又可以用各大网盘现有的离线下载服务从服务器存进去。这样,你的数据就不会被各种坏了良心的云服务商所胁迫。

好吧,不扯淡了,我们讲讲怎么安装aria2,这个基本上是一键……

1、搭建aria2

centos:

 
 
yum install aria2
1
yum install aria2

debian:

 
 
apt-get install aria2
1
apt-get install aria2

系统版本不同源自带的aria2版本也会不同,centos6的话是aria2 16.0X的版本,centos7能到18.x,至于debian,一向包更新的比较快,基本上都是18.x,当然,如果你对源自带的版本不满意,可以去sf下载源码自己编译,这个我就不说了,一般自带的版本也够用了,安装没啥问题,一般使用的话是直接在ssh里用命令下载:

 
 
单个文件下载
aria2c http://example.org/mylinux.iso

从两个来源(更多也可以)
aria2c http://a/f.iso ftp://b/f.iso

BitTorrent
aria2c http://example.org/mylinux.torrent

BitTorrent Magnet URI
aria2c 'magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C'

Metalink
aria2c http://example.org/mylinux.metalink

文本文件uri.text中的链接(URI)
aria2c -i uri.txt

显示种子中包含了哪些文件
aria2c -S bit.torrent

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
单个文件下载
aria2c http://example.org/mylinux.iso
 
从两个来源(更多也可以)
aria2c http://a/f.iso ftp://b/f.iso
 
BitTorrent
aria2c http://example.org/mylinux.torrent
 
BitTorrent Magnet URI
aria2c'magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C'
 
Metalink
aria2c http://example.org/mylinux.metalink
 
文本文件uri.text中的链接(URI)
aria2c-iuri.txt
 
显示种子中包含了哪些文件
aria2c-Sbit.torrent

但是这还是太麻烦了,所以我们选择是用web控制台管理,让aria2在后台监听,主要的是配置和其它的,全部的参数可以见:官方文档我们主要介绍常见的一些参数:

 
 
## '#'开头为注释内容, 选项都有相应的注释说明, 根据需要修改 ##
## 被注释的选项填写的是默认值, 建议在需要修改时再取消注释 ##

#允许rpc
enable-rpc=true
#允许所有来源, web界面跨域权限需要
rpc-allow-origin-all=true
#允许非外部访问
rpc-listen-all=true
#RPC端口, 仅当默认端口被占用时修改
#rpc-listen-port=6800

#用户名
rpc-user=hansen
#密码
rpc-passwd=123456789

###速度相关

#最大同时下载数(任务数), 路由建议值: 3
max-concurrent-downloads=5
#断点续传
continue=true
#同服务器连接数
max-connection-per-server=5
#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
min-split-size=10M
#单文件最大线程数, 路由建议值: 5
split=10
#下载速度限制
max-overall-download-limit=0
#单文件速度限制
max-download-limit=0
#上传速度限制
max-overall-upload-limit=0
#单文件速度限制
max-upload-limit=0
#断开速度过慢的连接
#lowest-speed-limit=0
#验证用,需要1.16.1之后的release版本
#referer=*

###进度保存相关

input-file=/root/aria2.session
save-session=/root/aria2.session
#定时保存会话,需要1.16.1之后的release版
#save-session-interval=60

###磁盘相关

#文件保存路径, 默认为当前启动位置
dir=/www/web/transmission
#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本
#disk-cache=0
#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
#enable-mmap=true
#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
#所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持
file-allocation=prealloc

###BT相关

#启用本地节点查找
bt-enable-lpd=true
#添加额外的tracker
#bt-tracker=<URI>,…
#单种子最大连接数
#bt-max-peers=55
#强制加密, 防迅雷必备
#bt-require-crypto=true
#当下载的文件是一个种子(以.torrent结尾)时, 自动下载BT
follow-torrent=true
#BT监听端口, 当端口屏蔽时使用
#listen-port=6881-6999
#aria2亦可以用于PT下载, 下载的关键在于伪装
#不确定是否需要,为保险起见,need more test
enable-dht=false
bt-enable-lpd=false
enable-peer-exchange=false
#修改特征
user-agent=uTorrent/2210(25130)
peer-id-prefix=-UT2210-
#修改做种设置, 允许做种
seed-ratio=0
#保存会话
force-save=true
bt-hash-check-seed=true
bt-seed-unverified=true
bt-save-metadata=true
#定时保存会话,需要1.16.1之后的某个release版本(比如1.16.2)
#save-session-interval=60

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
## '#'开头为注释内容, 选项都有相应的注释说明, 根据需要修改 ##
## 被注释的选项填写的是默认值, 建议在需要修改时再取消注释 ##
 
#允许rpc
enable-rpc=true
#允许所有来源, web界面跨域权限需要
rpc-allow-origin-all=true
#允许非外部访问
rpc-listen-all=true
#RPC端口, 仅当默认端口被占用时修改
#rpc-listen-port=6800
 
#用户名
rpc-user=hansen
#密码
rpc-passwd=123456789
 
###速度相关
 
#最大同时下载数(任务数), 路由建议值: 3
max-concurrent-downloads=5
#断点续传
continue=true
#同服务器连接数
max-connection-per-server=5
#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
min-split-size=10M
#单文件最大线程数, 路由建议值: 5
split=10
#下载速度限制
max-overall-download-limit=0
#单文件速度限制
max-download-limit=0
#上传速度限制
max-overall-upload-limit=0
#单文件速度限制
max-upload-limit=0
#断开速度过慢的连接
#lowest-speed-limit=0
#验证用,需要1.16.1之后的release版本
#referer=*
 
###进度保存相关
 
input-file=/root/aria2.session
save-session=/root/aria2.session
#定时保存会话,需要1.16.1之后的release版
#save-session-interval=60
 
###磁盘相关
 
#文件保存路径, 默认为当前启动位置
dir=/www/web/transmission
#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本
#disk-cache=0
#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
#enable-mmap=true
#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
#所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持
file-allocation=prealloc
 
###BT相关
 
#启用本地节点查找
bt-enable-lpd=true
#添加额外的tracker
#bt-tracker=<URI>,…
#单种子最大连接数
#bt-max-peers=55
#强制加密, 防迅雷必备
#bt-require-crypto=true
#当下载的文件是一个种子(以.torrent结尾)时, 自动下载BT
follow-torrent=true
#BT监听端口, 当端口屏蔽时使用
#listen-port=6881-6999
#aria2亦可以用于PT下载, 下载的关键在于伪装
#不确定是否需要,为保险起见,need more test
enable-dht=false
bt-enable-lpd=false
enable-peer-exchange=false
#修改特征
user-agent=uTorrent/2210(25130)
peer-id-prefix=-UT2210-
#修改做种设置, 允许做种
seed-ratio=0
#保存会话
force-save=true
bt-hash-check-seed=true
bt-seed-unverified=true
bt-save-metadata=true
#定时保存会话,需要1.16.1之后的某个release版本(比如1.16.2)
#save-session-interval=60

小白用户可以直接copy我的配置文件保存成aria2.conf进行使用.

2、远程管理

  1. 开启RPC远程管理命令

 
 
aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all -c -D
1
aria2c--enable-rpc--rpc-listen-all=true--rpc-allow-origin-all-c-D

#说明: 这个命令在VPS上运行即可开启rpc服务,可以用多种方式进行远程管理,但貌似不会保存配置文件,重启后会丢失之前的下载记录

  • 让配置文件不丢失

把上面保存的 aria2.conf 文件到/root/ 或者其他目录, 之后运行

 
 
aria2c --conf-path=/root/aria2.conf --disable-ipv6=true -D
1
aria2c--conf-path=/root/aria2.conf--disable-ipv6=true-D

  • 开机自动启动,把命令添加到rc.local的最后一行

 
 
vi /etc/rc.d/rc.local
aria2c --conf-path=/root/aria2.conf --disable-ipv6=true -D &
1
2
vi/etc/rc.d/rc.local
aria2c--conf-path=/root/aria2.conf--disable-ipv6=true-D&

3、远程管理

WEB UI:http://aria2.ghostry.cn(根据个人审美选择下载吧),当然你也可以使用别人架设的,aria2c.comhttp://ziahamza.github.io/webui-aria2/

windows: 需要的自己搜索下,我没有使用
安卓:需要的自己搜索下,我没有使用

4、FAQ

A. WEB管理界面删除任务后不会自动删除文件,还需要自己去服务器上删除.

B. 下载百度网盘可以使用 chrome浏览器 加 百度网盘助手 插件,
迅雷离线也差不多,我没有试,需要的可以自己搜索.

C. 附件里的配置文件可以设置帐号密码,当然你可以自己删掉,貌似百度网盘助手不支持帐号密码,所以要使用它就必须删掉..

D. 没有aria2.session文件的话,自己新建一个

1
echo '' > /root/aria2.session;

 
上一篇:android 回调函数二:应用实例


下一篇:蓝牙防丢器原理、实现与Android BLE接口编程