mirror of
https://github.com/monlor/MIXBOX-ARCHIVE.git
synced 2026-03-10 23:41:27 +00:00
81 lines
2.4 KiB
Bash
81 lines
2.4 KiB
Bash
#!/bin/sh
|
||
source "$(mbdb get mixbox.main.path)"/bin/base
|
||
eval `mbdb export dropbear`
|
||
|
||
[ -z "${port}" ] && port=1022
|
||
|
||
get_config() {
|
||
|
||
logsh "【$service】" "检查${appname}配置文件中..."
|
||
[ ! -f ${mbroot}/apps/${appname}/bin/${appname} ] && cp -rf /usr/sbin/dropbear ${mbroot}/apps/${appname}/bin/${appname} && logsh "【$service】" "移植主程序文件成功!"
|
||
[ ! -f ${mbroot}/apps/${appname}/config/dropbear_rsa_host_key ] && cp -rf /etc/dropbear/dropbear_rsa_host_key ${mbroot}/apps/${appname}/config/dropbear_rsa_host_key && logsh "【$service】" "移植证书成功!"
|
||
|
||
}
|
||
|
||
start() {
|
||
|
||
logsh "【$service】" "正在启动${appname}服务... "
|
||
# cru a "${appname}" "0 6 * * * ${mbroot}/apps/${appname}/scripts/${appname}.sh restart"
|
||
# Scripts Here
|
||
logsh "【$service】" "服务启动端口号为:${port}"
|
||
get_config
|
||
if [ "$modify_passwd" = '1' -a -n "$rootpasswd" ]; then
|
||
logsh "【$service】" "系统root用户密码将修改为:$rootpasswd"
|
||
echo -e "${rootpasswd}\n${rootpasswd}" | passwd root
|
||
fi
|
||
open_port
|
||
write_firewall_start
|
||
${mbroot}/apps/${appname}/bin/${appname} -p ${port} -d ${mbroot}/apps/${appname}/config/dropbear_dss_host_key -r ${mbroot}/apps/${appname}/config/dropbear_rsa_host_key -b ${mbroot}/apps/${appname}/config/banner
|
||
logsh "【$service】" "启动${appname}服务完成!"
|
||
sleep 1
|
||
kill -9 "$(pssh | grep ${mbroot}/apps/${appname}/bin/${appname} | grep -Ev "[ ]+${port}[ ]+" | awk '{print$1}' | tr '\n' ' ')" && sleep 1
|
||
|
||
|
||
}
|
||
|
||
stop() {
|
||
|
||
logsh "【$service】" "正在停止${appname}服务... "
|
||
[ "$enable" == '0' ] && destroy
|
||
close_port
|
||
remove_firewall_start
|
||
|
||
}
|
||
|
||
destroy() {
|
||
|
||
# End app, Scripts here
|
||
# cru d "${appname}"
|
||
logsh "【$service】" "如果终止${appname}将会在重启后生效!"
|
||
# kill -9 "$(pssh | grep ${mbroot}/apps/${appname}/bin/${appname} | awk '{print$1}' | tr '\n' ' ')" && sleep 1
|
||
return
|
||
|
||
}
|
||
|
||
end() {
|
||
|
||
mbdb set $appname.main.enable=0
|
||
stop && exit 1
|
||
|
||
}
|
||
|
||
status() {
|
||
|
||
if [ -n "$(pssh | grep ${mbroot}/apps/${appname}/bin/${appname})" ]; then
|
||
status="运行端口号:${port}|1"
|
||
else
|
||
status="未运行|0"
|
||
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
|
||
|
||
|