4. Number X servers started by Display managers

Here is a modified version of the previous approach. Add this to your init scripts (I bet it's missing!):

---------------------------------------------------------------------------------------
#
#the same like XF86Config but for gdm.conf & Xservers
#
for i in xdm/Xservers gdm/gdm.conf; do
    if [ -L "/etc/X11/$i" ]; then
        DumbCon=`sed -n 's/.*dumbcon=\([0-9]*\).*/\1/p' /proc/cmdline`
        [ -n "$DumbCon" ] || DumbCon=0
        [ -r "/etc/X11/$i.$DumbCon" ] && ln -sf "/etc/X11/$i.$DumbCon" "/etc/X11/$i"
    fi
done
echo "Setting up display managers for `expr $DumbCon + 1` Xservers"
---------------------------------------------------------------------------------------
      

This will adjust the proper /etc/X11/xdm/Xservers and /etc/X11/gdm/gdm.config according to the boot line argument dumbcon=n (remember n+1= number of X users/sessions).

You have to create the configuration files following these assumptions:

i only stands for /etc/X11/xdm/Xserver and /etc/X11/gdm/gdm.conf.

...and so on.

Therefore:

If you boot without dumbcon=n or with dumbcon=0 (for example a standard kernel), your display manager will start a single X server with the corresponding XF86Config file.

If you start with dumbcon=1 the display manager will automatically start 2 X servers.

If you start with dumbcon=2, when booting is finished you'll get 3 login prompts on your 3 displays.

Keep in mind that each X server should have it's own configuration file, and it should be specified in the display manager configuration file properly. Take a look at the configuration files before restarting with an activated display manager and this addition to your init scripts.

This can also be used if you have a single XFree configuration file (see Section 6, “For graphic cards without DRI”, For graphic cards without DRI). In this case you will have to specify the correct layout instead of the correct XFree configuration file.