树莓派3B+ 远程下载服务器(Aria2)

it2023-08-27  98

树莓派3B+ 远程下载服务器(Aria2)

近来发现之前的部署的迅雷远程下载Xware在下载BT文件时会自动掉线,鉴于迅雷不在对该固件的维护,所以只能另辟蹊径,现在比较主流的下载服务就是Aria2了,它不仅拥有迅雷的下载能力,还在Linux上安装方便,以及参数可配置化。所以就找了些资料,将其部署在树莓派上。


1.安装aria2

附:aira2官方仓库:https://github.com/aria2/aria2/ 附:静态编译ARM树莓派:https://github.com/q3aql/aria2-static-builds/releases/download/v1.32.0/aria2-1.32.0-linux-gnu-arm-rbpi-build1.tar.bz2 教程使用的是直接安装软件源:

sudo apt install -y aria2 1

创建文件夹mkdir -p ~/.config/aria2/ 添加一个aria配置文件vim ~/.config/aria2/aria2.config

#后台运行 daemon=true #用户名 #rpc-user=user #密码 #rpc-passwd=passwd #设置加密的密钥 rpc-secret=secret #允许rpc enable-rpc=true #允许所有来源, web界面跨域权限需要 rpc-allow-origin-all=true #是否启用https加密,启用之后要设置公钥,私钥的文件路径 #rpc-secure=true #启用加密设置公钥 #rpc-certificate=/home/pi/.config/aria2/example.crt #启用加密设置私钥 #rpc-private-key=/home/pi/.config/aria2/example.key #允许外部访问,false的话只监听本地端口 rpc-listen-all=true #RPC端口, 仅当默认端口被占用时修改 #rpc-listen-port=6800 #最大同时下载数(任务数), 路由建议值: 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=* #文件保存路径, 默认为当前启动位置(我的是外置设备,请自行坐相应修改) dir=/media/piusb/TDDOWNLOAD #文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本 #disk-cache=0 #另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?) #enable-mmap=true #文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长 #所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持 file-allocation=prealloc #不进行证书校验 check-certificate=false #保存下载会话 save-session=/home/pi/.config/aria2/aria2.session input-file=/home/pi/.config/aria2/aria2.session #断电续传 save-session-interval=60 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960

注意:设置好配置,还要创建该会话空白文件touch /home/pi/.config/aria2/aria2.session 测试下aria2是否启动成功aria2c --conf-path=/home/pi/.config/aria2/aria2.config 用 ps aux|grep aria2 看是否有进程启动,若有说明启动成功了。 附:强制结束进程kill -9 3140(相应pid)


2.设置aria2服务和开机启动

我们用的Raspbian系统是使用systemd来管理服务的,会和最初init.d有一些差别。 我们创建并编辑aria.service文件sudo vim /lib/systemd/system/aria.service 并输入以下内容:

[Unit] Description=Aria2 Service After=network.target [Service] User=pi Type=forking ExecStart=/usr/bin/aria2c --conf-path=/home/pi/.config/aria2/aria2.config [Install] WantedBy=multi-user.target 123456789101112

重新载入服务,并设置开机启动sudo systemctl daemon-reloadsudo systemctl enable aria 查看aria服务状态sudo systemctl status aria 启动,停止,重启aria服务sudo systemctl(start、stop、restart) aria

3.aria2的web管理界面(AriaNg)

这里需要用到一个第三方的工具,这个是通过rpc接口来管理aria2下载的工具。

# 安装git和nginx sudo apt install -y git nginx # 下载aira-ng wget https://github.com/mayswind/AriaNg/releases/download/0.4.0/aria-ng-0.4.0.zip -O aira-ng.zip # 解压 unzip aira-ng.zip -d aira-ng # 将aira-ng放到nginx的/var/www/html/目录下,然后设置开机启动nginx sudo mv aira-ng /var/www/html/ sudo systemctl enable nginx 12345678910

用浏览器访问树莓派IP下的aira-ng,即:http://192.168.1.115/aira-ng 然后在系统设置点击AriaNg设置 –> 全局 –> 设置语言为中文 –> 点击RPC–>修改为 rpc 密钥:secret

然后就可以添加下载任务了!

4.浏览器插件

这些浏览器插件的功能就是将网页下载连接直接添加到aira2。Safari2Aria: 在Safari中管理Aria2,并且劫持默认下载方式115下载助手: 使用Aria2下载115资源 注:115网盘下载压缩包很大几率出现数据损坏BaiduExporter: 网盘助手, 使用Aria2下载百度网盘资源。YAAW for Chrome: 在chrome中直接内置一个YAAW,用于直接管理Aria2迅雷离线助手 将迅雷离线任务迁移到aria。

5.其他WebUI

可能有些朋友会觉得aira-ng样式不好看,所以在这提供几个相关的,安装部署就不介绍了。

YAAW: 下载地址: https://github.com/binux/yaaw

Webui-aria2:

下载地址: https://github.com/ziahamza/webui-aria2

Glutton:

下载地址: https://github.com/NemoAlex/glutton

6.下载速度慢问题

很多伙伴会发现,使用aria2没有迅雷下载快,甚至下不动,这是因为迅雷有自己的服务器,而Aria2没有加速服务器,有些种子一直没几个人上传导致只有几KB的速度甚至完全没速度,这种情况下该怎么办呢? 给Aria2添加Tracker,让Aria2不只是从DHT网络或者种子文件中存储的Tracker信息,从而找到更多的下载源。 这里建议添加trackers_best (20 trackers),最优的20条。 链接:https://github.com/ngosang/trackerslist

# 进入aira2配置 vim ~/.config/aria2/aria2.config # 添加如下(自行用“,”分隔每个tarck) bt-tracker=udp://tracker.coppersurfer.tk:6969/announce,udp://tracker.open-internet.nl:6969/anno
最新回复(0)