Team LiB
Previous Section Next Section

Hack 17. Double Your KDM (KDE) Login Screens

Set up the graphical login manager KDM to run on two different screens when you boot the computer.

If you run the KDE graphical login manager, KDM, you can set up KDM so that one user can log in from one login screen, and if another user wants to jump in and do some work, he can log in from the second login screen. You're not limited to two login screens, but it takes some good horsepower to run more than two sessions at once.

If your Linux distribution runs KDE by default rather than GNOME, it probably uses the KDM graphical login manager to log in. This likely is true even if you're not actually using KDE as your desktop, simply because distributions that favor KDE also favor KDM.

In this case you need to locate the configuration files for KDM to make the changes necessary to enable multiple simultaneous desktop users. The KDM configuration files are located in the same place as your kdmrc file. To locate this file, log in as root and type this command:

# locate kdmrc

/etc/kde3/kdm/kdmrc

In this case, the output tells you that kdmrc, and thus the KDM configuration files, are located in /etc/kde3/kdm. Change to this directory (or whatever directory your Linux distribution uses) and edit the Xservers file.

Your distribution might include support for more than one graphical login manager, in which case it might have more than one Xservers file; one for each alternative such as XDM or GDM. Make sure you are editing the Xservers file in the directory for the KDM graphical boot manager.


You should see something like the following in the Xservers file:

:0 local@tty1 /usr/X11R6/bin/X -nolisten tcp
#:1 local@tty2 reserve /usr/X11R6/bin/X -nolisten tcp :1
#:2 local@tty3 reserve /usr/X11R6/bin/X -nolisten tcp :2
#:3 local@tty4 reserve /usr/X11R6/bin/X -nolisten tcp :3
#:4 local@tty5 reserve /usr/X11R6/bin/X -nolisten tcp :4

Change the second line in the preceding output so that this section looks like the following:

:0 local@tty1 /usr/X11R6/bin/X -nolisten tcp
:1 local@tty2 /usr/X11R6/bin/X -nolisten tcp :1
#:2 local@tty3 reserve /usr/X11R6/bin/X -nolisten tcp :2
#:3 local@tty4 reserve /usr/X11R6/bin/X -nolisten tcp :3
#:4 local@tty5 reserve /usr/X11R6/bin/X -nolisten tcp :4

You should remove the # comment mark at the beginning of the second line, and remove the word reserve. Save your changes and exit the editor. That should be all you have to do.

You can make these changes take effect in several ways, but some Linux distributions are stubborn about restarting the login managers. So, the easiest way to enforce the changes is to simply reboot your computer.

Once your system is finished booting, press Ctrl-Alt-F8 to check whether you have two graphical login screens. If you see the same login screen, everything is working as planned. Press Ctrl-Alt-F7 to get back to the default login screen, and proceed to log in and have fun.

If you want to have three graphical login screens, simply edit the Xservers file again and change the third line the same way you changed the second. You can get to the third graphical login screen by pressing Ctrl-Alt-F9. Theoretically, you can have several more graphical login screens. The default keyboard settings provide key combinations that will work for up to 22 consoles, including both text and graphical logins, but Linux distributions rarely enable more than 11 virtual consoles, some as few as nine.

    Team LiB
    Previous Section Next Section