GDM Commands

8.1. GDM User Commands

The GDM package provides the following different commands in bindir intended to be used by the end-user:

8.1.2. gdmflexichooser Command Line Options

The gdmflexiserver command provides three features. It can be used to run flexible (on demand) X displays, to run a flexible display via nested X server, and to send commands to the GDM daemon process.

Starting a flexible X display will normally lock the current session with a screensaver and will redisplay the GDM login screen so a second user can log in. This feature is only available on systems that support virtual terminals and have them enabled. This feature is useful if you are logged in as user A, and user B wants to log in quickly but user A does not wish to log out. The X server takes care of the virtual terminal switching so it works transparently. If there is more than one running display defined with flexible=true, then the user is shown a dialog that displays the currently running sessions. The user can then pick which session to continue and will normally have to enter the password to unlock the screen.

Nested displays works on systems that do not support virtual terminals. This option starts a flexible display in a window in the current session. This does not lock the current session, so is not as secure as a flexible server started via virtual terminals.

The gdmflexiserver --command option provides a way to send commands to the GDM daemon and can be used to debug problems or to change the GDM configuration.

In addition to the following options, gdmflexiserver also supports standard GNOME options.

gdmflexichooser Command Line Options
-c, --command=COMMAND

Send the specified protocol command to GDM

-n, --xnest

Start a flexible X display in Nested mode

-l, --no-lock

Do not lock current screen

-d, --debug

Turns on debugging output which gets sent to syslog. Same as turning on debug in the configuration file.

-a, --authenticate

Authenticate before running --command

-s, --startnew

Starts a new flexible display without displaying a dialog asking the user if they wish to continue any existing sessions.

8.1.3. gdmdynamic Command Line Options

gdmdynamic allows the management of displays in a dynamic fashion. It is typically used in environments where it is not possible to list the possible displays in the GDM configuration files. The gdmdynamic command can be used to create a new display on a particular display number, run all newly created displays, or remove a display. The gdmdynamic command can also be used to list all attached displays or only those attached displays that match a pattern. The -a option is used to add a display, the -r option is used to run (or release) a display, the -d option is used to delete a display, and the -l option lists existing displays. Only one of these four options can be specified at a time, so in the life cycle of a particular display, the command will be run once to add, again to release (run) the display, and finally to delete when the session is to be terminated.

This program is designed to manage multiple simultaneous requests and tries to avoid flooding the daemon with requests. If the sockets connection is busy, it will sleep and retry a certain number of times that can be tuned with the -s and -t options.

gdmdynamic Command Line Options
-a display=server

Add a new display configuration, leaving it in the DISPLAY_CONFIG state. For example, "-a 2=StandardServerTwo" "-a 3=/usr/X11R6/bin/X -dev /dev/fb2"

The display will not actually be started until the display is released by calling gdmdynamic again with the -r option.

-r

Release (run) all displays waiting in the DISPLAY_CONFIG state.

-d display

Delete a display, killing the X server and purging the display configuration. For example, "-d 3".

-l [pattern]

List displays via the ATTACHED_SERVERS gdmflexiserver command. Without a pattern lists all attached displays. With a pattern will match using glob characters '*', '?', and '[]'. For example: "-l Standard*" "-l *Xorg*"

-v

Verbose mode. Prints diagnostic messages. to GDM.

-b

Background mode. Fork child to do the work and return immediately.

-t RETRY

If the daemon socket is busy, gdmdynamic will retry to open the connection the specified RETRY number of times. Default value is 15.

-s SLEEP

If the daemon socket is busy, gdmdynamic will sleep an amount of time between retries. A random number of seconds 0-5 is added to the SLEEP value to help ensure that multiple calls to gdmdynamic do not all try to restart at the same time. A SLEEP value of zero causes the sleep time to be 1 second. Default value is 8 seconds.

8.2. GDM Root User Commands

The GDM package provides the following different commands in sbindir intended to be used by the root user:

8.2.1. gdm and gdm-binary Command Line Options

The gdm command is really just a script which runs the gdm-binary, passing along any options. Before launching gdm-binary, the gdm wrapper script will source the <etc>/profile file to set the standard system environment variables. In order to better support internationalization, it will also set the LC_MESSAGES environment variable to LANG if neither LC_MESSAGES or LC_ALL are set. If you really need to set some additional environment before launching GDM, you can do so in this script.

gdm and gdm-binary Command Line Options
--help

Gives a brief overview of the command line options.

--nodaemon

If this option is specified, then GDM does not fork into the background when run. You can also use a single-dash version, "-nodaemon" for compatibility with other display managers.

--no-console

Tell the daemon that it should not run anything on the console. This means that none of the attached servers from the [servers] section will be started, and the console will not be used for communicating errors to the user. An empty [servers] section automatically implies this option.

--config=CONFIGFILE

Specify an alternative configuration file.

--preserve-ld-vars

When clearing the environment internally, preserve all variables starting with LD_. This is mostly for debugging purposes.

--version

Print the version of the GDM daemon.

--wait-for-go

If started with this option, gdm will init, but only start the first attached display and then wait for a GO message in the fifo protocol. No greeter will be shown until the GO message is sent. Also flexiserver requests will be denied and XDMCP will not be started until GO is given. This is useful for initialization scripts which wish to start X early, but where you don't yet want the user to start logging in. So the script would send the GO to the fifo once it is ready and GDM will then continue. This functionality was added in version 2.5.90.0.