linux centos8 nologin用户执行crontab命令

2021年6月10日12:44:56

 一般网站的跑的用户比如www都是设置成  /sbin/nologin,只提供ftp账号权限给www用户使用

cat /etc/passwd

可以看到权限,但是执行 crontab是需要bash权限的

 

但是你使用root 账号 crontab -e 跑的时候,比如代码里有生产文件的时候就是root:root导致权限不对,其实解决办法也很简单

使用sudo -u www 执行命令 比如

* * * * * sudo -u www /usr/local/php8/bin/php /data/wwwroot/mc/artisan schedule:run >> /data/root.log

 

查看日志

tail -f /data/root.log

你会发现 root.log 还是root:root

但是你发现你执行的计划任务,比如创建新的日志文件会变成 www:www 

posted on 2021-06-10 15:55  zh7314  阅读(252)  评论(0编辑  收藏  举报