回到首页| 网络安全 名人故事 申请书 | 名人名言 财富榜 关于我们

当前位置:名人故事传 > 互联网 > Linux服务器 > > 正文

Linux服务器一键备份脚本解释

05-15  Linux服务器     来源: 未知  

我写过好几个类似的教程,但这个可能是最完整的, 因为这个的脚本有注释, 同时有视频演示,所以这个教程相比以前那几个要详细一些. 其实服务器备份无非就是以下几个步骤, 在我们要迁移服务器或者日常备份的时候,这样的脚本都能精简自己的工作量. 服务器备份的步骤如下:

一: 备份原始数据(即网站的各种源码和附件数据)

二: 备份数据库数据(我这里是以单独一个数据库进行备份)

三: 压缩数据(将网站数据和数据库数据进行打包压缩)

四: 下载数据或备份到第三方平台

五: 删除打包压缩的备份数据以免泄露

所以脚本的运行流程也就是按照这个思路来进行的, 如果你的服务器配置好的话, 可以将脚本扔到crond里定时执行, 这个脚本需要安装rar包,因为我们需要用到rar来进行加密打包, Linux下默认的gizp和tar等打包压缩都是不能加密码的, 为什么要加密码,就是因为我们需要保护我们的数据安全.

详细教程: /post/2636.html

# !/bin/bash

ac=`date +%Y`

#定义一个变量获取时间部份的年

bc=`date +%m`

#定义一个变量获取时间部份的月

cc=`date +%d`

#定义一个变量获取时间部份的日

mkdir /var/www/back

#创建一个空目录

cd /var/www/

#切换目录

cp -ar /var/www/wordpress back/

#复制网站目录到备份目录

cp -ar /var/www/cms back/

#复制网站目录到备份目录

cp -ar /var/www/Discuz back/

#复制网站目录到备份目录

mysqlcheck -Ao -uroot -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z

#清除mysql数据库缓存和垃圾信息,-u是指定用户名参数 -p是添加密码参数, NGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z 这是数据库用户root的密码

mysqldump -u root -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z cms |gzip > /var/www/back/cms"_"$ac"_"$bc"_"$cc.sql.gz

#备份cms数据库到指定路径下, cms是数据库名, NGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z 是密码, gzip是压缩

mysqldump -u root -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z Discuz |gzip > /var/www/back/Discuz"_"$ac"_"$bc"_"$cc.sql.gz

#备份cms数据库到指定路径下, cms是数据库名, NGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z 是密码, gzip是压缩

mysqldump -u root -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z wordpress |gzip > /var/www/back/WordPress"-"$ac"-"$bc"-"$cc.sql.gz

#备份cms数据库到指定路径下, cms是数据库名, NGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z 是密码, gzip是压缩

cd back

#切换到back目录

tar -czvf cms"_"$ac"_"$bc"_"$cc.tar.gz cms/*

#压缩网站根目录下的cms目录, 这是cms网站的根目录

tar -czvf wordpress"_"$ac"_"$bc"_"$cc.tar.gz wordpress/*

#压缩网站根目录下的wordpress目录, 这是wordpress博客的根目录

tar -czvf Discuz"_"$ac"_"$bc"_"$cc.tar.gz Discuz/*

#压缩网站根目录下的Discuz目录, 这是Discuz论坛的根目录

cd ..

#返回上一级目录, 空格后边是两个半角符号的点

rm -rf back/cms

#因为这个目录已经被打包压缩了,所以现在删除备份目录里的这个文件夹和里边的文件,免得重复备份.

rm -rf back/Discuz

#因为这个目录已经被打包压缩了,所以现在删除备份目录里的这个文件夹和里边的文件,免得重复备份.

rm -rf back/wordpress

#因为这个目录已经被打包压缩了,所以现在删除备份目录里的这个文件夹和里边的文件,免得重复备份.

rar a toutiao"_"$ac"_"$bc"_"$cc.zip back/* -pYWNiND-MGNiYT-ZiYWI2-NjE1NG-JmNDhk-YzBkMj -z

#PassWord: YWNiND-MGNiYT-ZiYWI2-NjE1NG-JmNDhk-YzBkMj

#将back备份目录里的文件再次打包, 这次是用rar来压缩打包并添加密码. -p 是添加密码参数 -z 是添加注释参数,

#Reading comment from stdin 看到这行后请输入您的注释信息, 输入完成后按一次回车并再次按下键盘上的#Ctrl键和D键,就会进入压缩.

##以下这一段是一键压缩的脚本

#password=`YWNiND-MGNiYT-ZiYWI2-NjE1NG-JmNDhk-YzBkMj`

##将密码存放到password变量中

#echo '#!/usr/bin/expect' >> ServerBack.sh

##将文本写入文件

#echo 'spawn rar a server"_"$ac"_"$bc"_"$cc.zip back/* -p$password -z' >> ServerBack.sh

##将文本写入文件

#echo 'expect "Reading comment from stdin"' >> ServerBack.sh

##将文本写入文件

#echo 'send "Password:$password"' >> ServerBack.sh

##将文本写入文件

#echo 'send "\04\04"' >> ServerBack.sh

##将文本写入文件

###\04 =CTRL+D

#echo 'expect eof' >> ServerBack.sh

##将文本写入文件

#chmod 777 ServerBack.sh

##将文件权限更改变777,即可运行

#./ServerBack.sh

##运行一键压缩脚本

###

cp -ar toutiao"_"$ac"_"$bc"_"$cc.zip /var/www/cms/

#复制压缩后的zip文件到任意一个网站的目录下,这样可以方便下载到本地.

rm -rf back

#删除备份文件back目录

rm -rf toutiao"_"$ac"_"$bc"_"$cc.zip

#删除打包后的备份文件

rm -rf ServerBack.sh

#删除一键压缩脚本

cd ..

#返回上一级目录

#PassWord: YWNiND-MGNiYT-ZiYWI2-NjE1NG-JmNDhk-YzBkMj

#将back备份目录里的文件再次打包, 这次是用rar来压缩打包并添加密码. -p 是添加密码参数 -z 是添加注释参数,

#Reading comment from stdin 看到这行后请输入您的注释信息, 输入完成后按一次回车并再次按下键盘上的#Ctrl键和D键,就会进入压缩.

注:在脚本里,如果需要实行一键备份的话, 需要在脚本里创建一个一键进行rar压缩的脚本,并把本脚本里的rar压缩那一行用#号注释掉. 这样就不需要再手动输入密码了,直接就由另一个脚本接管了.

Linux rar压缩

# !/bin/bash

ac=`date +%Y`

bc=`date +%m`

cc=`date +%d`

mkdir /var/www/back

cd /var/www/

cp -ar /var/www/wordpress back/

cp -ar /var/www/cms back/

cp -ar /var/www/Discuz back/

mysqlcheck -Ao -uroot -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z

mysqldump -u root -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z cms |gzip > /var/www/back/cms"_"$ac"_"$bc"_"$cc.sql.gz

mysqldump -u root -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z Discuz |gzip > /var/www/back/Discuz"_"$ac"_"$bc"_"$cc.sql.gz

mysqldump -u root -pNGNlYm-NDU5Mm-NlMmFi-NmM1NW-ZhODc0-MjQ2Z wordpress |gzip > /var/www/back/WordPress"-"$ac"-"$bc"-"$cc.sql.gz

cd back

tar -czvf cms"_"$ac"_"$bc"_"$cc.tar.gz cms/*

tar -czvf wordpress"_"$ac"_"$bc"_"$cc.tar.gz wordpress/*

tar -czvf Discuz"_"$ac"_"$bc"_"$cc.tar.gz Discuz/*

cd ..

rm -rf back/cms

rm -rf back/Discuz

rm -rf back/wordpress

#rar a toutiao"_"$ac"_"$bc"_"$cc.zip back/* -pYWNiND-MGNiYT-ZiYWI2-NjE1NG-JmNDhk-YzBkMj -z

password=`YWNiND-MGNiYT-ZiYWI2-NjE1NG-JmNDhk-YzBkMj`

echo '#!/usr/bin/expect' >> ServerBack.sh

echo 'spawn rar a server"_"$ac"_"$bc"_"$cc.zip back/* -p$password -z' >> ServerBack.sh

echo 'expect "Reading comment from stdin"' >> ServerBack.sh

echo 'send "Password:$password"' >> ServerBack.sh

echo 'send "\04\04"' >> ServerBack.sh

#\04 =CTRL+D

echo 'expect eof' >> ServerBack.sh

chmod 777 ServerBack.sh

./ServerBack.sh

cp -ar toutiao"_"$ac"_"$bc"_"$cc.zip /var/www/cms/

rm -rf back

rm -rf toutiao"_"$ac"_"$bc"_"$cc.zip

rm -rf ServerBack.sh

cd ..

Linux rar一键备份脚本

互联网 网络安全 申请书 创业资讯 创业故事明朝十六帝故事
© 2012-2022 名人故事传网版权所有 关于我们 | 版权声明 | 网站协议 | 友情申请 | 免责声明 | 网站地图 | 联系我们 | 广告服务