cru使用教程_Aria2使用教程进阶版

大神,内容如下:

#!/bin/sh

# define variables

eval `dbus export aria2`

source /koolshare/scripts/base.sh

export PERP_BASE=/koolshare/perp

#old_token=$(cat /koolshare/aria2/aria2.conf|grep rpc-secret|cut -d "=" -f2)

check_ddnsto=`dbus get aria2_ddnsto`

if [ "${check_ddnsto}"x = "true"x ]; then

ddnsto_route_id=`/koolshare/bin/ddnsto -w | awk '{print $2}'`

token=`echo $(dbus get ddnsto_token)-${ddnsto_route_id}`

else

token=${aria2_rpc_secret}

fi

ddns=$(nvram get ddns_hostname_x)

usb_disk1=`/bin/mount | grep -E 'mnt' | sed -n 1p | cut -d" " -f3`

usb_disk2=`/bin/mount | grep -E 'mnt' | sed -n 2p | cut -d" " -f3`

dbus set aria2_warning=""

echo ""

echo "#############################################################"

printf "%0s%50s%10s\n" "#" "Aria2c Auto config Script for ASUS固件 ARM" "#"

printf "%0s%37s%23s\n" "#" "Website: http://koolshare.cn" "#"

printf "%0s%46s%14s\n" "#" "Author: sadoneli " "#"

echo "#############################################################"

echo ""

# start aria2c

creat_conf(){

cat > /koolshare/aria2/aria2.conf <

`dbus list aria2 | grep -vw aria2_enable | grep -vw aria2_ddnsto | grep -vw aria2_binary| grep -vw aria2_binary_custom | grep -vw aria2_check | grep -vw aria2_check_time | grep -vw aria2_sleep | grep -vw aria2_update_enable| grep -vw aria2_update_sel | grep -vw aria2_version | grep -vw aria2_cpulimit_enable | grep -vw aria2_cpulimit_value| grep -vw aria2_version_web | grep -vw aria2_warning | grep -vw aria2_custom | grep -vw aria2_install_status|grep -vw aria2_restart |grep -vw aria2_dir| sed 's/aria2_//g' | sed 's/_/-/g'`

`dbus list aria2|grep -w aria2_dir|sed 's/aria2_//g'`

EOF

cat >> /koolshare/aria2/aria2.conf <

`dbus list aria2|grep -w aria2_custom|sed 's/aria2_custom=//g'|sed 's/,/\n/g'`

EOF

list=`wget -qO- https://raw.githubusercontent.co ... rackers_best_ip.txt|awk NF|sed ":a;N;s/\n/,/g;ta"`

cat >> /koolshare/aria2/aria2.conf <

bt-stop-timeout=7200

max-overall-upload-limit=20M

bt-request-peer-speed-limit=1024M

bt-remove-unselected-file=true

dht-file-path=/mnt/sda1/Aria/dht.dat

dht-file-path6=/mnt/sda1/Aria/dht6.dat

log=/mnt/sda1/Aria/aria2.log

log-level=error

on-download-error=/jffs/scripts/aria2DownloadError.sh

on-download-complete=/jffs/scripts/aria2DownloadComplete.sh

bt-tracker=$list

EOF

# if [ "$aria2_enable_rpc" = "false" ];then

# sed -i '/rpc/d' /koolshare/aria2/aria2.conf

# fi

}

start_aria2(){

#/koolshare/aria2/aria2c --conf-path=/koolshare/aria2/aria2.conf -D >/dev/null 2>&1 &

perpctl A aria2

}

# generate token

generate_token(){

sed -i "s/rpc-secret=.*/rpc-secret=$token/g" "/koolshare/aria2/aria2.conf"

dbus set aria2_rpc_secret="$token"

}

# open firewall port

open_port(){

echo open firewall port $aria2_rpc_listen_port and 8088

iptables -I INPUT -p tcp --dport $aria2_rpc_listen_port -j ACCEPT >/dev/null 2>&1

iptables -I INPUT -p tcp --dport 8088 -j ACCEPT >/dev/null 2>&1

iptables -I INPUT -p tcp --dport 6881:6889 -j ACCEPT >/dev/null 2>&1

iptables -I INPUT -p tcp --dport 51413 -j ACCEPT >/dev/null 2>&1

iptables -I INPUT -p tcp --dport 52413 -j ACCEPT >/dev/null 2>&1

iptables -I INPUT -p udp --dport 52413 -j ACCEPT >/dev/null 2>&1

echo done

}

# close firewall port

close_port(){

echo close firewall port $aria2_rpc_listen_port and 8088

iptables -D INPUT -p tcp --dport $aria2_rpc_listen_port -j ACCEPT >/dev/null 2>&1

iptables -D INPUT -p tcp --dport 8088 -j ACCEPT >/dev/null 2>&1

iptables -D INPUT -p tcp --dport 6881:6889 -j ACCEPT >/dev/null 2>&1

iptables -D INPUT -p tcp --dport 51413 -j ACCEPT >/dev/null 2>&1

iptables -D INPUT -p tcp --dport 52413 -j ACCEPT >/dev/null 2>&1

iptables -D INPUT -p udp --dport 52413 -j ACCEPT >/dev/null 2>&1

echo done

}

# kill aria2

kill_aria2(){

perpctl X aria2

killall aria2c >/dev/null 2>&1

}

del_process_check(){

cru d aria2_guard >/dev/null 2>&1

}

add_cpulimit(){

if [ "$aria2_cpulimit_enable" = "true" ];then

limit=`expr $aria2_cpulimit_value \* 2`

cpulimit -e aria2c -l $limit  >/dev/null 2>&1 &

fi

}

load_default(){

del_version_check

kill_aria2

close_port

dbus set tmp_aria2_version=`dbus get aria2_version`

dbus set tmp_aria2_version_web=`dbus get aria2_version_web`

for r in `dbus list aria2|cut -d"=" -f 1`

do

dbus remove $r

done

dbus set aria2_enable=0

dbus set aria2_install_status=1

dbus set aria2_version=`dbus get tmp_aria2_version`

dbus set aria2_version_web=`dbus get tmp_aria2_version_web`

dbus remove tmp_aria2_version

}

# ============================================

case $ACTION in

start)

if [ "$aria2_enable" == "1" ];then

creat_conf

generate_token

start_aria2

open_port

add_cpulimit

dbus set __event__onnatstart_shellinlinux=/koolshare/aria2/aria2_run.sh

fi

;;

stop | kill )

kill_aria2

killall cpulimit

close_port

dbus remove aria2_custom

dbus remove __event__onnatstart_shellinlinux

;;

restart)

del_process_check

killall cpulimit

kill_aria2

close_port

sleep 1

creat_conf

generate_token

start_aria2

open_port

add_cpulimit

dbus remove __event__onnatstart_shellinlinux

sleep 1

dbus set __event__onnatstart_shellinlinux=/koolshare/aria2/aria2_run.sh

;;

default)

load_default

;;

*)

close_port

open_port

;;

esac

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值