我想在运行sudo时向$ PATH添加一些目录,这是一个(半)永久性要求,而不是需要添加到脚本本身的东西.我注意到Django已经设法做到了,(运行sudo时我的$ PATH是"/ usr/local/sbin:/ usr/local/bin:/ usr/sbin:/ usr/bin:/ sbin:/ bin:/ usr/X11R6/bin:/ django/django-trunk/django/bin") - 那是怎么做到的?
h4u*_*t3r 17
这是sudoers文件中重置的行:
Defaults env_reset
您可以通过添加或添加此行PATH来解决此问题env_keeps:
Defaults env_keep = "PATH"
编辑:meder,你不要禁用env_reset,你只需绕过路径重置
或者你可以删除违规env_reset行.
但更好的是,你可以声明一个在运行sudo时secure_path会替换的东西PATH:
Defaults secure_path="/bin:/usr/bin"
这样,您可以控制要包含在路径中的特定目录.
我认为如果将其保存在/root/.bashrc中,这应该可以解决:
export PATH=/www/foo:$PATH
Run Code Online (Sandbox Code Playgroud)
我忘记了它是PATH还是PYTHONPATH,如果真的很重要,这是基于我的用户的.bashrc:
export PYTHONPATH=/www/django:$PYTHONPATH
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17976 次 |
| 最近记录: |