前序
环境:香橙派、Ubuntu20 server、nginx、aria2c、AriaNg、一个小U盘(下载文件到此)
我是在香橙派上搭建的,写博客的时候用虚拟机重新做了一遍。如果你有云服务器或者其他Pi方法也都大同小异。
挂载U盘
如果你的存储空间足够大现在可以直接去下一步。
fdisk -l
使用该命令可以查看到我们的U盘设备为/dev/sdb
fdisk /dev/sdb # 对U盘进行分区,/dev/sdb就是U盘的设备路径
然后我们按m查看帮助或者直接按n添加一个新的分区,
然后就是设置分区号(默认就好)
然后就是设置起止扇区号,这里我用了所有的扇区也就是34–2047
此时按w写入并保存
这里我们再使用fdisk -l 查看我们刚刚创建的分区路径,并对其进行格式化。
mkfs -t ext4 /dev/sdb #对分区进行格式化
mkdir /mnt/Upan
mount /dev/sdb /mnt/Upan #将sdb分区挂载到/mnt/Upan这个目录
安装服务
apt update
apt install nginx aria2
输入PI的ip地址 出现这个界面就是安装成功了
AriaNg 地址:https://github.com/mayswind/AriaNg/releases
这里我用的Allone的版本,意思就是整个界面都只用了一个html,另外一个文件很多,在部署的时候如果遇到某些文件无法加载可以在网站根目录(nginx默认为/var/www)使用
chmod +xr *
来对文件赋予权限。
我们把index.html放到/var/www/html底下(原先的文件可以直接删除了)
出现这个界面就ok
配置aria2服务
mkdir ~/.aria2
touch ~/.aria2/aria2.session
vim ~/.aria2/aria2.conf
aria2.session是服务的会话文件
aria2.conf是服务的配置文件
在aria2.conf中写入以下:
dir=/mnt/Upan
disable-ipv6=true
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
#rpc-listen-port=6800
continue=true
input-file=/root/.aria2/aria2.session
save-session=/root/.aria2//aria2.session
max-concurrent-downloads=6
# BT 监听端口
listen-port = 51413
#DHT 网络监听端口
dht-listen-port=6881-6999
做完这些运行
aria2c -conf-path=~/.aria2/aria2.conf
测试没有错误的话 Ctrl + c终止
现在把aria2做成系统服务
进入到/etc/init.d/目录下
新建一个文件aria2c
写入以下内容
#!/bin/sh
### BEGIN INIT INFO
# Provides: aria2
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Aria2 Downloader
### END INIT INFO
case "$1" in
start)
echo -n "Starting aria2c"
aria2c --conf-path=/root/.aria2/aria2.conf -D
;;
stop)
echo -n "Shutting down aria2c "
killall aria2c
;;
restart)
killall aria2c
aria2c --conf-path=/root/.aria2/aria2.conf -D
;;
esac
exit
赋予文件执行权限
chmod +x aria2c #赋予权限
update-rc.d aria2c defaults
现在使用service aria2c start 就可以启动服务了
我在香橙派搭建的时候这里并没有顺利启动,而是给我报了一个错误,细节是提示没有这么文件或目录。这里的原因是这个脚本我是在win10上创建好后传上去的,由于种种原因,造成了意外回车无法正确读取脚本。解决方法是 使用这条指令 sed -i -e ‘s/\r//g’ /etc/init.d/aria2c
原文地址Starting service on Linux throws a No such file or directory error
此时再次进我们的网站看到Aria2的状态为已连接就可以使用了
优化速度
经过以上步骤后虽然可以当作一个离线下载服务器,但是下载速度还是很感人。所以还需要我们手动添加BT 服务器。
我们可以直接在网站的Aria2设置中找到BitTorrent设置,在BT服务器地址一栏添加服务器,每个服务器用,隔开。最后一个地址后面不用加逗号。
也可以在aria2.conf中添加,在文件末尾加入bt-tracker=服务器地址,同样每个服务器地址用,隔开。添加完后重启服务。