抱歉,问题太长。
我有一台装有 ubuntu quantal 12.10 的笔记本电脑、一个指纹扫描仪和几个活跃用户帐户。当机器启动到 lightdm 时,我会收到输入密码或扫描指纹的提示。有时,指纹扫描似乎不起作用。在升级到 12.10 之前,当指纹失败时,我总是能够为该用户输入密码。现在,无论如何,我都必须扫描指纹才能以该用户身份登录。如果我尝试以其他用户身份登录(其他用户未启用指纹),我可以看到密码已输入 - 在我输入密码时,密码输入框中会显示星号 - 然后进入。指纹用户则不是这样。有什么线索可以找出问题所在吗?
答案1
您所描述的错误似乎已在 Ubuntu 13.04 附带的 LightDM 中得到解决。
在 Ubuntu 12.10 中,我遇到了同样的问题,但原因不同。我有一个加密的主目录,fingerprint-gui
不存储帐户密码,而是提供一个pam
模块,只检查匹配的指纹以允许用户登录。但是,要解密主目录,必须输入密码,否则加密就没有意义了。因此,只要ecryptfs
不提供使用指纹代替密码的方法,这个系统就无法工作。
结合您所描述的错误,这导致我遇到这样的情况:我必须始终先扫描我的指纹,否则会失败,然后我才能输入密码LightDM
。
作为一种解决方法,我已经LightDM
完全禁用指纹认证,毕竟人们很少需要通过这种登录方式。
其工作原理如下:
复制该文件
/etc/pam.d/common-auth
,将其命名为任意名称。为简单起见,我假设您将其命名为common-auth-pass-only
:sudo cp /etc/pam.d/common-auth /etc/pam.d/common-auth-pass-only
例如使用命令编辑新创建的文件
sudo nano /etc/pam.d/common-auth-pass-only
,您必须删除该行:auth [success=2 default=ignore] pam_fingerprint-gui.so try_first_identified debug
此行的具体内容可能略有不同,但包含以下内容的部分
pam_fingerprint-gui.so
将会存在。lightdm
例如,使用以下命令编辑pam 配置文件。将行中的sudo nano /etc/pam.d/lightdm
文件名替换为common-auth
@include common-auth
使用新创建文件的名称,该行应如下所示:
@include common-auth-pass-only
请记住,这只是一个临时的解决方法,应用这些更改后,该命令pam-auth-update
将不再管理您的配置。LightDM