This commit is contained in:
YAWAsau
2021-11-02 23:06:49 +08:00
parent c3b67f3e89
commit 3cebbc6017
6 changed files with 32 additions and 47 deletions

View File

@@ -18,13 +18,6 @@ txt="$MODDIR/應用列表.txt"
r="$(cat "$txt" | grep -v "#" | sed -e '/^$/d' | sed -n '$=')"
[[ $r = "" ]] && echoRgb "應用列表.txt包名為空或是被注釋了" "0" && exit 1
#顯示執行結果
echo_log() {
if [[ $? = 0 ]]; then
echoRgb "$1成功" "1" && result=0
else
echoRgb "$1失敗過世了" "0" && result=1 && let ERROR++
fi
}
Release_data() {
tar_path="$1"
X="$path2/$name2"
@@ -53,6 +46,7 @@ Release_data() {
esac
;;
*)
[[ $FILE_NAME2 = thanox ]] && rm -rf "$(find "/data/system" -name "thanos_*" -maxdepth 1 -type d)"
case ${FILE_NAME##*.} in
lz4) pv "$tar_path" | tar -I lz4 -xPpf - ;;
zst) pv "$tar_path" | tar -I zstd -xPpf - ;;
@@ -85,7 +79,10 @@ Release_data() {
echoRgb "路徑$X不存在" "0"
fi
elif [[ $FILE_NAME2 = data ]]; then
chown -R "1023:1078" "$path/data/$name2"
[[ -d $path/data/$name2 ]] && chown -R "1023:1078" "$path/data/$name2"
elif [[ $FILE_NAME2 = thanox ]]; then
restorecon -R "$(find "/data/system" -name "thanos_*" -maxdepth 1 -type d)" >/dev/null 2>&1
echo_log "selinux上下文設置" && echoRgb "警告 thanox配置恢復後務必重啟\n -否則不生效" "0"
fi
fi
}
@@ -93,8 +90,6 @@ Release_data() {
#記錄開始時間
starttime1="$(date -u "+%s")"
TIME="$starttime1"
#記錄error次數起點
ERROR=1
en=118
{
while [[ $i -le $r ]]; do
@@ -169,7 +164,7 @@ while [[ $i -le $r ]]; do
if [[ $i = $r ]]; then
endtime 1 "應用恢復"
if [[ -d $Backup_folder2 ]]; then
echoRgb "是否恢復多媒體數據\n 音量上恢復,音量下不恢復"
Print "是否恢復多媒體數據 音量上恢復,音量下不恢復" ; echoRgb "是否恢復多媒體數據\n 音量上恢復,音量下不恢復"
get_version "恢復媒體數據" "跳過恢復媒體數據"
starttime1="$(date -u "+%s")"
A=1
@@ -184,12 +179,10 @@ while [[ $i -le $r ]]; do
fi
fi
fi
[[ $ERROR -ge 5 ]] && (echoRgb "錯誤次數達到上限 環境已重設\n -請重新執行腳本" "0" && rm -rf "$filepath" && exit)
let i++ en++
let i++ en++ nskg++
done
starttime1="$TIME"
echoRgb "批量恢複完成" && endtime 1 "批量恢複開始到結束" && echoRgb "應用閃退請重新開機" "0"
} &
wait
longToast "批量恢復完成"
Print "批量恢復完成 執行過程請查看$Status_log" && rm -rf "$TMPDIR"/*
Print "批量恢復完成 執行過程請查看$Status_log" && rm -rf "$TMPDIR"/*
} &

View File

@@ -13,14 +13,6 @@ path2="/data/data"
[[ ! -d $path2 ]] && echoRgb "設備不存在user目錄" "0" && exit 1
#記錄開始時間
starttime1="$(date -u "+%s")"
#顯示執行結果
echo_log() {
if [[ $? = 0 ]]; then
echoRgb "$1成功" "1" && result=0
else
echoRgb "$1失敗過世了" "0" && result=1
fi
}
{
Backup_folder="$MODDIR"
if [[ ! -f $Backup_folder/app_details ]]; then
@@ -97,6 +89,7 @@ if [[ $Recovery_mode = true ]]; then
echoRgb "$X不存在 無法恢復$FILE_NAME2數據" "0" ; Set_back
fi
else
[[ $FILE_NAME2 = thanox ]] && rm -rf "$(find "/data/system" -name "thanos_*" -maxdepth 1 -type d)"
case ${FILE_NAME##*.} in
lz4) pv "$tar_path" | tar --recursive-unlink -I lz4 -xmPpf - ;;
zst) pv "$tar_path" | tar --recursive-unlink -I zstd -xmPpf - ;;
@@ -127,7 +120,10 @@ if [[ $Recovery_mode = true ]]; then
echoRgb "路徑$X不存在" "0"
fi
elif [[ $FILE_NAME2 = data ]]; then
chown -R "1023:1078" "$path/data/$name"
[[ -d $path/data/$name2 ]] && chown -R "1023:1078" "$path/data/$name2"
elif [[ $FILE_NAME2 = thanox ]]; then
restorecon -R "$(find "/data/system" -name "thanos_*" -maxdepth 1 -type d)" >/dev/null 2>&1
echo_log "selinux上下文設置" && echoRgb "警告 thanox配置恢復後務必重啟\n -否則不生效" "0"
fi
fi
done