Linux定期数据备份脚本

本文介绍了一个用于Linux系统的自动备份脚本,该脚本能够按需排除特定文件,并通过FTP自动上传备份。此外,还提供了详细的日志记录,便于监控备份状态。配合cron定时任务,可以实现定期自动备份。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考文章
1.Linux 定期自动备份脚本
2.《深入浅出Linux工具与编程》

此脚本实现了按需备份(排除指定的不需要备份的文件)和自动ftp上传功能。并有相应的日志记录,配合cron命令定期执行此脚本可实现定期数据自动备份上传。
backup.sh 内容如下:

#!/bin/bash
#author:        mylq
#date:          2016-12-26
#role:          backup files periodically.
#website:       http://blog.youkuaiyun.com/myslq
##################################################
WORKDIR=/backup
LogFile=/backup/log/`date +"%Y-%m"`.log
DATE=`date +"%Y-%m-%d"`
##################################################
echo "backup start at $(date +"%Y-%m-%d %H:%M:%S")" > $LogFile
echo "--------------------------------------------------" >> $LogFile

rm -f data/backup.$DATE.tar data/exclude.list
#产生排除文件列表
#*.tar *.Z *.gz *.rar *.o .*等文件不进行备份
find -L include -name '*.tar' -o -name '*.Z' -o -name '*.gz' -o -name '*.o' -o -name '.*' >> data/exclude.list
find -L src -name '*.tar' -o -name '*.Z' -o -name '*.gz' -o -name '*.o' -o -name '.*' >> data/exclude.list

tar -chvf data/backup.$DATE.tar -X data/exclude.list .profile include src scripts lib
compress -F data/backup.$DATE.tar

ftp -n 192.168.2.110 <<!
user backup backup
lcd backup
cd bak_dir
bin
put backup.$DATE.tar.Z
bye
!

rm -f data/backup.$DATE.tar data/backup.tar.Z data/exclude.list

echo "--------------------------------------------------" >> $LogFile
echo "backup end at $(date +"%Y-%m-%d %H:%M:%S")" >> $LogFile
echo " " >> $LogFile
exit 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值