mirror of
https://github.com/monlor/MIXBOX-ARCHIVE.git
synced 2026-03-11 07:51:54 +00:00
149 lines
3.9 KiB
Bash
149 lines
3.9 KiB
Bash
#!/bin/sh
|
||
source /etc/mixbox/bin/base
|
||
eval `mbdb export miwifi`
|
||
|
||
modify_samba() {
|
||
[ ! -d "$samba_path" ] && mkdir -p $samba_path
|
||
sed -i "1,/path/ s#\(path\).*#\1 = $samba_path#" /etc/samba/smb.conf
|
||
killall smbd &> /dev/null && /usr/sbin/smbd -D &> /dev/null
|
||
killall nmbd &> /dev/null && /usr/sbin/nmbd -D &> /dev/null
|
||
cru a "${appname}" "*/5 * * * * ${mbroot}/apps/${appname}/scripts/miwifi_check.sh"
|
||
samba_text="已修改"
|
||
}
|
||
|
||
recover_samba() {
|
||
/etc/init.d/samba restart &> /dev/null &
|
||
cru d "${appname}"
|
||
samba_text="未修改"
|
||
}
|
||
|
||
enable_update() {
|
||
sed -i "/otapredownload/d" /etc/crontabs/root
|
||
echo "15 3,4,5 * * * /usr/sbin/otapredownload >/dev/null 2>&1" >> /etc/crontabs/root
|
||
update_text="启用"
|
||
}
|
||
|
||
disable_update() {
|
||
sed -i "/otapredownload/d" /etc/crontabs/root
|
||
update_text="禁用"
|
||
}
|
||
|
||
enable_xunlei() {
|
||
if [ -z "`pidof etm`" ]; then
|
||
sed -i 's@/etc/thunder@/etc/config/thunder@g' /etc/init.d/xunlei
|
||
if [ ! -d /etc/config/thunder ]; then
|
||
cp -a /etc/thunder /etc/config
|
||
rm -rf /etc/thunder
|
||
fi
|
||
/etc/init.d/xunlei enable
|
||
/etc/init.d/xunlei start &
|
||
fi
|
||
xunlei_text="启用"
|
||
}
|
||
|
||
disable_xunlei() {
|
||
killall etm 2>/dev/null
|
||
/etc/init.d/xunlei disable 2>/dev/null
|
||
sed -i 's@/etc/config/thunder@/etc/thunder@g' /etc/init.d/xunlei
|
||
if [ -d /etc/config/thunder ]; then
|
||
cp -a /etc/config/thunder /etc
|
||
rm -rf /etc/config/thunder
|
||
fi
|
||
xunlei_text="禁用"
|
||
}
|
||
|
||
enable_remote_web() {
|
||
if [ -z "$(cat /etc/sysapihttpd/miwifi-webinitrd.conf | grep mixbox)" ]; then
|
||
cp -f /etc/sysapihttpd/miwifi-webinitrd.conf ${mbtmp}
|
||
sed -i '/set \$finalvar \"\$canproxy \$isluci\"/i\ set \$isluci "1"; #mixbox' ${mbtmp}/miwifi-webinitrd.conf
|
||
mount --bind ${mbtmp}/miwifi-webinitrd.conf /etc/sysapihttpd/miwifi-webinitrd.conf
|
||
/etc/init.d/sysapihttpd restart &> /dev/null
|
||
remote_text="启动"
|
||
iptables -I INPUT -p tcp --dport 8098 -j ACCEPT &> /dev/null
|
||
fi
|
||
}
|
||
|
||
disable_remote_web() {
|
||
umount -lf /etc/sysapihttpd/miwifi-webinitrd.conf &> /dev/null
|
||
rm -rf ${mbtmp}/miwifi-webinitrd.conf &> /dev/null
|
||
remote_text="禁用"
|
||
iptables -D INPUT -p tcp --dport 8098 -j ACCEPT &> /dev/null
|
||
}
|
||
|
||
start() {
|
||
|
||
[ -n "$(pidof ${appname})" ] && logsh "【$service】" "${appname}已经在运行!" && exit 1
|
||
logsh "【$service】" "正在启动${appname}服务... "
|
||
# cru a "${appname}" "0 6 * * * ${mbroot}/apps/${appname}/scripts/${appname}.sh restart"
|
||
# Scripts Here
|
||
# open_port
|
||
# write_firewall_start
|
||
# daemon ${mbroot}/apps/${appname}/bin/${appname}
|
||
if [ -n "$samba_path" ]; then
|
||
modify_samba
|
||
logsh "【$service】" "系统samba服务路径修改为:$samba_path"
|
||
else
|
||
recover_samba
|
||
logsh "【$service】" "系统samba服务路径修改:$samba_text"
|
||
fi
|
||
[ "$miwifi_noupdate" = '1' ] && disable_update || enable_update
|
||
logsh "【$service】" "系统更新服务修改为:$update_text"
|
||
[ "$xunlei_disable" = '1' ] && disable_xunlei || enable_xunlei
|
||
logsh "【$service】" "系统迅雷服务修改为:$xunlei_text"
|
||
[ "$remote_web" = '1' ] && enable_remote_web || disable_remote_web
|
||
logsh "【$service】" "远程Web访问修复:$remote_text"
|
||
cru a "${appname}" "*/5 * * * * ${mbroot}/apps/${appname}/scripts/miwifi_check.sh"
|
||
# [ $? -ne 0 ] && logsh "【$service】" "启动${appname}服务失败!" && end
|
||
logsh "【$service】" "启动${appname}服务完成!"
|
||
status
|
||
open_port
|
||
|
||
}
|
||
|
||
stop() {
|
||
|
||
logsh "【$service】" "正在停止${appname}服务... "
|
||
[ "$enable" = '0' ] && destroy
|
||
|
||
}
|
||
|
||
destroy() {
|
||
|
||
# End app, Scripts here
|
||
recover_samba
|
||
disable_update
|
||
disable_xunlei
|
||
disable_remote_web
|
||
cru d "${appname}"
|
||
return
|
||
|
||
}
|
||
|
||
end() {
|
||
|
||
mbdb set $appname.main.enable=0
|
||
|
||
stop
|
||
exit 1
|
||
|
||
}
|
||
|
||
status() {
|
||
|
||
if [ "$enable" = '1' ]; then
|
||
status="已启动|1"
|
||
else
|
||
status="未运行|0"
|
||
fi
|
||
mbdb set $appname.main.status="$status"
|
||
}
|
||
|
||
case "$1" in
|
||
start) start ;;
|
||
stop) stop ;;
|
||
restart) stop; start ;;
|
||
reload) stop; start ;;
|
||
status) status ;;
|
||
esac
|
||
|