mirror of
https://github.com/monlor/MIXBOX-ARCHIVE.git
synced 2026-03-11 16:01:35 +00:00
73 lines
2.4 KiB
Bash
73 lines
2.4 KiB
Bash
#!/bin/sh
|
||
#copyright by monlor
|
||
source /etc/mixbox/bin/base
|
||
|
||
detect_apps() {
|
||
|
||
applist installed -n| while read line
|
||
do
|
||
${mbroot}/apps/${line}/scripts/${line}.sh status
|
||
result1="$(mbdb get ${line}.main.enable)"
|
||
result2="$(mbdb get ${line}.main.status | cut -d'|' -f2)"
|
||
if [ "$result1" = '1' ] && [ "$result2" = '0' ]; then
|
||
${mbroot}/apps/${line}/scripts/${line}.sh restart
|
||
fi
|
||
done
|
||
|
||
}
|
||
|
||
detect_update() {
|
||
if [ "$(mbdb get mixbox.main.autoupdate)" = '1' ]; then
|
||
mixbox get_version 1> /dev/null
|
||
toolsver="$(applist mixbox -v)"
|
||
if [ -z "$toolsver" ]; then
|
||
logsh "【Tools】" "未获取到工具箱版本信息!"
|
||
else
|
||
if [ "$(versioncmp $mbver $toolsver)" = '1' ]; then
|
||
logsh "【Tools】" "检测到工具箱有更新!即将更新..." && sleep 2
|
||
mixbox update
|
||
fi
|
||
fi
|
||
applist installed -n | while read line; do
|
||
[ "$(mbdb get ${line}.main.enable)" = '0' ] && continue
|
||
appver_online="$(cat ${mbtmp}/versions.txt | grep "${line}" | cutsh 2)"
|
||
appver_local="$(mbdb get mixbox.${line}.version)"
|
||
[ -z "$appver_local" -o -z "$appver_online" ] && logsh "【Tools】" "未获取插件${line}的版本信息!" && continue
|
||
if [ "$(versioncmp $appver_local $appver_online)" = '1' ]; then
|
||
logsh "【Tools】" "检测到插件${line}有更新!即将更新..." && sleep 2
|
||
${mbroot}/scripts/appmanage.sh upgrade ${line}
|
||
${mbroot}/apps/${line}/scripts/${line}.sh restart
|
||
fi
|
||
done
|
||
fi
|
||
}
|
||
|
||
detect_others() {
|
||
if [ -f "$mbdisk/uninstall_mixbox" ]; then
|
||
logsh "【Tools】" "检测到工具箱出现问题,正在备份并卸载工具箱..."
|
||
mixbox backup
|
||
cp /etc/mbbackup.tar.gz $mbdisk/mbbackup.tar.gz
|
||
mixbox uninstall || ${mbroot}/scripts/uninstall.sh
|
||
echo "工具箱已卸载并备份了工具箱配置到这里:$mbdisk/mbbackup.tar.gz" > $mbdisk/uninstall_tools.txt
|
||
rm -rf $mbdisk/uninstall
|
||
fi
|
||
if [ -f "$mbdisk/fix_dropbear" ]; then
|
||
logsh "【Tools】" "检测到ssh出现问题,正在尝试修复..."
|
||
killall -9 dropbear
|
||
daemon ${mbroot}/apps/dropbear/bin/dropbear -p 3333 -d ${mbroot}/apps/dropbear/config/dropbear_dss_host_key -r ${mbroot}/apps/dropbear/config/dropbear_rsa_host_key
|
||
# echo -e "123456/n123456" | passwd root
|
||
echo "启动ssh服务器,登录地址:[ssh root@$lanip -p 3333],Have Fun!" > $mbdisk/fix_dropbear.txt
|
||
rm -rf $mbdisk/fix_dropbear
|
||
fi
|
||
}
|
||
|
||
|
||
if [ -z "$(pssh | grep -w ${mbroot}/bin/mixbox)" ]; then
|
||
applist update
|
||
detect_update
|
||
detect_apps
|
||
detect_others
|
||
fi
|
||
|
||
|