Linux自动压缩备份目录文件与恢复
jopen
9年前
首先建立以个空白文档,然后打开编辑成需要的内容,最后保存为*.sh文件
比如我现在Linux 系统 /usr下有个目录soft需要让它每天自动压缩打包到/opt/ftp的目录下,并以当前时间命名
例:写个shell文件 ,把以下保存为backup.sh,记得要给加上运行的权限
#!/bin/sh date=`date +"%Y%m%d"` tar -czvf /opt/ftp/soft_$date.tar.gz /usr/soft
定时执行 比如每天早上10点
则修改/etc/crontab文件 加入下面一句(path就是你backup.sh的路径)
00 10 * * * root /path/backup.sh > /dev/null 2>&1
又比如每天晚上2点1分运行
把下面一句加到/etc/crontab里就可以了 每晚2点1分执行 path就是backup.sh的路径
01 2 * * * root /path/backup.sh > /dev/null 2>&1
如果只想每天只保留一个备份文件
就
#!/bin/sh tar -czvf /opt/ftp/soft.tar.gz /usr/soft
恢复备份,在预设的情况下,我们可以将压缩档将文件恢复到指定目录!以这个范例来说,
#我先将工作目录变换到想要解压到的目录比如 /usr/local/src 底下,则在命令模式下cd到这个目录,然后在运行tar zxvf /opt/soft.tar.gz,则解开的目录会在 /usr/local/src/etc
还有就是备份指定目录,但要排除目录内的某些文件夹,例子 我现在要备份opt目录,但要排除opt目录下的FTP文件夹
tar -czvf /opt/ftp/opt.tar.gz --exclude=/opt/ftp /opt
日期的格式:* * * * *,五个星号分别是,分(0-59) 时(0-23) 天(1-31) 月(1-12) 星期(0-6)0是礼拜天
例子:
00 2 * * * 每天晚上2点运行
01 2 * * * 每天晚上2点1分运行
01 2 29 * * 每个月第29天2点1分运行
01 2 29 10 * 第十个月的第29天2点1分运行
压缩与解压缩要看用什么格式压缩的对应用什么格式解压,比如.gz(有gzip压缩而成),解压方法:gzip -d filename