mirror of
https://github.com/monlor/MIXBOX-ARCHIVE.git
synced 2026-04-29 14:04:03 +00:00
moxbox init
This commit is contained in:
BIN
apps/aria2/bin/aria2_linux_arm
Normal file
BIN
apps/aria2/bin/aria2_linux_arm
Normal file
Binary file not shown.
BIN
apps/aria2/bin/aria2_linux_mips
Normal file
BIN
apps/aria2/bin/aria2_linux_mips
Normal file
Binary file not shown.
BIN
apps/aria2/bin/aria2_linux_x86_64
Normal file
BIN
apps/aria2/bin/aria2_linux_x86_64
Normal file
Binary file not shown.
63
apps/aria2/config/aria2.conf
Normal file
63
apps/aria2/config/aria2.conf
Normal file
@@ -0,0 +1,63 @@
|
||||
#用户名
|
||||
#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/name/.config/aria2/example.crt
|
||||
#启用加密设置私钥
|
||||
#rpc-private-key=/home/name/.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=/extdisks/sda1/下载
|
||||
#IPv4 DHT routing table file to PATH(IPV6默认没有打开的)
|
||||
#dht-file-path=/extdisks/sda1/下载/.aria2/dht.dat
|
||||
#dht-file-path6=/extdisks/sda1/下载/.aria2/dht6.dat
|
||||
#bt-tracker
|
||||
#bt-tracker=
|
||||
#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本
|
||||
#disk-cache=0
|
||||
#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
|
||||
#enable-mmap=true
|
||||
#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
|
||||
#所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持
|
||||
file-allocation=prealloc
|
||||
#不进行证书校验
|
||||
check-certificate=false
|
||||
#保存aria2下载记录
|
||||
input-file=/etc/aria2.session
|
||||
save-session=/etc/aria2.session
|
||||
save-session-interval=60
|
||||
log-level=warn
|
||||
7
apps/aria2/config/aria2.uci
Normal file
7
apps/aria2/config/aria2.uci
Normal file
@@ -0,0 +1,7 @@
|
||||
service="Aria2"
|
||||
appname="aria2"
|
||||
needver="0.0.1"
|
||||
supports="linux_arm,linux_mips,linux_x86_64"
|
||||
appinfo="Linux下一款高效的下载工具"
|
||||
newinfo="支持x86_64设备"
|
||||
version="0.0.5"
|
||||
33
apps/aria2/config/mixbox.conf
Normal file
33
apps/aria2/config/mixbox.conf
Normal file
@@ -0,0 +1,33 @@
|
||||
#------------------【Aria2】--------------------
|
||||
aria2() {
|
||||
eval `mbdb export aria2`
|
||||
source /etc/mixbox/bin/base
|
||||
echo "********* $service ***********"
|
||||
echo "[Linux下一款高效的下载工具]"
|
||||
readsh "启动${appname}服务[1/0] " "enable" "1"
|
||||
if [ "$enable" == '1' ]; then
|
||||
read -p "修改${appname}端口号(`mbdb get ${appname}.main.port || echo 6800`)?[1/0] " res
|
||||
if [ "$res" == '1' ]; then
|
||||
read -p "请输入${appname}端口号(默认6800):" res
|
||||
mbdb set $appname.main.port="$res"
|
||||
fi
|
||||
token=$(mbdb get ${appname}.main.token)
|
||||
path=$(mbdb get ${appname}.main.path)
|
||||
[ -z $token ] && token="空"
|
||||
[ -z $path ] && path="$mbdisk/下载"
|
||||
read -p "修改${appname}配置($token, $path)?[1/0] " res
|
||||
if [ "$res" == '1' ]; then
|
||||
read -p "请输入${appname}密钥(回车表示不设置):" res
|
||||
[ ! -z "$res" ] && mbdb set $appname.main.token="$res" || mbdb set $appname.main.token=""
|
||||
read -p "请输入${appname}下载路径(回车默认$mbdisk/下载):" res
|
||||
[ ! -z "$res" ] && mbdb set $appname.main.path="$res" || mbdb set $appname.main.path="$mbdisk/下载"
|
||||
fi
|
||||
readsh "请输入${appname}外网访问配置[1/0]" "openport" "1"
|
||||
|
||||
${mbroot}/apps/${appname}/scripts/${appname}.sh restart
|
||||
else
|
||||
${mbroot}/apps/${appname}/scripts/${appname}.sh stop
|
||||
fi
|
||||
|
||||
}
|
||||
#------------------【Aria2】--------------------
|
||||
BIN
apps/aria2/lib/libstdc++.so
Normal file
BIN
apps/aria2/lib/libstdc++.so
Normal file
Binary file not shown.
BIN
apps/aria2/lib/libstdc++.so.6
Normal file
BIN
apps/aria2/lib/libstdc++.so.6
Normal file
Binary file not shown.
BIN
apps/aria2/lib/libxml2.so.2
Normal file
BIN
apps/aria2/lib/libxml2.so.2
Normal file
Binary file not shown.
129
apps/aria2/scripts/aria2.sh
Normal file
129
apps/aria2/scripts/aria2.sh
Normal file
@@ -0,0 +1,129 @@
|
||||
#!/bin/sh
|
||||
source /etc/mixbox/bin/base
|
||||
eval `mbdb export aria2`
|
||||
|
||||
port=6800
|
||||
WEBDIR=${mbroot}/apps/${appname}/web
|
||||
[ -z "${port}" ] && port=6800
|
||||
[ -z "$path" ] && path="$mbdisk/下载"
|
||||
aria2url=http://$lanip/backup/log/${appname}
|
||||
binname=aria2c
|
||||
|
||||
open_ports() {
|
||||
# 添加bt下载和DHT监听端口
|
||||
open_port 6881:6999 tcp
|
||||
}
|
||||
|
||||
set_config() {
|
||||
|
||||
logsh "【$service】" "加载${appname}配置..."
|
||||
[ ! -f /etc/aria2.session ] && touch /etc/aria2.session
|
||||
|
||||
[ ! -z "${port}" ] && sed -i "s/^.*rpc-listen-port.*$/rpc-listen-port=${port}/" ${mbroot}/apps/${appname}/config/${appname}.conf
|
||||
|
||||
if [ ! -z "$token" ]; then
|
||||
sed -i "s/^.*rpc-secret.*$/rpc-secret=$token/" ${mbroot}/apps/${appname}/config/${appname}.conf
|
||||
else
|
||||
sed -i "s/^.*rpc-secret.*$/#rpc-secret=/" ${mbroot}/apps/${appname}/config/${appname}.conf
|
||||
fi
|
||||
|
||||
sed -i "s#dir.*#dir=$path#" ${mbroot}/apps/${appname}/config/${appname}.conf
|
||||
|
||||
[ ! -d "$path" ] && mkdir -p $path
|
||||
|
||||
# DHT 缓存目录配置
|
||||
if [ ! -d "${path}/.aria2" ]; then
|
||||
mkdir -p "${path}/.aria2"
|
||||
# IPV6默认没有开,可以不用配置
|
||||
sed -i "s#.*dht-file-path.*#dht-file-path=${path}/.aria2/dht.dat#" ${mbroot}/apps/${appname}/config/${appname}.conf
|
||||
sed -i "s#.*dht-file-path6.*#dht-file-path6=${path}/.aria2/dht6.dat#" ${mbroot}/apps/${appname}/config/${appname}.conf
|
||||
fi
|
||||
|
||||
# 自动更新bt-tracker
|
||||
list=`curl -s https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_best.txt|awk NF|sed ":a;N;s/\n/,/g;ta"`
|
||||
if [ ! -z "${list}" ]; then
|
||||
sed -i "s#.*bt-tracker.*#bt-tracker=${list}#" ${mbroot}/apps/${appname}/config/${appname}.conf
|
||||
logsh "【$service】" "更新bt-tracker"
|
||||
fi
|
||||
|
||||
#R3加载库文件
|
||||
[ "$xq" == "R3" -o "$xq" == "R1CM" ] && export LD_LIBRARY_PATH=${mbroot}/apps/${appname}/lib:/usr/lib:/lib
|
||||
|
||||
if [ ! -d /tmp/syslogbackup/${appname} ] && [ -n "$xq" ]; then
|
||||
logsh "【$service】" "生成${appname}本地web页面"
|
||||
mkdir -p /tmp/syslogbackup &> /dev/null
|
||||
ln -s $WEBDIR/AriaNG /tmp/syslogbackup/${appname} > /dev/null 2>&1
|
||||
fi
|
||||
#添加定时重启任务
|
||||
cru a ${appname} "0 6 * * * ${mbroot}/apps/${appname}/scripts/${appname}.sh restart"
|
||||
|
||||
}
|
||||
|
||||
start () {
|
||||
|
||||
result=$(ps | grep ${mbroot}/apps/${appname}/bin/${appname} | grep -v grep | wc -l)
|
||||
if [ "$result" != '0' ];then
|
||||
logsh "【$service】" "${appname}已经在运行!"
|
||||
exit 1
|
||||
fi
|
||||
logsh "【$service】" "正在启动${appname}服务... "
|
||||
|
||||
set_config
|
||||
|
||||
open_port
|
||||
write_firewall_start
|
||||
|
||||
if [ ! -f ${mbroot}/apps/${appname}/bin/${appname} ]; then
|
||||
bincheck ${binname}
|
||||
[ $? -eq 0 ] && ln -sf $(which $binname) ${mbroot}/apps/${appname}/bin/${appname}
|
||||
fi
|
||||
daemon ${mbroot}/apps/${appname}/bin/${appname} --conf-path=${mbroot}/apps/${appname}/config/${appname}.conf -D -l ${mbroot}/var/log/${appname}.log
|
||||
if [ $? -ne 0 ]; then
|
||||
logsh "【$service】" "启动${appname}服务失败!"
|
||||
else
|
||||
logsh "【$service】" "启动${appname}服务完成!"
|
||||
logsh "【$service】" "访问[$aria2url]管理服务"
|
||||
[ -z "$token" ] && tokentext="" || tokentext=token:"$token"@
|
||||
logsh "【$service】" "jsonrpc地址:http://"$tokentext""$lanip":"${port}"/jsonrpc"
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
stop () {
|
||||
|
||||
logsh "【$service】" "正在停止${appname}服务... "
|
||||
close_port
|
||||
remove_firewall_start
|
||||
killall -9 ${appname} &> /dev/null
|
||||
|
||||
destroy
|
||||
}
|
||||
|
||||
destroy() {
|
||||
if [ "$enable" == '0' ]; then
|
||||
[ -d /tmp/syslogbackup/${appname} ] && rm -rf /tmp/syslogbackup/${appname}
|
||||
cru d ${appname}
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
status() {
|
||||
|
||||
result=$(pssh | grep ${mbroot}/apps/${appname}/bin/${appname} | grep -v grep | wc -l)
|
||||
if [ "$result" == '0' ]; then
|
||||
status="未运行|0"
|
||||
else
|
||||
status="运行端口号: ${port}|1"
|
||||
fi
|
||||
mbdb set $appname.main.status="$status"
|
||||
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start) start ;;
|
||||
stop) stop ;;
|
||||
restart) stop; start ;;
|
||||
reload) close_port && open_port ;;
|
||||
status) status ;;
|
||||
esac
|
||||
|
||||
6
apps/aria2/scripts/install.sh
Normal file
6
apps/aria2/scripts/install.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
#copyright by monlor
|
||||
source /etc/mixbox/bin/base
|
||||
|
||||
appname=aria2
|
||||
[ "$xq" != "R3" -a "$xq" != "R1CM" ] && rm -rf ${mbtmp}/${appname}/lib
|
||||
576
apps/aria2/web/AriaNG/index.html
Executable file
576
apps/aria2/web/AriaNG/index.html
Executable file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user