su成为root用户后,为什么会忽略pam_env.conf?

皮氏菌

我正在尝试做:

su -l

并设置环境变量(如PAGER)失败。我怎样才能做到这一点?

这就是我所拥有的/etc/pam.d/login

auth       required     pam_securetty.so
auth       requisite    pam_nologin.so
auth       include      system-local-login
account    include      system-local-login
session    include      system-local-login
session    required     pam_env.so readenv=1 user_readenv=1 envfile=/etc/locale.conf
stefan0xC

这就是我所拥有的/etc/pam.d/login

除非您修改了/etc/pam.d/su-l使其包含此文件,否则该文件是不相关的,因为它su -l仅是通过切换主目录并重置一些环境变量来模拟 login的。

默认的/etc/pam.d/su-lsu -l 在Arch Linux上使用)应如下所示:

#%PAM-1.0
auth        sufficient  pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth       sufficient  pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth       required    pam_wheel.so use_uid
auth        required    pam_unix.so
account     required    pam_unix.so
session     required    pam_unix.so

如果session required pam_env.so在此文件的末尾添加,则可以(默认情况下)在文件/ etc / environment中添加KEY = VAL对以设置环境变量

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章