Runlevels and X
In most cases, the Community Enterprise Linux installer configures a machine to boot into a graphical login environment, known as Runlevel 5. It is possible, however, to boot into a text-only multi-user mode called Runlevel 3 and begin an X session from there.
For more information about runlevels, refer to "Runlevels".
The following subsections review how X starts up in both runlevel 3 and runlevel 5.
When in runlevel 3, the best way to start an X session is to log in and type When the The default After setting these options, the Next, the When in runlevel 3, the user is returned to a text mode user session after ending an X session. When the system boots into runlevel 5, a special X client application called a display manager is launched. A user must authenticate using the display manager before any desktop environment or window managers are launched.
Depending on the desktop environments installed on the system, three different display managers are available to handle user authentication.
When booting into runlevel 5, the where Each of the display managers reference the Users can specify which desktop environment they want to utilize when they authenticate using the When the user finishes an X session on the default display ( The user is returned to the display manager after logging out of X from runlevel 5.
For more information on how display managers control user authentication, refer to the Runlevel 3
startx
. The startx
command is a front-end to the xinit
command, which launches the X server (Xorg
) and connects X client applications to it. Because the user is already logged into the system at runlevel 3, startx
does not launch a display manager or authenticate users. Refer to "Runlevel 5" for more information about display managers.
startx
command is executed, it searches for the .xinitrc
file in the user's home directory to define the desktop environment and possibly other X client applications to run. If no .xinitrc
file is present, it uses the system default /etc/X11/xinit/xinitrc
file instead.
xinitrc
script then searches for user-defined files and default system files, including .Xresources
, .Xmodmap
, and .Xkbmap
in the user's home directory, and Xresources
, Xmodmap
, and Xkbmap
in the /etc/X11/
directory. The Xmodmap
and Xkbmap
files, if they exist, are used by the xmodmap
utility to configure the keyboard. The Xresources
file is read to assign specific preference values to applications.
xinitrc
script executes all scripts located in the /etc/X11/xinit/xinitrc.d/
directory. One important script in this directory is xinput.sh
, which configures settings such as the default language.
xinitrc
script attempts to execute .Xclients
in the user's home directory and turns to /etc/X11/xinit/Xclients
if it cannot be found. The purpose of the Xclients
file is to start the desktop environment or, possibly, just a basic window manager. The .Xclients
script in the user's home directory starts the user-specified desktop environment in the .Xclients-default
file. If .Xclients
does not exist in the user's home directory, the standard /etc/X11/xinit/Xclients
script attempts to start another desktop environment, trying GNOME first and then KDE followed by twm
.
Runlevel 5
GNOME
- The default display manager for Community Enterprise Linux, GNOME
allows the user to configure language settings, shutdown, restart or log in to the system.
KDE
- KDE's display manager which allows the user to shutdown, restart or log in to the system.
xdm
- A very basic display manager which only lets the user log in to the system.prefdm
script determines the preferred display manager by referencing the /etc/sysconfig/desktop
file. A list of options for this file is available in this file:
/usr/share/doc/initscripts-
<version-number>
/sysconfig.txt<version-number>
is the version number of the initscripts
package.
/etc/X11/xdm/Xsetup_0
file to set up the login screen. Once the user logs into the system, the /etc/X11/xdm/GiveConsole
script runs to assign ownership of the console to the user. Then, the /etc/X11/xdm/Xsession
script runs to accomplish many of the tasks normally performed by the xinitrc
script when starting X from runlevel 3, including setting system and user resources, as well as running the scripts in the /etc/X11/xinit/xinitrc.d/
directory.
GNOME
or KDE
display managers by selecting it from the Sessions menu item (accessed by selecting System (on the panel) > Preferences > More Preferences > Sessions). If the desktop environment is not specified in the display manager, the /etc/X11/xdm/Xsession
script checks the .xsession
and .Xclients
files in the user's home directory to decide which desktop environment to load. As a last resort, the /etc/X11/xinit/Xclients
file is used to select a desktop environment or window manager to use in the same way as runlevel 3.
:0
) and logs out, the /etc/X11/xdm/TakeConsole
script runs and reassigns ownership of the console to the root user. The original display manager, which continues running after the user logged in, takes control by spawning a new display manager. This restarts the X server, displays a new login window, and starts the entire process over again.
/usr/share/doc/gdm-
(where <version-number>
/README<version-number>
is the version number for the gdm
package installed) and the xdm
man page.