LinuxCommandLibrary

gdm

Manages graphical user logins

TLDR

Run the GNOME Display Manager application

$ gdm
copy

Prevent gdm from being run as a daemon background process
$ gdm --nodaemon
copy

Disable gdm management of local console X servers for headless or remote environments
$ gdm --no-console
copy

Prevent sanitizing environment variables that start with $LD_
$ gdm --preserve-ld-vars
copy

Display help
$ gdm --help
copy

Display version
$ gdm --version
copy

SYNOPSIS

gdm [OPTION…]

PARAMETERS

--help
    Print command line options and exit.


--version
    Print version information and exit.


--nodaemon
    Run as foreground process, not daemon.


--replace
    Replace running display manager instance.


--test-mode[=wayland|x11]
    Run in test mode without full daemon startup.


--verbose
    Enable verbose logging output.


--log-verbose
    Increase logging verbosity for debugging.


--run-script=SCRIPT
    Execute custom script instead of GDM.


DESCRIPTION

GDM, the GNOME Display Manager, is the default display manager for the GNOME desktop environment on Linux systems. It provides a graphical login interface, allowing users to select sessions (X11 or Wayland), enter credentials, and launch desktop environments securely.

GDM handles the initial boot into a graphical mode, managing multiple local displays and remote logins via XDMCP. It supports features like automatic login, user switching, accessibility options, and theming. Configuration is primarily through /etc/gdm/ files like custom.conf, with dconf for advanced settings.

Unlike traditional XDM, GDM integrates deeply with GNOME, using systemd-logind for session management and Mutter for Wayland compositing. It's invoked automatically by systemd on boot (via gdm.service), but can be run manually for testing or replacement. GDM ensures secure transitions from console to GUI, isolating user sessions and enforcing policies like screen locking.

For administrators, GDM offers flexibility in customizing logos, backgrounds, and scripts via Init/Default and PostLogin/Default. It's lightweight yet feature-rich, supporting NVIDIA/AMD/Intel drivers seamlessly.

CAVEATS

Requires root privileges for most operations; not intended for interactive user use. Managed via systemctl (e.g., systemctl restart gdm). Direct invocation may disrupt running sessions or require --replace. Wayland mode needs compatible GPU drivers.

CONFIGURATION

Edit /etc/gdm/custom.conf for daemon, security, and user settings. Use gdm-settings GUI tool where available.

LOGS

Check /var/log/gdm/*.log or journalctl -u gdm for troubleshooting.

HISTORY

Developed since 1997 as part of GNOME project to replace xdm. Major rewrites in GNOME 2 (2002) for GTK integration, GNOME 3 (2011) for Mutter/Wayland support. Current version (43+) focuses on Wayland by default, systemd integration since 2010s.

SEE ALSO

lightdm(1), sddm(1), xdm(1), systemctl(1)

Copied to clipboard