显示管理器(DM – Display Manager)是一个为 Linux 发行版提供图形登录功能的程序。它控制用户会话并管理用户认证。显示管理器会在你输入用户名和密码后,立即启动显示服务器并加载桌面环境。
显示管理器通常是登录界面的代名词。毕竟它是可见的部分。然而,可见的登录屏幕,也叫欢迎页 (greeter),只是显示管理器的一部分。
不同的显示管理器
Linux 中有各种桌面环境,显示管理器并不是桌面环境的一部分,它是一个独立的程序。桌面环境可能会推荐某个显示管理器,但这并不意味着它不能与其它一些显示管理器一起工作。
显示管理器 (display manager) 建基于 X 窗口系统,调用 X 窗口系统用作以 GUI 登录以及登录后显示 GUI 画面,以及以 GUI 切换用户。GNU/Linux 下的 tty7 默认开启显示管理器,tty1~6 则为文字列接口。在 X 窗口系统中,作为程序运行的 X 显示管理器允许你在本地 X 服务器或远程 X 服务器上开始一个会话。显示管理器呈现给用户一个登录界面并提示输入用户和密码。当用户成功输入正确的用户和密码,显示管理器会开始一个会话。当显示管理器在用户电脑上运行时,它会在显示登录界面前开启 X 服务器,并能在用户退出后任意的重复运行。在这种情况下,显示管理器在 X 窗口系统中实现 init,getty 和在字符类型终端下登录的功能。当显示管理器运行在远程计算机时,它扮演类似 telnet 服务器的角色,需要用户名和密码才开始一个远程会话。
如果你曾经在同一个系统中安装过不止一个桌面环境,你会记得,登录界面(即显示管理器)允许你切换桌面环境。
虽然显示管理器不是桌面环境本身的一部分,但它往往与桌面环境由同一个开发团队开发。它也成为桌面环境的代表。
显示管理器列表
控制台
- CDM:控制台显示管理器
- ConsoleTDM:扩展自 xinit,由纯粹的 Bash 脚本编写的
- nodm — 支持自动登录的简单显示管理器。
- Ly — 实验阶段的 ncurses 显示管理器。
桌面环境
- GDM: GNOME 显示管理器。https://projects.gnome.org/gdm/gdm
- LightDM:跨桌面的显示管理器,可以使用各种前端写的任何工具。
- LXDM: LXDE 显示管理器 (独立于桌面环境) (lxdm)
- MDM — 使用在 Linux Mint 中的显示管理器, GDM2 的分支项目。
- SDDM:基于 QML 的显示管理器,替代 KDE4 的 KDM,推荐搭配 Plamsa5 或 LXQt 使用。https://github.com/sddm/sddm
- XDM — X 显示管理器支持 XDMCP(适合服务器的宿主机).
显示管理器配置
通过启动登录管理器(或称显示管理器),即可进行图形界面登录。目前,Arch 提供了 GDM、SLiM、XDM、LXDM、LightDM 和 sddm 的 systemd 服务文件。以 SDDM 为例,配置开机启动:
# systemctl enable sddm.service
执行上述命令后,登录管理器应当能正常工作了。如果不是的话,可能是 default.target 没有指向 graphical.target。
启用 SDDM 后, /etc/systemd/system/ 应该创建 display-manager.service 软链接,可以用 –force 覆盖已有链接。
参考链接: