pam的xdm是否错了
大家好:
我刚刚换了t61的笔记本,因此下载了thinkfinger。在配置pam后发现一个
现象,当输入密码登录后,系统是中文。刷指纹就变成了英文。经过检测,发现
环境变量中少了几个变量。这几个变量分别在/etc/environment和
/etc/default/locale中设定。经检查权限没有问题。于是我怀疑是pam的问题。
其中,我的修改如下:
10,12c10
< #auth required pam_unix.so nullok_secure
< auth sufficient pam_thinkfinger.so
< auth required pam_unix.so nullok_secure try_first_pass
---
> auth required pam_unix.so nullok_secure
我查看了su和kdm的内容,以下内容都在最后。
@include common-account
@include common-password
@include common-session
而xdm中则在头部。因此我做了以下修改:
3,7d2
< auth requisite pam_nologin.so
< auth required pam_env.so
< auth required pam_env.so envfile=/etc/default/locale
< session required pam_limits.so
<
11a7,11
>
> auth requisite pam_nologin.so auth required
> pam_env.so auth required pam_env.so
> envfile=/etc/default/locale session required
> pam_limits.so
掉换了两者的顺序,目标文件如下(/etc/pam.d/xdm):
# $Id: xdm.pam 189 2005-06-11 00:04:27Z branden $
auth requisite pam_nologin.so
auth required pam_env.so
auth required pam_env.so envfile=/etc/default/locale
session required pam_limits.so
@include common-auth
@include common-account
@include common-session
@include common-password
登录后,系统是中文,变量都有,问题解决。
怀疑是因为common-auth中的sufficient在鉴定指纹后直接返回,导致xdm中
原本预定执行的变量导出没有执行。不知道这个到底是我写错了呢,还是一个
pam的bug。
此致
敬礼
shell909090
2009年01月13日
---------------------------------
附件列表:
Reply to: