![.NET CORE 作为 cron 作业失败](https://linux22.com/image/1193086/.NET%20CORE%20%E4%BD%9C%E4%B8%BA%20cron%20%E4%BD%9C%E4%B8%9A%E5%A4%B1%E8%B4%A5.png)
我已经让它工作了(不同的.NET核心应用程序,但也是.net 6.0)。但是将新应用程序部署到新服务器时......问题如下:
我可以运行应用程序:./ApplicationName
我可以将应用程序放入 bash 脚本并执行该脚本。例如 /var/apps/scripts/runmyapp.sh
手动运行其中任何一个都没有问题。但是当我在 crontab 中安排它们时(sudo 或我的用户),它们不会运行。我知道计划的格式是正确的,因为我正在执行其他命令(即移动要处理的文件)。
应用程序和 bash 脚本均标记为可执行文件,我尝试过将这些文件的所有权 (chown) 授予 root 和本地用户。我可以在 /var/log/syslog 中看到正在执行命令/脚本...但是...没有记录其他日志。我有一个可以显示日志的 sqlite db。当我手动运行应用程序时,一切都会执行。
答案1
事实证明,这只是一个脚本拼写错误。不幸的是,cron 日志显示了脚本调用,但没有提供任何细节表明这个脚本实际上并不存在。在让团队成员审查后,他发现了这个疏忽。我这边做得很蠢,但从现在起,我必须记住对这些事情要格外认真。