【发布时间】:2018-02-08 00:39:41
【问题描述】:
当我使用 root 用户创建一个 cronjob 时,它运行良好。但是当我切换到用户 Apache 并创建一个 cronjob 时,它不会运行。
是什么原因造成的?我在考虑这样的权限问题,但不知道是什么。
【问题讨论】:
当我使用 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
【讨论】: