最后几行来自/var/log/auth.log
:
Jan 9 22:59:57 miranda-OptiPlex-790 lightdm: PAM adding faulty module: pam_kwallet5.so
Jan 9 22:59:57 miranda-OptiPlex-790 lightdm: pam_succeed_if(lightdm:auth): requirement "user ingroup nopasswdlogin" not met by user "miranda"
Jan 9 23:00:23 miranda-OptiPlex-790 dbus[807]: [system] Failed to activate service 'org.bluez': timed out
我试图向系统环境添加一个新变量。我在 中添加了一行/etc/enviroment
。现在我已 ssh 到机器并删除了该行。现在看起来像这样:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
但我仍然无法登录。
访客会话运行顺利。
我的问题与此类似: https://serverfault.com/questions/380917/cant-log-in-locally-but-ssh-works
他最终重新安装了操作系统,我希望还有办法挽救我......
还有另一篇帖子涉及类似问题: https://www.linuxquestions.org/questions/linux-general-1/can%27t-login-over-console-but-can-ssh-in-740310/
但解决方案的链接不再起作用。
尝试过这里的建议: 无法登录锁定的 Ubuntu 14.04 会话 Unity
重新安装了一堆东西之后:
apt-get install --reinstall kwalletmanager
apt-get install libpam-kwallet4 libpam-kwallet5
service lightdm restart
新auth.log
节目:
Jan 10 00:05:10 miranda-OptiPlex-790 lightdm: pam_unix(lightdm:session): session opened for user miranda by (uid=0)
Jan 10 00:05:10 miranda-OptiPlex-790 systemd-logind[796]: New session c32 of user miranda.
Jan 10 00:05:10 miranda-OptiPlex-790 lightdm: pam_kwallet(lightdm:session): pam_kwallet: pam_sm_open_session
Jan 10 00:05:10 miranda-OptiPlex-790 lightdm: pam_kwallet(lightdm:session): pam_kwallet: final socket path: /tmp/kwallet_miranda.socket
Jan 10 00:05:10 miranda-OptiPlex-790 lightdm: pam_kwallet(lightdm:session): pam_kwallet: Impossible to write walletKey to walletPipe
Jan 10 00:05:10 miranda-OptiPlex-790 lightdm: pam_kwallet5(lightdm:session): pam_kwallet5: pam_sm_open_session
Jan 10 00:05:10 miranda-OptiPlex-790 lightdm: pam_kwallet5(lightdm:session): pam_kwallet5: final socket path: /tmp/kwallet5_miranda.socket
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_kwallet(lightdm-greeter:setcred): (null): pam_sm_setcred
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_kwallet5(lightdm-greeter:setcred): (null): pam_sm_setcred
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_unix(lightdm-greeter:session): session opened for user lightdm by (uid=0)
Jan 10 00:05:11 miranda-OptiPlex-790 systemd-logind[796]: New session c33 of user lightdm.
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_kwallet(lightdm-greeter:session): (null): pam_sm_open_session
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_kwallet(lightdm-greeter:session): pam_kwallet: open_session called without kwallet_key
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_kwallet5(lightdm-greeter:session): (null): pam_sm_open_session
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_kwallet5(lightdm-greeter:session): pam_kwallet5: open_session called without kwallet5_key
Jan 10 00:05:11 miranda-OptiPlex-790 lightdm: pam_succeed_if(lightdm:auth): requirement "user ingroup nopasswdlogin" not met by user "miranda"
Jan 10 00:05:22 miranda-OptiPlex-790 dbus[807]: [system] Failed to activate service 'org.bluez': timed out
我不知道如何更改lightdm
配置
root@miranda-OptiPlex-790:/etc/lightdm/lightdm.conf.d# ls
root@miranda-OptiPlex-790:/etc/lightdm/lightdm.conf.d# cd ..
root@miranda-OptiPlex-790:/etc/lightdm# ls
lightdm.conf.d users.conf
root@miranda-OptiPlex-790:/etc/lightdm# cat users.conf
#
# User accounts configuration
#
# NOTE: If you have AccountsService installed on your system, then LightDM will
# use this instead and these settings will be ignored
#
# minimum-uid = Minimum UID required to be shown in greeter
# hidden-users = Users that are not shown to the user
# hidden-shells = Shells that indicate a user cannot login
#
[UserList]
minimum-uid=500
hidden-users=nobody nobody4 noaccess
hidden-shells=/bin/false /usr/sbin/nologin
我应该尝试这个解决方案吗? https://unix.stackexchange.com/questions/337697/pbis-auth-log-requirement-user-ingroup-nopasswdlogin-not-met-by-user-administ
编辑/etc/pam.d/lightdm
并删除nopasswdlogin
此行:
auth sufficient pam_succeed_if.so user ingroup nopasswdlogin
答案1
最终,这里的方法挽救了局面: https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/964607
我通过 Google 搜索了一下,找到了如何做到这一点: https://askubuntu.com/questions/300682/what-is-the-xauthority-file
具体步骤:
Ctrl
++Alt
当F1
我在登录屏幕时。
chown miranda:miranda .Xauthority
Ctrl
+ Alt
+F7
一些解释:
更改miranda
为您的用户名。
Ctrl+Alt+F1 到 F6 是 getty/agetty 程序提供的虚拟控制台。Ctrl+Alt+F7 是运行 X 服务器的控制台。 https://askubuntu.com/questions/157617/reverting-from-ctrl-alt-f1
用来ls -la .Xauthority
确认是否是该问题。