当我用root用户创建一个cronjob时,它会运行得很好。但是,当我切换到用户Apache并创建一个cronjob它不会运行。
什么可能导致这个?我正在考虑这样的许可问题,但无法弄清楚是什么。
问题是cron在执行任何操作之前尝试切换到用户的主目录,并且主目录不存在。
您必须创建目录。
更好的解决方案是使用sudo执行cron:
15 1 26 * * sudo -u apache /usr/bin/php /var/www/html/nextcloud/occ files:scan --path=1645FC94-D50C-4E40-B941-38CA3B88EC0F/files/ExternalStorage
对于特定用户使用cronjob,您能否帮助确认/var/spool/cron/username
中的任何特定用户?