首先需要备份的日志目录:/var/log/alternatives.log 备份到tmp/logss下 备份文件后面以时间戳结尾date +%Y%m%d%H%M%S
操作如下: 1、准备一个Shell脚本
#!/bin/bash #编译器 mypath='/tmp/logss' #日志备份到该目录下,定义变量使用单引号 echo ${mypath} #回应/tmp/logss
mylog='/var/log/altenatives.log' #我们要备份的日志 echo ${mylog} #回应/var/log/altenatives.log
time=`date +%Y%m%d%H%M%S`#时间戳,执行命令使用``,esc下面的 echo ${time} #回应时间戳 cp ${mylog} ${mypath}/${time} #备份日志altenatives.log到/tmp/logss路径下 echo ${mypath} ${mypath}/${time} #回应 执行脚本
然而在上述的执行脚本的会发现没有权限,那是因为刚刚的test.sh文件没有权限,更改一下文件权限或者切换到root模式就好了 更改文件权限: # chmod 777 ./test.sh #需要给这它赋与权限,可读可写可执行,参考Linux 文件和文件夹权限
2、crontab定时任务
查看定时任务
# crontab -l #查看定时任务
3、重启crond
# service crond reload
这样就实现了一分钟一次的日志备份,事实上就是一个copy。
事实上还可以直接在crontab定时任务中直接写一条命令,不用再弄一个shell脚本: * * * * * cp /var/log/alternativers.log /home/shiyanlou/tmp$(date +\%Y\%m\%d\%H\%M\%S)
同样也可以实现简单的效果,复杂的东西还是专门弄个shell比较好。