shell+定时任务+nginx信号管理,完成日志按日期存储

shell+定时任务+nginx信号管理,完成日志按日期存储

Linux定时任务

 

服务操作说明:

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

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

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

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

/sbin/service crond status //状态

 

centos 7

systemctl reload crond.service    //重新载入配置

 

 

查看定时任务日志:

tail -f /var/log/cron

 

实际应用: shell+定时任务+nginx信号管理,完成日志按日期存储

分析思路:

凌晨00:00:01,把昨天的日志重命名,放在相应的目录下

再USR1信息号控制nginx重新生成新的日志文件

具体脚本:

 

 

 

 

#!/bin/bash  
base_path='/usr/local/nginx/logs'  
log_path=$(date -d yesterday +"%Y%m")  
day=$(date -d yesterday +"%d")  
mkdir -p $base_path/$log_path  
mv $base_path/access.log $base_path/$log_path/access_$day.log  
#echo $base_path/$log_path/access_$day.log  
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`  

 

 

 

通过PHP来控制和修改linux的计划任务

参考:https://mengkang.net/212.html

 

 

 

error_reporting(E_ALL);  
$data = "* * * * * curl 'http://quankr2.com/index.php?g=CollectArticle&m=Collect&a=test'\n";  
file_put_contents('/mnt/hgfs/code/root', $data);  
$handle = popen('/usr/bin/sudo cp /mnt/hgfs/code/root /var/spool/cron/root','r');  
pclose($handle);  

 

 

 

 

 

处理过程

1.修改/var/spool/cron 目录的权限

# chmod 777 /var/spool/cron

2.通过PHP修改/var/spool/cron/用户名 这个文件时,定时任务命令语句后面一定要以换行符(\n)结尾.

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值