为什么 CENTOS crontab 的 PATH 不包含/usr/sbin?
phpfpm
·
2024-01-15
·
via CentOS
这是一个创建于 880 天前的主题,其中的信息可能已经有所发展或是发生改变。
遇到的问题
研发侧发现,一个 php 脚本可以正常调用docker(podman)进行一些操作,但是经由 crontab 调度则执行失败
只说重点
- 发行版:腾讯云的 TencentOS Server 3.1 (TK4)
- 登录的 shell 的 PATH 有
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin
- crontab 的 path 只有
/usr/bin:/bin
- 如果缺乏/usr/sbin 会导致 podman 启动的时候无法访问到/usr/sbin/iptables
我想知道的问题
- crontab 的 path 没有
/usr/sbin到底是为啥
- 在 crontab 调度 docker 启动一个临时容器做一些事情的时候,正确的姿势是什么?手动指定一下 path?
 |
|
1
L4Linux 2024 年 1 月 15 日 via Android 1
现在的趋势是 /bin /sbin /usr/bin /usr/sbin 四合一。可能发行版开发者都认为没必要了。
|
 |
|
2
lululau 2024 年 1 月 15 日 1
crontab 标准写法: /bin/bash -l -c 'your commands'
|
 |
|
3
julyclyde 2024 年 1 月 16 日
man crond PAM Access Control Cron supports access control with PAM if the system has PAM installed. For more information, see pam(8). A PAM configuration file for crond is installed in /etc/pam.d/crond. The daemon loads the PAM environment from the pam_env module. This can be overridden by defining specific settings in the appropriate crontab file.
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。