LinuxVPS每日自动备份

服务器在运行,难免也会出现问题,如服务商跑路、母机硬盘损坏等等。作为站长,备份数据肯定少不了,手动备份确实比较繁琐,利用一个脚本,就可以达到系统每日备份数据的目的啦。

这里我们以“LNMP 一键安装包”为例,需要准备一个FTP和一个能接收大附件的邮箱。

一、安装《LNMP 一键安装包》,并准备一个FTP空间

若不是使用以上一键包,下文的路径需要手动修改设置。

FTP空间,建议使用Godaddy免费10G,如果有BuyVM VPS,则自带了一个BuyVM 5G的免费备份空间,或者使用其它服务商的FTP空间,根据自己的实际情况选择,前提是要能连接的上,能上传和删除文件等。

二、获得自动备份脚本

1、安装邮件发送依赖组件(可选)

yum install sendmail mutt

SSH执行以上命令,安装邮件发送依赖组件,若不使用可不安装。推荐不安装。

2、获得备份脚本

wget http://soft.v5.net/tools/AutoBackupToFtp.sh

强烈要求将备份脚本下载到您的本地机器,然后使用DreamWeaver或EditPlus编辑,完成后再上传到root目录。

三、自定义设置

1、打开AutoBackupToFtp.sh

看到以下文字,请根据黄色文字说明,并根据实际情况修改

#!/bin/bash
#你要修改的地方从这里开始
MYSQL_USER=root           #mysql用户名
MYSQL_PASS=123456         #mysql密码
MAIL_TO=cat@hostloc.com   #数据库发送到的邮箱
FTP_USER=cat              #ftp用户名
FTP_PASS=123456           #ftp密码
FTP_IP=imcat.in           #ftp地址
FTP_backup=backup         #ftp上存放备份文件的目录,这个要自己得ftp上面建的
WEB_DATA=/home/www        #要备份的网站数据
#你要修改的地方从这里结束

2、演示一个LNMP 一键安装包 的设置方法

1 ) 创建本地备份文件目录

cd /home
mkdir backup  #新建文件夹(备份文件本地存放到/home/backup,保留3天)

2 )修改AutoBackupToFtp.sh相关信息

#!/bin/bash
#你要修改的地方从这里开始
MYSQL_USER=root           #mysql用户名
MYSQL_PASS=123456         #mysql密码
MAIL_TO=cat@hostloc.com   #数据库发送到的邮箱
FTP_USER=cat              #ftp用户名
FTP_PASS=123456           #ftp密码
FTP_IP=imcat.in           #ftp地址
FTP_backup=backup         #ftp上存放备份文件的目录,这个要自己得ftp上面建的
WEB_DATA=/home/wwwroot    #要备份的网站数据
#你要修改的地方从这里结束

红色部分必须修改,其余黄色说明以及对应部分请根据实际情况修改。

backup-1.jpg

邮件发送问题:

查找文件

#发送数据库到Email,如果数据库压缩后太大,请注释这行
echo "主题:数据库备份" | mutt -a /home/backup/$DataBakName -s ……
若不使用,请在下列语句前加上“#”,注意红色部分。
#echo "主题:数据库备份" | mutt -a /home/backup/$DataBakName -s ……

3、测试备份是否正常

sh /root/AutoBackupToFtp.sh

测试过程中请不要关闭SSH,直到执行完毕,若没有问题,则继续。

四、定时执行,每日备份

1、赋予文件执行权限(755)

chmod +x /root/AutoBackupToFtp.sh

2、设定自动任务

crontab -e

SSH执行以上命令。

3、添加任务

1)添加执行语句

00 00 * * * /root/AutoBackupToFtp.sh

按键盘字符:“i”,回车另起一行,添加以上代码,路径和时间请根据实际情况修改。

其中00 00为时间分/小时,可自行修改,例如:30 00 ***,就是每天凌晨0:30运行这个脚本。

backup-2.jpg

2)保存并退出

按键盘“Esc”键,退出编辑模式,再按shift+;(即“:”号),输入wq,回车,保存并退出即可生效。



轉載內容請註明出處: 轉載自V5.Net(原文:https://v5.net/CentOSApp/CentOS-Auto-Backup.html