• /etc/crontab和crontab -e的区别


    (1)
    /etc/crontab是系统级别的crontab,系统的设置等,这种方法只有root用户能用
    crontab -e是用户级的crontab,会被写到 /var/spool/cron 目录下,生成一个和用户名一致的文件,文件内容就是我们编辑的定时脚本,crontab命令实际是/usr/bin/crontab这个可执行文件

    有些系统设置即使用root账号crontab -e也不行,必须放到/etc/crontab中


    (2) 
    /etc/crontab 有用户字段,         1 * * * *  root  ntpdate 192.168.0.153                                               >/dev/null 2>&1 
    crontab -e中不能设置用户字段,1 * * * *           php /root/mobile/scripts/refresh_pass_reborn.php > /dev/nul 2>&1 


    (3)crontab -e会进行语法检查,vi /etc/crontab 不会检查语法


    一些问题:

    1、/var/spool/clientmqueue目录过大,占用磁盘满了 

    原因:/var/spool/clientmqueue是如果系统中有用户开启了cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了这些文件 
    解决:将输出重定向,如> /dev/null 2>&1,补充:错误输出也要重定向 


    2、/etc/crontab的权限 

    不要随意改动这个文件的属性,这个文件属性应该设置成644或者600,否则会报(system) BAD FILE MODE (/etc/crontab ) 


    3、手动能够执行,但是crontab脚本里面不执行, 检查下crontab的环境变量 

    HELL=/bin/bash 
    PATH=/sbin:/bin:/usr/sbin:/usr/bin 
    MAILTO=root 
    HOME=/
  • 相关阅读:
    equals方法
    StringBudilde
    日期
    system
    File类
    calender
    stringbuilder tostring
    File的三种构造方法
    Java入门——day52
    Java入门——day53
  • 原文地址:https://www.cnblogs.com/fanren224/p/8457274.html
Copyright © 2020-2023  润新知