使用jail自建服务教程之三:打造aria2下载利器
本篇将介绍如何在jail里安装、配置aria2下载利器。aria2可以实现远程下载、离线下载,支持 HTTP / FTP / BT / Magnet磁力链接等类型下载(不过不支持迅雷、ed2k链接),最关键的是,它不限制速度,它不限制速度,它不限制速度!!!废话少说,下面进入正题。
1.建立jail
请点击看此篇:使用JAIL自建服务教程之一:JAIL创建和优化!
2.安装aria2
安装很简单,只要一个命令:
pkg install -y aria2
3.设置开机启动
nano /etc/rc.conf
在最后加一行:aria2_enable=”YES”,按ctrl+O保存,ctrl+X退出文本编辑器。
4.创建工作目录
mkdir /mnt/aria2 #配置文件存放目录 mkdir /mnt/download #下载目录
5.创建配置文件和session文件
nano /mnt/aria2/aria2.conf
写入如下内容,并保存
## 文件保存相关## # 文件的保存路径(可使用绝对路径或相对路径), 默认: 当前启动位置 dir=/mnt/download # 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M disk-cache=64M # 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc 预分配所需时间: # none < falloc ? trunc < prealloc # falloc和trunc则需要文件系统和内核支持 NTFS建议使用falloc, # EXT3/4建议trunc, MAC 下需要注释此项 file-allocation=none # 断点续传 continue=true #不进行证书校验 check-certificate=false ## 下载连接相关 ## # 最大同时下载任务数, 运行时可修改, 默认:5 max-concurrent-downloads=20 # 同一服务器连接数, 添加时可指定, 默认:1 max-connection-per-server=15 # 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M # 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载 min-split-size=10M # 单个任务最大线程数, 添加时可指定, 默认:5 split=10 # 整体下载速度限制, 运行时可修改, 默认:0 max-overall-download-limit=0 # 单个任务下载速度限制, 默认:0 max-download-limit=0 # 整体上传速度限制, 运行时可修改, 默认:0 max-overall-upload-limit=100K # 单个任务上传速度限制, 默认:0 max-upload-limit=0 # 禁用IPv6, 默认:false disable-ipv6=true ## 进度保存相关 ## # 从会话文件中读取下载任务 input-file=/mnt/aria2/aria2.session # 在Aria2退出时保存`错误/未完成`的下载任务到会话文件 save-session=/mnt/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 # 允许所有来源, 默认: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=123456 # 设置的RPC访问用户名, 此选项新版已废弃, 建议改用 --rpc-secret 选项 #rpc-user=<user> # 设置的RPC访问密码, 此选项新版已废弃, 建议改用 --rpc-secret 选项 #rpc-passwd=<passwd> #是否启用https加密,启用之后要设置公钥,私钥的文件路径 rpc-secure=false #启用加密设置公钥 #rpc-certificate= #启用加密设置私钥 #rpc-private-key= ## BT/PT下载相关 ## # 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true follow-torrent=true # BT监听端口, 当端口被屏蔽时使用, 默认:6881-6999 listen-port=56789 # 单个种子最大连接数, 默认: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=false # 种子交换, PT需要禁用, 默认:true enable-peer-exchange=false # 每个种子限速, 对少种的PT很有用, 默认:50K bt-request-peer-speed-limit=8M # 客户端伪装, PT需要 peer-id-prefix=-TR2770- user-agent=Transmission/2.77 # 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0 seed-ratio=1.0 # 强制保存会话, 即使任务已经完成, 默认:false #较新的版本开启后会在任务完成后依然保留.aria2文件 force-save=false # BT校验相关, 默认:true bt-hash-check-seed=true #继续之前的BT任务时, 无需再次校验, 默认:false bt-seed-unverified=true # 保存磁力链接元数据为种子文件(.torrent文件), 默认:false bt-save-metadata=false #bt-tracker数据来自https://github.com/ngosang/trackerslist/blob/master/trackers_all.txt bt-tracker=udp://62.138.0.158:6969/announce,udp://188.241.58.209:6969/announce,udp://93.158.213.92:1337/announce,udp://62.210.97.59:1337/announce,udp://151.80.120.113:2710/announce,udp://151.80.120.112:2710/announce,udp://208.83.20.20:6969/announce,udp://5.206.54.49:6969/announce,udp://159.100.245.181:6969/announce,udp://185.181.60.67:80/announce,udp://54.37.235.149:6969/announce,udp://91.216.110.52:451/announce,udp://35.156.19.129:6969/announce,udp://142.44.243.4:1337/announce,udp://51.15.40.114:80/announce,udp://176.113.71.19:6961/announce,udp://184.105.151.164:6969/announce,udp://46.148.18.250:2710/announce,udp://15.188.67.15:6969/announce,udp://46.148.18.254:2710/announce
新建一个空的session文件,不过无法直接保存,写入一个字符再删除掉就可以保存了。
nano /mnt/aria2/aria2.session
6.测试程序是否正常工作
aria2c --conf-path=/mnt/aria2/aria2.conf
如果如下图所示,显示“IPv4 RPC:正在监听 TCP 端口 6800”说明正常。然后按”CTRL+C”退出程序。
7. 更改启动配置文件
nano /usr/local/etc/rc.d/aria2
将aria2_config=${aria2_config:-“/usr/local/etc/aria2.conf”}里的conf文件路径改一下
改成:
aria2_config=${aria2_config:-"/mnt/aria2/aria2.conf"}
8.映射下载目录到freenas主机
首先在freenas的web界面中关闭jail,然后点击jail选项中的“挂载点”,添加挂载目录
然后点击右上角的“ACTIONS”菜单,选择“Add Mount Point”
“源”目录选择你需要映射的主机中的目录,通常是可共享的目录;“目标”目录选择jail中建立的下载目录,点“保存”。
需要注意的是,目录必须设置为可写的,否则无法下载文件。
9.启动aria2程序
启动jail,这时候aria2应该应能自动启动了。如果不放心,可以输入如下命令看一下:
service aria2 status
10.使用webUI
有多种webUI可连接aria2服务器,我这里选用AriaNg。 AriaNg 现在提供三种版本, 标准版、单文件版和 AriaNg Native。 标准版适合在 Web 服务器中部署, 提供资源缓存和按需加载的功能;单文件版适合本地使用, 您下载后只要在浏览器中打开唯一的 html 文件即可; AriaNg Native 同样适合本地使用, 并且不需要使用浏览器。 标准版和单文件版下载地址在此(其中AllInOne为单文件版), AriaNg Native 下载地址在此(有windows和macOS版)。这里以
AriaNg Native 作为演示。
下载后解压,不需要安装,打开主程序“AriaNg Native”。
界面如下:
按下图所示,配置相关参数连接aria2服务器,并重新加载AriaNg。
连接成功后,会显示“已连接”,如下图。
11.手机客户端
我的是安卓手机,可以下载“Aria2App”
设置里面同样配置参数后连接aria2服务器,请自行摸索,这里就不介绍了。App下载界面如下:
以上,一个远程下载服务器就搭建完成了。需要说明的一点是,还需要在路由中进行端口转发,BT和磁链下载才会快,不然会没有速度。
声明:本文为本站【NASGEEK】原创文章,未经许可不得转载!