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

本文详细介绍了如何在Linux环境下编写一个备份脚本,用于将特定目录的数据备份到另一个位置并压缩,同时删除旧的备份文件。脚本包括创建临时文件夹、拷贝数据、打包压缩、删除临时文件以及设定定时任务,确保每7天执行一次备份。此外,还讲解了如何使用crontab设置定时执行该脚本,确保数据安全和定期维护。
摘要由CSDN通过智能技术生成

一、 编写脚本

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

例如,将文件目录 /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 ...

随机推荐

Texture tiling and swizzling

Texture tiling and swizzling 原帖地址:http://fgiesen.wordpress.com If you’re working with images in your ...

Html中模态框(弹出框)使用入门

作为html学习学习模态框需要二步: 效果图 第一步学习HTML中 div的弹出 ①触发按钮        

docker 镜像导入导出

导出(Export) Export命令用于持久化容器(不是镜像).所以,我们就需要通过以下方法得到容器ID: sudo docker ps -a 接着执行导出: sudo docker export ...

【转】【可用】Android 登录判断器,登录成功后帮你准确跳转到目标activity

我们在使用应用时肯定遇到过这样的情景,打开应用,并不是需要我们登录,你可以浏览应用中的大部分页面,但是当你想看某个详情页的时候,点击后突然跳转到了登录页面,好,我们输入账号密码,点击登录,登录成功,跳 ...

Constructor JavaScript构造器模式。

构造器模式 : Constructor模式中, 通过在构造器前面加 new 关键字, 告诉JavaScript 像使用构造器一样实例化一个新对象,并且对象成员由该函数定义. 构造器内, 使用this ...

asp.net根据模版生成Word小记

最近遇到一个问题,客户提了一个新的需求,客户想要将显示在网页上的数据导出成Word进行套打,由于之前没有接触过这一块的内容,自己写的系统也没有使用这种功能,现在重头学习. 具体思路: 1.先制作Wor ...

java集合体系

Collection接口: 1.单列集合类的根接口. 2.定义了可用于操作List.Set的方法--增删改查: 3.继承自Iterable接口,该接口中提供了iterator() 方 ...

json,pickle,shelve模块,xml处理模块

常用模块学习—序列化模块详解 什么叫序列化? 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. 为什么要序列化? 你打游戏过程 ...

oc kvc的模式:匹配搜索模式(模式匹配)、装包解包

按照一定规则使用匹配模式在目标空间进行搜索,然后执行相应操作: 运行时系统将kvc的运行机制解释为模式匹配,将值的兼容性问题解释为装包解包问题 一.模式匹配 The default implement ...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值