7.5. Runlevels and X
In most cases, the default installation of Red Hat Enterprise Linux configures a machine to boot into a graphical login environment, known as runlevel 5. It is possible, however, to boot into the text-only multi-user mode called runlevel 3 and begin an X session from there.
For more information about runlevels, refer to Section 1.4, “SysV Init Runlevels”.
The following subsections review how X starts up in both runlevel 3 and runlevel 5.
7.5.1. Runlevel 3
When in runlevel 3, the best way to start an X session is to log in and type
startxcommand is a front-end to the
xinitcommand, 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,
startxdoes not launch a display manager or authenticate users. Refer to Section 7.5.2, “Runlevel 5” for more information about display managers.
startxcommand is executed, it searches for an
.xinitrcfile in the user's home directory to define the desktop environment and possibly other X client applications to run. If no
.xinitrcfile is present, it uses the system default
xinitrcscript then looks for user-defined files and default system files, including
.Xkbmapin the user's home directory, and
Xkbmapfiles, if they exist, are used by the
xmodmaputility to configure the keyboard. The
Xresourcesfile is read to assign specific preference values to applications.
After setting these options, the
xinitrcscript executes all scripts located in the
/etc/X11/xinit/xinitrc.d/directory. One important script in this directory is
xinput, which configures settings such as the default language.
xinitrcscript tries to execute
.Xclientsin the user's home directory and turns to
/etc/X11/xinit/Xclientsif it cannot be found. The purpose of the
Xclientsfile is to start the desktop environment or, possibly, just a basic window manager. The
.Xclientsscript in the user's home directory starts the user-specified desktop environment in the
.Xclientsdoes not exist in the user's home directory, the standard
/etc/X11/xinit/Xclientsscript attempts to start another desktop environment, trying GNOME first and then KDE followed by
The user is returned to a text mode user session after logging out of X from runlevel 3.