小心灵学院
欢迎您的光临

简单的网站备份脚本并自动上传到远程ftp服务器

今天给新手站长们推荐一个简单的网站备份脚本,自动上传到ftp服务器。这个脚本代码来自香菇肥牛博主,这个简单的一键备份,可以把网站文件和数据库备份到FTP服务器上,只需要配置几个简单参数即可。

简单的网站备份脚本,自动上传到远程ftp服务器

脚本代码

#!/bin/bash
MYSQL_USER=root
MYSQL_PASS=MySQLrootPassWord
MYSQL_DB_NAME=mywordpressdb
FTP_HOST=ftp.1fichier.com
FTP_PORT=21
FTP_USER=myftpuser
FTP_PASS=myftppassword
FTP_PATH=/
WEB_FILES_PATH=/srv/www/example.com
LOCAL_BACKUP_PATH=~/backup
WEBSITE_NAME=example.com



DB_BACKUP_FILE_NAME=$WEBSITE_NAME.$(date +"%Y%m%d").db
WEBSITE_FILES_BACKUP_FILE_NAME=$WEBSITE_NAME.$(date +"%Y%m%d").webfiles
mysqldump -u $MYSQL_USER -p$MYSQL_PASS $MYSQL_DB_NAME > $DB_BACKUP_FILE_NAME.sql
tar zcf $LOCAL_BACKUP_PATH/$DB_BACKUP_FILE_NAME.tar.gz *.sql
rm -f $DB_BACKUP_FILE_NAME.sql
tar zcf $LOCAL_BACKUP_PATH/$WEBSITE_FILES_BACKUP_FILE_NAME.tar.gz $WEB_FILES_PATH
ftp -v -n $FTP_HOST $FTP_PORT<< END
user $FTP_USER $FTP_PASS
type binary
passive
cd $FTP_PATH
put $LOCAL_BACKUP_PATH/$DB_BACKUP_FILE_NAME.tar.gz
put $LOCAL_BACKUP_PATH/$WEBSITE_FILES_BACKUP_FILE_NAME.tar.gz
bye
END

预置参数

MYSQL_USER=root  #mysql数据库用户名
MYSQL_PASS=MySQLrootPassWord  #mysql数据库密码
MYSQL_DB_NAME=mywordpressdb  #mysql数据库名
FTP_HOST=ftp.1fichier.com  #远程ftp服务器地址
FTP_PORT=21  #远程ftp端口
FTP_USER=myftpuser #远程ftp用户名
FTP_PASS=myftppassword ¥远程ftp密码
FTP_PATH=/  #远程ftp备份文件存储路径
WEB_FILES_PATH=/srv/www/example.com  #需要备份的网站目录
LOCAL_BACKUP_PATH=~/backup  #本地备份文件存储地址
WEBSITE_NAME=example.com  #备份的网站名

定时任务

把脚本代码另存为auto_backup.sh,并执行chmod +x auto_backup.sh赋予执行权限。

执行crontab -e ,在最后追加下面这段内容

#每天3:30分执行自动备份
30 3 * * * * /root/auto_backup.sh
赞(0)
未经许可不得转载:小心灵学院 » 简单的网站备份脚本并自动上传到远程ftp服务器
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址