服务器资源定时备份压缩

前言

之前做的一个图片分享的小程序,因为服务器端保存了很多图片文件资源且没有备份。怕丢失所以做个备份,刚开始是用springboot做的一个cron定时器应用来定时压缩打包的。后面做完了又想着用linux命令和crontab来做。

目录

思路

创建脚本

设置定时执行脚本

crond介绍

检查crond服务的状态

常用命令

crond的格式

crond配置文件

思路

在服务器(centos8)创建一个文件压缩备份脚本,然后用crond系统服务来定时执行这个脚本,达到定时备份的需求。

创建脚本

#将小程序图片文件目录进行压缩备份到指定文件夹
#删除12天前的备份数据,只保留最新两个备份
#将使用crond定时器,每周一打包备份一次

#! /bin/sh
#创建一个临时文件
mkdir /usr/local/beifen

#把要备份的数据拷贝到临时文件夹
cp -r /usr/local/uploadFiles  /usr/local/beifen

#将临时文件夹数据备份打包
tar -zcPvf /usr/local/uploadFilesZip/bk$(date +%Y%m%d).tar.gz  /usr/local/beifen

#删除临时文件夹
rm -rf /usr/local/beifen/

#删除文件夹下超过12天的备份文件
find /usr/local/uploadFilesZip -mtime +12 -name "*.tar.gz" -exec rm -rf {} \;

设置定时执行脚本

命令:crontab -e

 执行完会让你输入定时crond表达式,我这里是 30 6 * * 1 /usr/local/backup.sh 每周一早上六点半执行一次。然后wq 保存退出,会提示你新的crond服务创建成功。

记得重启crond服务:service crond restart

至此定时打包备份功能,配置成功。

crond介绍

检查crond服务的状态

/sbin/service crond status

 表示该服务正在运行中,如果没有则先安装:yum install crontabs

常用命令

/sbin/service crond start //启动服务

/sbin/service crond stop //关闭服务

/sbin/service crond restart //重启服务

/sbin/service crond reload //重新载入配置

/sbin/service crond status //启动服务

crond的格式

minute   hour   day   month   week   command

其中:

minute: 表示分钟,可以是从0到59之间的任何整数。

hour:表示小时,可以是从0到23之间的任何整数。

day:表示日期,可以是从1到31之间的任何整数。

month:表示月份,可以是从1到12之间的任何整数。

week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。

command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

例如:

3,5 8-11 * * 1  /etc/init.d/smb restart 表示 每个星期一的上午8点到11点的第3和第5分钟重启smb

30 6 * * 1 /usr/local/backup.sh 表示 每个星期一的上午6点30分执行备份脚本

具体输入命令:vi /etc/crontab 

crond配置文件

/var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如root用户建的crontab任务对应的文件就是/var/spool/cron/root。一般一个用户最多只有一个crontab文件。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值