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

Linux下如何正确配置crontab并执行 linuxcrontabshell 

程序员文章站 2022-05-26 13:06:30
...
【1/6】查看crontab配置要求
# more /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
【2/6】查看crontab服务是否启动
# service crond status
Redirecting to /bin/systemctl status crond.service
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2020-07-12 10:48:33 CST; 10min ago
Main PID: 156058 (crond)
   CGroup: /system.slice/crond.service
           └─156058 /usr/sbin/crond -n

Jul 12 10:48:33 localhost.localdomain systemd[1]: Started Command Scheduler.
Jul 12 10:48:33 localhost.localdomain crond[156058]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 7% if used.)
Jul 12 10:48:33 localhost.localdomain crond[156058]: (CRON) INFO (running with inotify support)
Jul 12 10:48:33 localhost.localdomain crond[156058]: (CRON) INFO (@reboot jobs will be run at computer's startup.)
【3/6】查看用户要执行的crontab命令或者脚本
# ll /var/spool/cron/
total 4
-rw-------. 1 root root 94 Jul 12 00:19 root
【4/6】查看某个具体用户下要执行的crontab命令或者脚本
# more /var/spool/cron/root
# 定时对Nginx日志切割,按天轮转日志
59 23 * * * /root/can_do/rotateLog4Nginx.sh
或者
# crontab -l
# 定时对Nginx日志切割,按天轮转日志
59 23 * * * /root/can_do/rotateLog4Nginx.sh

【5/6】重启下crontab服务
# service crond restart
Redirecting to /bin/systemctl restart crond.service

【6/6】查看执行失败日志
# more /var/spool/mail/root
【小结】
1> 先通过当前用户执行下命令或者脚本是否ok,
2> crontab是按用户执行的,如果非root需要切到当前用户下执行;建议按root加crontab。
3> 加入要执行的crontab命令或者脚本,重启下crontab服务,servcie crond restart。
4> 注意因为要执行的crontab脚本本身失败引起的问题,比如命令需要交互,mv,copy等,建议强制覆盖或者保证可执行成功。
【温馨提示】
如果您觉得满意,可以选择支持下,您的支持是我最大的动力:

Linux下如何正确配置crontab并执行
            
    
    
        linuxcrontabshell