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
Note: gdm is primarily a system daemon managed by init systems like systemd. Direct user invocation with command-line arguments is not typical for its operation.

DESCRIPTION

gdm stands for GNOME Display Manager. It is the official display manager for the GNOME desktop environment and is responsible for managing graphical login sessions on Linux and Unix-like operating systems. As a critical system service, gdm starts the X server or Wayland compositor, presents the graphical login screen, authenticates users, and launches their desktop sessions. It handles multiple user sessions, user switching, and remote display connections (via XDMCP). gdm ensures a secure and consistent graphical environment from boot-up to user session termination. Unlike many command-line utilities, gdm is typically run as a background daemon by the system's init process (e.g., systemd) rather than being invoked directly by users with command-line arguments. Its behavior is primarily configured via text files, typically located in /etc/gdm3/.

CAVEATS

  • gdm is a critical system service; improper configuration or manual manipulation can lead to inability to log in graphically.
  • It typically runs as root and manages sensitive operations like starting the display server and handling authentication.
  • Configuration is primarily done via text files (e.g., /etc/gdm3/custom.conf), not command-line arguments. Changes often require a service restart or system reboot to take effect.
  • Requires a correctly configured display server (Xorg or Wayland) and graphical drivers to function properly.

CONFIGURATION FILES

The primary configuration for gdm is handled through files, typically found in /etc/gdm3/. The main configuration file is often /etc/gdm3/custom.conf, where administrators can customize settings such as default session, automatic login, theme, and Wayland/Xorg preference. Changes to these files usually require restarting the gdm service to take effect.

SERVICE MANAGEMENT

On modern Linux distributions using systemd, gdm is managed as a service. You can control its state using commands like sudo systemctl start gdm, sudo systemctl stop gdm, sudo systemctl restart gdm, or sudo systemctl enable gdm to ensure it starts on boot.

HISTORY

gdm was developed by the GNOME project as its default display manager, replacing the traditional xdm (X Display Manager) for a more user-friendly and feature-rich login experience. Its initial release coincided with early versions of the GNOME desktop environment. Over time, gdm has evolved to support new display technologies like Wayland, improve security, and integrate more deeply with systemd for service management. While its core function remains consistent, internal implementations have adapted to modern Linux desktop requirements, including better support for hardware acceleration and multi-seat configurations.

SEE ALSO

systemctl(1), login(1), Xorg(1), Wayland(7), gnome-session(1), lightdm(1), sddm(1)

Copied to clipboard