This commit is contained in:
悟空的日常镜像仓库 2024-03-30 10:38:45 +08:00
parent 6bfbb63c52
commit cd8168e689
2 changed files with 50 additions and 36 deletions

View File

@ -1,4 +1,12 @@
#!/bin/sh #!/bin/sh
red() { echo -e "\033[31m\033[01m[WARNING] $1\033[0m"; }
green() { echo -e "\033[32m\033[01m[INFO] $1\033[0m"; }
yellow() { echo -e "\033[33m\033[01m[NOTICE] $1\033[0m"; }
blue() { echo -e "\033[34m\033[01m[MESSAGE] $1\033[0m"; }
light_magenta() { echo -e "\033[95m\033[01m[NOTICE] $1\033[0m"; }
light_yellow() { echo -e "\033[93m\033[01m[NOTICE] $1\033[0m"; }
backup() {
mkdir -p /tmp/upload/backup mkdir -p /tmp/upload/backup
cd /tmp/upload/backup cd /tmp/upload/backup
cp /etc/opkg/distfeeds.conf distfeeds.conf cp /etc/opkg/distfeeds.conf distfeeds.conf
@ -7,5 +15,8 @@ tar -czvf overlay_backup.tar.gz /overlay
tar -czvf etc_backup.tar.gz --exclude='/etc/config/wireless' /etc tar -czvf etc_backup.tar.gz --exclude='/etc/config/wireless' /etc
tar -czvf backup.tar.gz distfeeds.conf packages-list.txt overlay_backup.tar.gz etc_backup.tar.gz tar -czvf backup.tar.gz distfeeds.conf packages-list.txt overlay_backup.tar.gz etc_backup.tar.gz
rm -rf distfeeds.conf packages-list.txt overlay_backup.tar.gz etc_backup.tar.gz rm -rf distfeeds.conf packages-list.txt overlay_backup.tar.gz etc_backup.tar.gz
echo "系统备份文件已保存至 /tmp/upload/backup/backup.tar.gz" green "系统备份文件已保存至 /tmp/upload/backup/backup.tar.gz"
echo "请及时下载保存到电脑,恢复时也上传到此目录" light_yellow "请及时下载保存到电脑,恢复时使用 系统——文件传输 上传至/tmp/upload目录,再调用恢复脚本即可"
}
backup

View File

@ -1,7 +1,14 @@
#!/bin/sh #!/bin/sh
# 定义颜色输出函数
red() { echo -e "\033[31m\033[01m[WARNING] $1\033[0m"; }
green() { echo -e "\033[32m\033[01m[INFO] $1\033[0m"; }
yellow() { echo -e "\033[33m\033[01m[NOTICE] $1\033[0m"; }
blue() { echo -e "\033[34m\033[01m[MESSAGE] $1\033[0m"; }
light_magenta() { echo -e "\033[95m\033[01m[NOTICE] $1\033[0m"; }
light_yellow() { echo -e "\033[93m\033[01m[NOTICE] $1\033[0m"; }
restore() {
mkdir -p /tmp/upload/backup/ mkdir -p /tmp/upload/backup/
# 检查backup.tar.gz文件是否存在 # 检查backup.tar.gz文件是否存在
if [ -f /tmp/upload/backup.tar.gz ]; then if [ -f /tmp/upload/backup.tar.gz ]; then
tar -xzvf /tmp/upload/backup.tar.gz -C /tmp/upload/backup tar -xzvf /tmp/upload/backup.tar.gz -C /tmp/upload/backup
@ -15,17 +22,13 @@ if [ -f /tmp/upload/backup.tar.gz ]; then
tar -xzvf overlay_backup.tar.gz -C / tar -xzvf overlay_backup.tar.gz -C /
# 恢复/etc 配置 # 恢复/etc 配置
tar -xzvf etc_backup.tar.gz -C / tar -xzvf etc_backup.tar.gz -C /
green "恢复已完成, 系统正在重启....."
# 恢复已完成,询问用户是否重启
echo "恢复已完成, 是否重启 (y/n)?"
read answer
if [ "$answer" = "y" ]; then
reboot reboot
else
echo "重启已取消,手动重启以应用所有更改。"
fi
else else
# 如果文件不存在,提醒用户并退出脚本 # 如果文件不存在,提醒用户并退出脚本
echo "请将恢复文档backup.tar.gz 上传到 /tmp/upload 目录 再重试。" light_magenta "请将恢复文档backup.tar.gz 上传到 /tmp/upload 目录 再重试。"
exit 1 exit 1
fi fi
}
restore