欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

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

程序员文章站 2023-03-25 20:53:06
实现准备 # 需要备份文件路径:/opt/apollo/logs/access_log [root@localhost opt]# cd apollo/...

实现准备

# 需要备份文件路径:/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

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