我们需要在所有用户的 cron 路径中设置 /usr/local/bin。有没有办法在系统范围内设置它,而无需编辑每个用户的 crontab?
我们尝试将 PATH 添加到 /etc/crontab:
# grep PATH /etc/crontab
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Run Code Online (Sandbox Code Playgroud)
但是当用户在他们的 crontab 中有这个时:
$ crontab -l | grep PATH
* * * * * echo $PATH > /tmp/current_cron_path
Run Code Online (Sandbox Code Playgroud)
...它表明他们的路径仍然设置为默认值:
$ cat /tmp/current_cron_path
/usr/bin:/bin
Run Code Online (Sandbox Code Playgroud)
您可以在 crontab 配置文件中配置 PATH ,如第一个代码所示,除了那里。首先指定环境变量,然后指定作业。
UPD:由于链接已损坏,以下是摘录:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16661 次 |
| 最近记录: |