用linux定时备份文件,Linux下定时备份文件

一、 编写脚本

编写一个脚本文件,使脚本可以执行备份命令。

例如,将文件目录 /home/backups/balalala 备份到/home目录下,并压缩。

1. 创建脚本

命令格式: touch 路径/文件名.sh

例如:

输入命令:touch /home/backup.sh

ba32812e33643ca11932274983679318.png

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天的文件

687c28ddf09448401a5fe44eb7ae75a9.png

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命令

6fbd1d7d026e8d1529f7810f6313b82e.png

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下定时切割Mongodb数据库日志并删除指定天数前的日志记录

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

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

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

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

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

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

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

linux下定时执行任务的方法

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

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

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

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

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

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

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

Linux下定时备份数据库

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

随机推荐

C# 解析JSON格式数据

JSON简介 JSON(全称为JavaScript ObjectNotation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集.JSON采用完全独立于语言的文本格式,可 ...

go语言 类型:布尔类型

Go语言中的布尔类型与其他语言基本一致,关键字也为bool,可赋值为预定义的true和false示例代码如下: var v1 bool v1 = true v2 := (1 == 2) // v2也会 ...

thinkphp遗留问题

$data = array( 'username' => I('username','','htmlspecialchars'), 'content' => I('content'), ' ...

awk命令拷屏

如果不指明采取什么动作,awk默认打印出所有浏览出的记录,与{print $}是一样的 模式和动作两者是可选的,如果没有模式,则action应用到全部记录,如果没有action,则输出匹配全部记录. ...

MVC ActionResult -- JavaScriptResult,JsonResult

以下是ActionResult的继承图: 大概的分类: EmptyResult:表示不执行任何操作的结果 ContentResult :返回文本结果 JavaScriptResult:返回结果为Jav ...

java 获取系统变量(环境变量和设置变量)

前言 环境变量这个概念不陌生, 就是操作系统的环境变量. 系统变量就是java本身维护的变量. 通过 System.getProperty 的方式获取. 对于不同的操作系统来说, 环境变量的处理可能会 ...

ORACLE数据库、表空间、表的容量相关查询--1

未完待续……未完待续……未完待续……未完待续…… 1.查询某个表所占空间大小 col tablespace_name for a15 col segment_name for a15 col segm ...

一场围绕着‘Deeping Learning’的高考

Deep Learning的基本思想和方法 实际生活中,人们为了解决一个问题,如对象的分类(对象可是是文档.图像等),首先必须做的事情是如何来表达一个对象,即必须抽取一些特征来表示一个对象,如文本的处 ...

运行Scrapy程序时出现No module named win32api问题的解决思路和方法

有小伙伴在群里边反映说在使用Scrapy的时候,发现创建项目一切顺利,但是在执行Scrapy爬虫程序的时候却出现下列报错:“No module named win32api”,如下图所示,但是不知道怎 ...

SpringCloud系列------Eureka-Server

一.概述: Spring Cloud针对服务注册与发现,进行了一层抽象,并提供了三种实现:Eureka , Consul , Zookeeper 本篇文章只对Eureka 进行介绍: (部分内容引用  ...