一、 编写脚本

编写一个脚本文件,使脚本可以执行备份命令。 
例如,将文件目录 /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 *  sh /home/backup.sh   ---->一定要加上sh命令
设置为每7天执行一次脚本文件 
然后,保存退出:wq

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

3. 重新启动crond服务

输入命令:service crond restart

至此配置完成!

#! /bin/sh
mkdir /home/plantask/temp
#创建一个临时文件 保存备份的路径
cp -r /www/xilan /home/plantask/temp
#数据存在plantask目录下,备份到temp目录下,所以先将数据拷过来
tar -zcPvf /www/backups/xilan$(date +%Y%m%d%H%M%S).tar.gz /home/plantask/temp -->时间精确到毫秒
#将数据所在文件夹plantask打包
rm -rf /home/plantask/temp
#删除临时文件内容 find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;

crontab

0 */1 * * * sh /home/plantask/backup.sh  #每小时执行一次
*/1 * * * * sh /home/plantask/backup.sh #每分钟执行一次 用于调试

  

Linux下定时备份文件的更多相关文章

  1. Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录

    此为在网络上找来的,觉得很好! 实现目的: 对Mongodb数据库日志按天保存,并且只保留最近7天的日志记录. 具体操作: 使用Mongodb数据库自带的命令来切割日志 ps -def | grep ...

  2. Linux下定时备份MySQL数据库的Shell脚本

    Linux下定时备份MySQL数据库的Shell脚本   对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间 ...

  3. Linux下定时执行脚本(转自Decode360)

    文章来自:http://www.blogjava.net/decode360/archive/2009/09/18/287743.html Decode360's Blog  老师(业精于勤而荒于嬉 ...

  4. linux下定时执行任务方法【转】

     之前就转过一篇关于定时任务的文章,前俩天用,还的翻出来看!!!再转一次,备用,,需要的时候不用麻烦找! ----------------------------------------------- ...

  5. linux下定时执行任务的方法

    linux下定时执行任务的方法 在LINUX中你应该先输入crontab -e,然后就会有个vi编辑界面,再输入0 3 * * 1 /clearigame2内容到里面 :wq 保存退出. 在LINUX ...

  6. 实用脚本 2 -- Linux下定时执行脚本

    今天学习Linux下定时执行脚本,看到一篇讲解比较好的文章,特此拿来分享. 原文链接:http://www.blogjava.net/decode360/archive/2009/09/18/2877 ...

  7. 将一个jar包放到linux下定时执行

    将一个jar包放到linux下定时执行 1.在dbtodb文件夹下新建一个dbtodb.sh,脚本内容为: #!/bin/bash cd /usr/dbtodb/ java -jar dbtodb.j ...

  8. Dcloud课程6 php脚本如何在Linux下定时更新数据

    Dcloud课程6 php脚本如何在Linux下定时更新数据 一.总结 一句话总结:linux下用crontab命令实现定时任务. 1.linux下执行php脚本用什么命令? 直接用php命令php ...

  9. Linux下定时备份数据库

    linux下使用crontab定时备份MYSQL数据库的方法只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: mkdir /var/lib/mysqlbackup cd ...

随机推荐

  1. JS string 常用方法总结

    var str = "abc123def666"; // charAt() 方法返回字符串中指定位置的字符. // 参数:index // console.log(str.char ...

  2. LR socket协议脚本

    socket协议分为TCP.UDP两种(区别与联系在此不做赘述),一种为长连接.一种为短连接.如果创建连接时在init中对应关闭连接在end中,则为长连接:如果创建关闭连接都是在action则为短连接 ...

  3. Flutter内置ICON

    由于有时打不开flutter的icon官网 https://material.io/tools/icons/?style=baseline 截图存下icon 如果看不清  Ctrl +   恢复Ctr ...

  4. springboot aop 拦截接口执行时间

    /** * @description: 记录接口执行时间日志的记录 * @author: * @create 2018-12-27 16:32 */ @Target(ElementType.METHO ...

  5. ubuntu16.04 caffe 安装

    所需环境 opencv3.x + cuda9.0 安装 caffe首先在你要安装的路径下 clone : git clone https://github.com/BVLC/caffe.git 进入 ...

  6. react 入坑笔记(六) - 组件的生命周期

    React 组件生命周期 详细参考: react 组件生命周期 组件的生命周期可分为三个状态: 1.Mounting:已经挂载/插入到真实 DOM 树上: 2.Updating:正在被重新渲染: 3. ...

  7. bzoj 1926: [Sdoi2010]粟粟的书架 (主席树+二分)

    链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1926 题面; 1926: [Sdoi2010]粟粟的书架 Time Limit: 30 Se ...

  8. Django_ORM操作 - 查询

    ORM 操作 必知必会13条 <1> all(): 查询所有结果 <2> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <3> get(* ...

  9. VimFaultException A specified parameter was not correct configSpec.guestId

    VimFaultException A specified parameter was not correct configSpec.guestId 在对接VMware的环境中创建虚拟机报错 查看错误 ...

  10. Linux-yum只下载不安装

    通过yum命令只下载rpm包不安装 经常遇到服务器没有网络的情况下部署环境,或者创建自己的 yum 仓库等.每次都是在网上搜搜搜,都是五花八门,自己整理了下自己用到的以下三种方式,这里没有太多废话,只 ...