N1盒子安装aria2(带AriaNg前端)
文章目录
虽然网上有一键安装脚本,但是由于这次我的机子是ARM架构的CPU,所以在一键安装的时候出了问题,现在只好一步一步自己安装了
安装 AriaNg
AriaNg是一个很实用的Aria2前端
mkdir /root/AriaNg
cd /root/AriaNg
wget https://github.com/mayswind/AriaNg/releases/download/0.2.0/aria-ng-0.2.0.zip
unzip aria-ng-0.2.0.zip
要是提示command not found: unzip就先apt install unzip
安装 nginx
这边采用nginx作为web服务器,当然也可以使用apache
apt install nginx
创建.aria2文件夹,放置一些配置文件
mkdir /root/.aria2
创建一个nginx配置文件
vim /etc/nginx/conf.d/aria2.conf
server
{
listen 8081;
server_name _;
root "/root/AriaNg";
location / {
index index.html;
}
access_log /root/AriaNg/aria-access.log;
error_log /root/AriaNg/aria-error.log;
}
重启nginx
service nginx restart
这时候访问 http://主机IP:8081
Aria2是未连接状态,接下来我们安装aria2
注:如果出现403 forbidden,则需要进行如下修改:
vim /etc/nginx/nginx.conf
将第一行
user www-data;
修改为user root;
,然后重启nginx
安装 aria2
apt install aria2
如果安装不了的话可以换源或者参照下面方法直接编译安装。
wget https://github.com/aria2/aria2/releases/download/release-1.34.0/aria2-1.34.0.tar.bz2
tar -jxv -f aria2-1.34.0.tar.bz2
cd aria2-1.34.0
./configure
make
cd src
cp aria2c /usr/local/bin
创建配置文件
mkdir /root/aria2
创建download文件夹,用来放置后期aria2下载下来的文件
mkdir /root/download
修改文件夹权限
chown -R www-data:www-data /root/download
创建一个用于保存日志的文件
touch /root/aria2/aria2.session
创建aria2配置文件
nano /root/aria2/aria2.conf
#需要修改的基本在这开始
#文件保存路径, 默认为当前启动位置
dir=/sharedfolders/smb
# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件
input-file=/root/aria2/aria2.session
save-session=/root/aria2/aria2.session
# RPC监听端口, 端口被占用时可以修改, 默认:6800
rpc-listen-port=6800
# 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项
rpc-secret=ZaFvKu2JeRqY3Ijgkyun
#基本需要修改的结束
# 断点续传
continue=true
# 最大同时下载任务数, 运行时可修改, 默认:5
max-concurrent-downloads=5
# 单个任务最大线程数, 添加时可指定, 默认:5
split=30
# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M
min-split-size=10M
# 同一服务器连接数, 添加时可指定, 默认:1
max-connection-per-server=16
# 断开速度过慢的连接
lowest-speed-limit=0
# 整体下载速度限制, 运行时可修改, 默认:0
#max-overall-download-limit=0
# 单个任务下载速度限制, 默认:0
#max-download-limit=0
# 整体上传速度限制, 运行时可修改, 默认:0
#max-overall-upload-limit=0
# 单个任务上传速度限制, 默认:0
#max-upload-limit=0
# 禁用IPv6, 默认:false
#disable-ipv6=true
# 当服务器返回503错误时, aria2会尝试重连
# 尝试重连次数, 0代表无限, 默认:5
max-tries=0
# 重连冷却, 默认:0
#retry-wait=0
## 进度保存相关 ##
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=30
# 强制保存会话, 即使任务已经完成, 默认:false
# 较新的版本开启后会在任务完成后依然保留.aria2文件
#force-save=false
## RPC相关设置 ##
# 启用RPC, 默认:false
enable-rpc=true
# 允许所有来源, 默认:false
rpc-allow-origin-all=true
# 允许非外部访问, 默认:false
rpc-listen-all=true
# 事件轮询方式, 取值:[epoll, kqueue, port, poll, select], 不同系统默认值不同
#event-poll=kqueue
# 设置的RPC访问用户名, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-user=<USER>
# 设置的RPC访问密码, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-passwd=<PASSWD>
## 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需要禁用, 默认:true
enable-dht6=true
# DHT网络监听端口, 默认:6881-6999
dht-listen-port=6881-6999
# 本地节点查找, PT需要禁用, 默认:false
bt-enable-lpd=true
# 种子交换, PT需要禁用, 默认:true
enable-peer-exchange=true
# 每个种子限速, 对少种的PT很有用, 默认:50K
#bt-request-peer-speed-limit=50K
# 客户端伪装, PT需要
peer-id-prefix=-TR2770-
user-agent=Transmission/2.77
# 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0
#seed-ratio=0.01
# BT校验相关, 默认:true
#bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=true
# 保存磁力链接元数据为种子文件(.torrent文件), 默认:false
bt-save-metadata=true
# 强制加密, 防迅雷必备
bt-require-crypto=true
#bt-tracker 下载不能输在起跑线上
http://p4p.arenabg.com:1337/announce,
udp://tracker.opentrackr.org:1337/announce,
http://tracker.opentrackr.org:1337/announce,
udp://9.rarbg.com:2810/announce,
udp://open.tracker.cl:1337/announce,
http://tracker.openbittorrent.com:80/announce,
http://openbittorrent.com:80/announce,
udp://exodus.desync.com:6969/announce,
udp://www.torrent.eu.org:451/announce,
udp://tracker.torrent.eu.org:451/announce,
udp://tracker.tiny-vps.com:6969/announce,
udp://tracker.pomf.se:80/announce,
udp://tracker.dler.org:6969/announce,
udp://tracker.altrosky.nl:6969/announce,
udp://tracker.0x.tf:6969/announce,
udp://retracker.netbynet.ru:2710/announce,
udp://opentor.org:2710/announce,
udp://open.stealth.si:80/announce,
udp://mail.realliferpg.de:6969/announce,
udp://fe.dealclub.de:6969/announce,
udp://explodie.org:6969/announce,
udp://bt2.archive.org:6969/announce,
udp://bt1.archive.org:6969/announce,
https://tracker.nanoha.org:443/announce,
https://tracker.lilithraws.cf:443/announce,
https://tracker.iriseden.fr:443/announce,
http://t.nyaatracker.com:80/announce,
http://retracker.joxnet.ru:80/announce,
http://pow7.com:80/announce,
http://open.acgtracker.com:1096/announce,
http://bt.okmp3.ru:2710/announce,
udp://vibe.sleepyinternetfun.xyz:1738/announce,
udp://udp-tracker.shittyurl.org:6969/announce,
udp://u.wwwww.wtf:1/announce,
udp://tracker4.itzmx.com:2710/announce,
udp://tracker2.dler.org:80/announce,
udp://tracker1.bt.moack.co.kr:80/announce,
udp://tracker0.ufibox.com:6969/announce,
udp://tracker.zerobytes.xyz:1337/announce,
udp://tracker.zemoj.com:6969/announce,
udp://tracker.theoks.net:6969/announce,
udp://tracker.srv00.com:6969/announce,
udp://tracker.ololosh.space:6969/announce,
udp://tracker.monitorit4.me:6969/announce,
udp://tracker.moeking.me:6969/announce,
udp://tracker.loadbt.com:6969/announce,
udp://tracker.lelux.fi:6969/announce,
udp://tracker.leech.ie:1337/announce,
udp://tracker.jordan.im:6969/announce,
udp://tracker.haynet.io:6969/announce,
udp://tracker.fatkhoala.org:13710/announce,
udp://tracker.ddunlimited.net:6969/announce,
udp://tracker.blacksparrowmedia.net:6969/announce,
udp://tracker.bitsearch.to:1337/announce,
udp://tr2.ysagin.top:2710/announce,
udp://tr.cili001.com:8070/announce,
udp://tr.bangumi.moe:6969/announce,
udp://retracker.sevstar.net:2710/announce,
udp://public.tracker.vraphim.com:6969/announce,
udp://public.publictracker.xyz:6969/announce,
udp://open.publictracker.xyz:6969/announce,
udp://mts.tvbit.co:6969/announce,
udp://movies.zsw.ca:6969/announce,
udp://jeremylee.sh:6969/announce,
udp://inferno.demonoid.is:3391/announce,
udp://engplus.ru:6969/announce,
udp://discord.heihachi.pw:6969/announce,
udp://cutiegirl.ru:6969/announce,
udp://concen.org:6969/announce,
udp://code2chicken.nl:6969/announce,
udp://camera.lei001.com:6969/announce,
udp://bubu.mapfactor.com:6969/announce,
udp://bt.oiyo.tk:6969/announce,
udp://bclearning.top:6969/announce,
udp://admin.videoenpoche.info:6969/announce,
udp://abufinzio.monocul.us:6969/announce,
udp://6ahddutb1ucc3cp.ru:6969/announce,
https://w.wwwww.wtf:443/announce,
https://trackme.theom.nz:443/announce,
https://tracker.tamersunion.org:443/announce,
https://tracker.nitrix.me:443/announce,
https://tracker.madassnews.net:443/announce,
https://tracker.lelux.fi:443/announce,
https://tracker.kuroy.me:443/announce,
https://tracker.foreverpirates.co:443/announce,
https://t1.tokhmi.xyz:443/announce,
https://1337.abcvg.info:443/announce,
http://vps02.net.orel.ru:80/announce,
http://trackme.theom.nz:80/announce,
http://tracker4.itzmx.com:2710/announce,
http://tracker2.dler.org:80/announce,
http://tracker1.bt.moack.co.kr:80/announce,
http://tracker.zerobytes.xyz:1337/announce,
http://tracker.noobsubs.net:80/announce,
http://tracker.moeking.me:6969/announce,
http://tracker.loadbt.com:6969/announce,
http://tracker.lelux.fi:80/announce,
http://tracker.files.fm:6969/announce,
http://tracker.dler.org:6969/announce,
http://tr.cili001.com:8070/announce,
http://torrenttracker.nwc.acsalaska.net:6969/announce,
http://t.overflow.biz:6969/announce,
http://t.acg.rip:6699/announce,
http://rt.optizone.ru:80/announce,
http://retracker.sevstar.net:2710/announce,
http://open.acgnxtracker.com:80/announce,
http://h4.trakx.nibba.trade:80/announce,
http://fxtt.ru:80/announce,
http://fosstorrents.com:6969/announce,
http://1337.abcvg.info:80/announce,
## 磁盘相关 ##
#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
enable-mmap=true
# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc
# 预分配所需时间: 快none < trunc < falloc < prealloc慢
#file-allocation=trunc
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
disk-cache=64M
启动aria2c程序
aria2c –conf-path=/root/aria2/aria2.conf -D
老版本的启动方式,如1.30
aria2c –conf-path=”/root/aria2/aria2.conf” -D
设置开机启动
nano /etc/rc.local
在exit 0 上面插入下面内容
aria2c --conf-path=/root/aria2/aria2.conf -D
至此,aria2服务端就配置好了,我们要随时方便的使用aria2c程序的话,还需要一个webui,我选择的是ariang。
需要先将rpc-secret的值SECRET修改为一个复杂一点的值
测试是否能正常启动
aria2c --conf-path=/root/aria2/aria2.conf
没问题
在浏览器上设置一下密钥,密钥为刚才自己设置的SECRET
设置完刷新页面后,aria2的状态现在已经变成已连接了
完成
接下来为可选配置:
nano /etc/systemd/system/aria2c.service:
[Unit]
Description=Aria2c
[Service]
TimeoutStartSec=0
ExecStart=/usr/bin/aria2c --conf-path=/etc/aria2/aria2.conf
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
复制代码启动、开机自启命令:
systemctl enable aria2c.service
systemctl start aria2c.service
配置成系统服务
vim /etc/init.d/aria2
#! /bin/sh
### BEGIN INIT INFO
# Provides: aria2
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: no-description
# Description: no-description
### END INIT INFO
start()
{
nohup aria2c --conf-path=/root/aria2/aria2.conf > /root/aria2/aria2.log 2>&1 &
exit 0
}
stop()
{
killall aria2c &>/dev/null
exit 0
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 3
start
;;
*)
echo "Usage: /etc/init.d/aria2 {start|stop|restart}"
exit 0
;;
esac
exit 0
update-rc.d aria2 defaults
接下来可以使用 service aria2 start|stop|restart
来启动|停止|重启 aria2 了,并且服务为开机自启
设置自动更新BT Tracker服务器
nano /root/aria2/trackers-list-aria2.sh
#!/bin/bash
service aria2c stop
list=`wget -qO- https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt|awk NF|sed ":a;N;s/\n/,/g;ta"`
if [ -z "`grep "bt-tracker" /root/aria2/aria2.conf`" ]; then
sed -i '$a bt-tracker='${list} /root/aria2/aria2.conf
echo add......
else
sed -i "s@bt-tracker.*@bt-tracker=$list@g" /root/aria2/aria2.conf
echo update......
service aria2c start
fi
chmod +x /root/aria2/trackers-list-aria2.sh
执行
/root/aria2/trackers-list-aria2.sh
添加成功,现在,我们设置一个定时程序,来更新这个BT Tracker服务器地址
crontab -e
* */6 * * * /root/aria2/trackers-list-aria2.sh
为了防止aria2崩了,每半小时重启一下aria2
*/30 * * * * service aria2 restart
牛逼Plus
2021-08-17 下午 6:31