您的位置:首页 > 运维架构 > Linux

Linux下使用crontab定时备份日志

2017-10-26 09:04 976 查看
原博地址:http://www.cnblogs.com/wuxiaoyu-1537/p/6226793.html

上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下:

首先需要备份的日志的源目录位于/opt/lampp/logs/access_log

备份到/tmp/logs下

备份文件加上时间戳date +%Y%m%d%H%M%S

以上是备份说明,下面分三步操作

一、shell脚本

[root@CentOs6 lampp]# vi test.sh    #创建shell脚本

#!/bin/bash                                    #编译器

mypath='/tmp/logs'                        #日志备份到该目录下,定义变量使用单引号

echo ${mypath}                             #回应/tmp/logs

mylog='/opt/lampp/logs/access_log' #我们要备份的日志

echo ${mylog}                               #回应/opt/lampp/logs/access_log

time=`date +%Y%m%d%H%M%S`#时间戳,执行命令使用``,esc下面的

echo ${time}                                  #回应时间戳

cp ${mylog} ${mypath}/${time}_access.log     #备份日志access_log到/tmp/logs路径下

echo ${mypath} ${mypath}/${time}_access.log#回应

 

[root@CentOs6 lampp]# ./test.sh    #执行test.sh

-bash: ./test.sh: 权限不够                #会提示权限不够

[root@CentOs6 lampp]# chmod +x ./test.sh    #需要给这它赋与权限

[root@CentOs6 lampp]# ./test.sh                   #再次执行,脚本没有报错

/tmp/logs

/opt/lampp/logs/access_log

20161227172323

/tmp/logs /tmp/logs/20161227172323_access.log

 

二、crontab 定时任务

[root@CentOs6 lampp]# crontab -e  #编辑定时任务

* * * * * sh /opt/lampp/test.sh       #每分钟执行一次test.sh,crontab使用在上篇Linux命令中详细介绍

[root@CentOs6 lampp]# crontab -l  #查看定时任务

* * * * * sh /opt/lampp/test.sh

三、重启crond

[root@CentOs6 lampp]# service crond reload

重新载入 crond:                                            [确定]

 

打开xftp查看



 

总结:

1- 先单独执行 .sh ,确定 .sh 可以执行不报错
2- 从根目录查找 *.access.log 看看备份的存放路径是否正确
3- 检查 crontab 里的空格是不是半角英文
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: