crond如何确定用户的主目录?

时间:2018-11-06 13:01:40

标签: cron home-directory

我的问题是:
如何让cron知道用户的实际主目录是什么?

Cron尝试将chdir设置为错误的目录。 我想将cron转换为$(getent passwd someone | awk -F':' '{ print $6 }')

按现状,计划在/var/spool/cron/someone中执行的cronjob在/var/log/cron中造成cron日志错误。

cronjob是:

0 5 * 2,5,8,11 1 [ $(date +\%d) -le 07 ] && /opt/someone/script.py

错误是:

Nov  5 05:00:01 localhost CROND[17130]: (CRON) ERROR chdir failed (/home/someone): No such file or directory

/home/someone上确实没有这样的文件或目录。

Cron不应期望会有一个。我需要将cron chdir到用户的实际目录,即/opt/someone

-bash-4.2$ getent passwd someone  
someone:x:989:986:someone:/opt/someone:/bin/bash  

someone

-bash-4.2$ echo $HOME
/opt/someone

曾经使用/home/someone作为其主目录创建用户。 这可能是一个缓存问题吗?我无权重新启动cron服务。

-bash-4.2$ egrep 'shadow|passwd' /etc/nsswitch.conf
passwd:     files sss
shadow:     files sss

cron守护程序软件包详细信息:

$ rpm -qa | grep cronie
cronie-1.4.11-19.el7.x86_64
$ uname -r
3.10.0-862.el7.x86_64

这表明我需要在crontab文件之外进行修复:https://unix.stackexchange.com/a/442550

亲切的问候, Joost

0 个答案:

没有答案