Cronjob 没有运行 - 我尝试了 StackEx 的许多建议 - 仍然没有结果

Cronjob 没有运行 - 我尝试了 StackEx 的许多建议 - 仍然没有结果

我正试图设置一个 cronjob,但快要陷入疯狂了。我无论如何也想不通(花了很多时间/精力)如何解决,希望你能帮帮我。

我有一个 Python 脚本,/Server/Home/Paul/Sys+Tech/sortphotos/src/sortphotos.py它接受一些参数并将文件组织在单独的/子文件夹中。 当我直接运行该脚本时它运行良好

我已经为拥有 Python 脚本的用户 (paul) 设置了一个 crontab,看起来像这样,但是不起作用

* * * * * echo $(date) "cron works" > /var/log/testingcron
* * * * * /usr/bin/python /Server/Home/Paul/Sys+Tech/sortphotos/src/sortphotos.py -r --sort "%Y/%Y %m" /Server/Multimedia/Photo/+inbox_paul/ /Server/Multimedia/Photo/
#* * * * * /bin/bash /Server/Multimedia/Photo/organize-inbox.sh

一些详细说明

  • 我已设置a+rwx权限sortphotos.py

  • 我已经添加了 python 可执行文件的完整路径和脚本的完整路径

  • 我已经检查了源文件的访问/权限

  • 我试图设置一个organize-inbox.sh包含完整执行命令的 bash 脚本作为运行sortphotos.py(注释掉的第三行)的中介,但同样丢失了 的权限.sh直接运行 时这也有效organize-inbox.sh

  • 我尝试为 root 用户设置 cron

我在无休止的网上搜索中得到了一些有用的建议,其中一条建议是通过写入文件来测试 cron 是否真的在工作。这就是第一个 cronjob 的目的。它testingcron每分钟写入一行,并且每分钟我都会在该文件中看到一行带有时间戳的内容。不幸的是,第二和第三个命令没有产生预期的结果;

我期待着从你那里了解我遗漏了什么/搞砸了什么!谢谢,保罗

我正在运行 Ubuntu 20.4

答案1

事实证明目标文件夹的权限与其余设置不一致。

root是目标文件夹及其所有子文件夹的所有者。由于 cron-job 和 python 脚本是为没有脚本 写入权限的2022用户设置的,因此脚本失败。paul2022chown将目标文件夹设置为 cronjob 后,user:paul它将正常运行

最大的收获;我应该在发布之前更好地检查权限,但无论如何还是感谢您帮助我了解 cron(包括stderr& stdout)以满足未来的需求。

相关内容