Jade Dungeon

linux gdm

Ubuntu 循环登陆

这个问题是我在 Ubuntu19.10 版本遇到的,20.04 版本中我没做验证,不确定是否有同样的问题。

在解决问题之前,先补充一个关键知识点:显示管理器(Display Manager),它用来提供图形化登陆, 向用户显示图形化登陆界面,并处理用户身份验证。Linux 中常见的显示管理器包括 gdm3、kdm、LightDM等:

  • gdm3: gdm3 是 gdm 的继承者,它是 GNOME 的显示管理器;
  • kdm: kdm 是 KDE 的显示管理器;
  • LightDM: LightDM 是一个轻量级的显示管理器,他是显示管理器的规范解决方案。

实操验证,初步断定是因为设置中开启了自动登陆,触发了 dgm3 的某种 bug 导致的。 (Ubuntu19.10 默认使用的是 GNOME 桌面系统, 而 gdm3 是 GNOME 的显示管理器)

解决方案:使用 LightDM 替换 gdm3

第一步:安装 LightDM(由于你现在无法进入图形化桌面,因此需要你在登陆页面使用 ctl + alt + F2快捷键进入命令行模式,输入账号密码登陆,然后使用下面的命令安装)

sudo apt-get install lightdm

安装完成后,系统会自动弹框要求你选择当前系统中已安装的显示管理器,选择 lightdm。

第二步:重启sudo reboot重启完就能正常登陆了。

这时候你会发现登陆界面变了,如果你想切回之前的登陆界面,在进入系统后把自动登陆关闭, 然后实现下面的命令重新选择 gdm3 显示管理器即可(需重启生效)

sudo dpkg-reconfigure gdm3

并不是把自动登陆关闭后 gdm3 的 bug 就一定能规避掉,这一点可能只适用于我安装的 Ubuntu19.10;我这里说的原因也不一定适用所有人。但有一点可以肯定的是, 如果出现循环登陆的情况,更换显示管理器通常是能解决问题的。 如果你想查看当前系统正在运行的显示管理器,可以使用下面的命令:

cat /etc/X11/default-display-manager

ubuntu登录界面

方法一

直接修改背景图:

sudo cp /usr/share/gnome-shell/theme/ubuntu.css /usr/share/gnome-shell/theme/ubuntu.css.bak
sudo vim /usr/share/gnome-shell/theme/ubuntu.css

把:

#lockDialogGroup {
   background: #2c001e url(resource:///org/gnome/shell/theme/noise-texture.png);
   background-repeat: repeat; }

修改为:

#lockDialogGroup {
   background: #2c001e url(file:///usr/share/backgrounds/image.png);
   background-repeat: no-repeat; 
   background-size: cover;
   background-position: center;
}

方法二

修改登录界面背景图片的方法之一:

可以使用dconf-editor和lightdm用户身份来完成这样的效果。 简单来说就是,切换到root用户,给予lightdm用户访问x-server的权限。 然后使用lightdm用户身份,运行dconf-editor,然后做出修改。

sudo apt-get install dconf-editor 

sudo –i                     # 切换到root
xhost +SI:localuser:lightdm # 给予lightdm用户访问X-server的权限。
su lightdm -s /bin/bash     # 命令切换到lightdm用户
dconf-editor                # 运行dconf-editor

打开「com->canonical->unity-greeter」中设置「background」图片, 「draw-grid」指定是否显示网格。