ubuntu下crontab无效解决方法详解


    在Debain的docker中启用crontab,有问题处理了一天,特地记录一下。Debain和ubuntu差不多,故算在ubuntu下面了。
    1.第一个问题,安装crontab
    
apt-get install cron

    看清楚了,是cron,不是crond啊!在centos下安装需要的vixie-cron之类的东西也根本就不需要啊!在网上各种适用于centos的教程真是把我坑惨了!记住,在ubuntu下只需要上面一个指令就够了!
    2.启动crontab服务
    
/etc/init.d/cron status  #查看状态

/etc/init.d/cron restart  #启动服务

    查看状态用ps -ef|grep cron也行,启动服务用service start cron也行。只要记住一点,是cron不是crond!crond是centos用的。
    3.针对docker,如果用的不是docker就可以跳过这一步了
    修改/etc/pam.d/cron文件,将其中的required改为sufficient,然后重启cron服务:/etc/init.d/cron restart
    4.脚本中必须用绝对路径
    无论是shell脚本还是python脚本,里面所有的路径必须都是绝对路径!
    5.导入需要的环境变量
    例
    
0 8 * * * . /etc/profile; /bin/sh /home/abc/test.sh

0 8 * * * /bin/usr/python2.7 /home/abc/test.py

    这些都ok了应该就没有问题了。