我有一个像这样的CRON作业:
0 0 * * * cd /home/path/to/script && sudo -u myuser ./thescript.sh
此脚本构建一个docker镜像,运行一个简单的python应用程序,在文件上转储测试验证报告。当我在终端中运行此脚本时,一切正常(生成的文件进入/ home / myuser)。不幸的是,当我运行CRON作业时,文件已创建,但为空。它必须与拥有CRON工作的Root有关,但我无法弄清楚如何完成它
有任何线索吗?
答案 0 :(得分:0)
sudo
需要TTY,而cron不会运行带有TTY的命令。您需要为root用户运行cron
这可以使用
完成sudo crontab -e
然后在cron中不要使用sudo
0 0 * * * cd /home/path/to/script && ./thescript.sh