作者:书友64457430 | 来源:互联网 | 2016-03-16 00:47
linux下的Web服务器备份恢复脚本,经测试centos和freebsd下都可以用只不过要修改脚本当中的变量TAR为系统的tar命令路径,脚本如下
#!/bin/sh
cat < /dev/null 2>&1
echo -e "$COLOR_GREEN$TIME $b备份成功!请继续选择其他操作$COLOR_BACK"
echo "$TIME $b备份成功!$TIME" >> /var/log/web_back.log
else
echo -e "$COLOR_RED需要备份站点不存在,请重新输入:$COLOR_BACK"
read d
if [ -d $WEB_DIR/$d ];then
cd $WEB_DIR
$TAR $TAR_BACK $BACK_DIR/"$d"_back_`date +%Y%m%d`.tar.gz $d/ > /dev/null 2>&1
echo -e "$COLOR_GREEN$TIME $d备份成功!请继续选择其他操作$COLOR_BACK"
echo "$TIME $d备份成功!$TIME" >> /var/log/web_back.log
else
echo -e "$COLOR_RED备份站点名输入出错两次,退出当前备份选择!$COLOR_BACK"
echo "$TIME 备份站点名输入出错两次,退出当前备份!" >> /var/log/web_back.log
fi
fi
continue
;;
2)
echo -e "$COLOR_CYAN当前服务器的备份文件:$COLOR_BACK"
echo "+------------------------------------------------+"
ls -l $BACK_DIR|grep "tar.gz"|awk '{print $NF}'
echo "+------------------------------------------------+"
echo -e "$COLOR_CYAN选择需要恢复的恢复文件:$COLOR_BACK"
read c
if [ -f $BACK_DIR/$c ];then
cd $WEB_DIR
$TAR $TAR_RECOVERY $BACK_DIR/$c -C $WEB_DIR/ > /dev/null 2>&1
echo -e "$COLOR_GREEN$TIME $c恢复成功,请继续选择其他操作!$COLOR_BACK"
echo "$TIME $c恢复成功!" >> /var/log/web_back.log
else
echo -e "$COLOR_RED需要恢复站点不存在,请重新输入:$COLOR_BACK"
read f
if [ -f $BACK_DIR/$f ];then
cd $WEB_DIR
$TAR $TAR_RECOVERY $BACK_DIR/$f -C $WEB_DIR/ > /dev/null 2>&1
echo -e "$COLOR_GREEN$TIME $f恢复成功,请继续选择其他操作!$COLOR_BACK"
echo "$TIME $f恢复成功!" >> /var/log/web_back.log
else
echo -e "$COLOR_RED恢复文件名输入出错两次,退出当前恢复选择!$COLOR_BACK"
echo "$TIME 恢复文件名输入出错两次,退出当前恢复选择!" >> /var/log/web_back.log
fi
fi
continue
;;
3|Q|q)
echo -e "$COLOR_GREEN退出成功!$COLOR_BACK"
exit
;;
*)
echo -e "$COLOR_RED输入错误,请重新输入!$COLOR_BACK"
continue
;;
esac
exit 0
done