Linux下定时备份文件

原文   https://blog.csdn.net/q290994/article/details/79186821

今天有人让我给写个脚本,说是让Linux定时备份文件数据,并删除超过一定时间的备份。听起来很有意思,一番摸索之后成功了没有呢?(因为是给对linux不太熟的人看,所以比较详细)具体看下面吧:

一、 编写脚本
编写一个脚本文件,使脚本可以执行备份命令。 
例如,将文件目录 /home/backups/balalala 备份到/home目录下,并压缩。

1. 创建脚本
命令格式: touch 路径/文件名.sh 
例如: 
输入命令:touch /home/backup.sh 

这里写图片描述
2. 写入命令
首先进入脚本:vi命令 
vi /home/backup.sh 
在脚本内写入:

#!/bin/sh
mkdir /home/beifen
#创建一个临时文件(要保存备份的路径)
cp -r /home/backups/balalala  /home/beifen
#数据存在backups目录下,备份到beifen目录下,所以先将数据拷过来
tar -zcPvf /home/backup$(date +%Y%m%d).tar.gz /home/beifen
 #将数据所在文件夹beifen打包
rm -rf /home/beifen/
 #删除临时文件内容

find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;
#删除改文件夹下超过30天的文件
这里写图片描述
3. 执行脚本文件
直接手动执行脚本文件。 
命令格式:sh 路径/文件名.sh 
例如:sh /home/backup.sh

二、 设置定时执行本脚本。
例如:设置脚本每7天执行一次。

1. 安装crond
如果没有安装crond服务就先装上服务。 
检查服务状态:service crond status

2. 修改crontab内容
输入命令:crontab –e 
进入后继续输入命令:0 0 /7 * /home/backup.sh 
设置为每7天执行一次脚本文件 
然后,保存退出:wq

sh脚本前面五个字段分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(0-12)、星期几(0-6)后面的为脚本所在目录

这里写图片描述

3. 重新启动crond服务
输入命令:service crond restart
 

  • 0
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值