Linux centos下设置定时备份任务的方法步骤

实现准备

  # 需要备份文件路径:/opt/apollo/logs/access_log  [root@localhost opt]# cd apollo/  [root@localhost apollo]# tree  .  ├── logs  │  └── access_log  └── test.sh  # 文件备份存放路径:/tmp/logs  # 备份文件加上时间戳date + %Y%m%d%H%M%S

1.编写shell脚本

  [root@localhost tmp]# vi /opt/apollo/test.sh  # 编译器  # !/bin/bash    # 日志备份到该目录下,定义变量使用单引号  mypath='/tmp/logs'  # 回应/tmp/logs  echo ${mypath}    # 要备份的日志  mylog='/opt/apollo/logs/access_log'  # 回应/opt/apollo/logs/access_log  echo ${mylog}    # 时间戳,执行命令使用``,esc下面的  time=`date +%Y%m%d%H%M%S`  # 回应时间戳  echo ${time}    # 备份日志access_log到/tmp/logs路径下  cp ${mylog} ${mypath}/${time}_access.log  # 回应  echo ${mypath} ${mypath}/${time}_access.log  

2.执行test.sh

  [root@localhost apollo]# ./test.sh  -bash: ./test.sh: Permission denied

3.执行ls -la

  [root@localhost apollo]# ls -la  total 8  drwxr-xr-x  2 root root  21 Jan 20 08:00 .  drwxr-xr-x. 14 root root 4096 Jan 20 07:07 ..  -rw-r--r--  1 root root 489 Jan 20 08:00 test.sh

4.给文件test.sh赋与执行权限

  [root@localhost apollo]# chmod +x ./test.sh  [root@localhost apollo]# ls -la  total 8  drwxr-xr-x  2 root root  21 Jan 20 08:00 .  drwxr-xr-x. 14 root root 4096 Jan 20 07:07 ..  -rwxr-xr-x  1 root root 489 Jan 20 08:00 test.sh  

5.再次执行,脚本没有报错

  [root@localhost apollo]# ./test.sh  /tmp/logs  /opt/apollo/logs/access_log  20190120080932  /tmp/logs /tmp/logs/20190120080932_access.log  

6.编辑定时任务

  [root@localhost logs]# crontab -e  no crontab for root - using an empty one  crontab: installing new crontab  

7.查看定时任务

  # 每分钟执行一次test.sh  * * * * * sh /opt/apollo/test.sh  

8.重启crond

  [root@localhost logs]# service crond reload  Redirecting to /bin/systemctl reload crond.service  You have new mail in /var/spool/mail/root  

9.编写文件access_log

  # 需要备份文件路径:  /opt/apollo/logs/access_log  # 编辑文件  [root@localhost logs]# vi /opt/apollo/logs/access_log  # 追加内容如下:  mmmmmmmmmmmmmmmmmmmmm  

10.过1分钟,再去查备份存放目录

  [root@localhost logs]# cat 20190120083101_access.log  djddjsjsjsjjsjsjsj  mmmmmmmmmmmmmmmmmmmmm  

11.到此为止,定时备份任务完成.

恭喜你,学会备份了!

12.删除定时任务

  [root@localhost logs]# crontab -r  You have new mail in /var/spool/mail/root  

13.查看定时任务

  [root@localhost logs]# crontab -l  no crontab for root  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

参与评论