Previous Section  < Day Day Up >  Next Section

Recipe 7.6. Creating Both Text and Graphical Login Runlevels on Debian

7.6.1 Problem

Your Debian system boots to a graphical login manager. You want to change this so that your Debian system's runlevel 3 is a text console, and runlevel 5 boots to a graphical login.

7.6.2 Solution

First you need to know which display manager the system is using. Then you can add it to or remove it from the appropriate levels. To see which one is running, use:

$ ps ax | grep dm

  537 ?        S      0:00 /usr/bin/kdm

  544 ?        S<     0:10 /usr/X11R6/bin/X :0 -dpi 100 -nolisten tcp vt7 -auth /var/lib/kdm/A:0-PbCLdj

kdm, the K display manager, is running. First remove it from all runlevels:

# update-rc.d -f kdm remove

update-rc.d: /etc/init.d/kdm exists during rc.d purge (continuing)

 Removing any system startup links for /etc/init.d/kdm ...

   /etc/rc0.d/K01kdm

   /etc/rc1.d/K01kdm

   /etc/rc2.d/S99kdm

   /etc/rc3.d/S99kdm

   /etc/rc4.d/S99kdm

   /etc/rc5.d/S99kdm

   /etc/rc6.d/K01kdm

Now have kdm start on runlevel 5, and stop on all the others:

# update-rc.d kdm  start 99 5 . stop 01 0 1 2 3 4 6 .

 Adding system startup for /etc/init.d/kdm ...

   /etc/rc0.d/K01kdm -> ../init.d/kdm

   /etc/rc1.d/K01kdm -> ../init.d/kdm

   /etc/rc2.d/K01kdm -> ../init.d/kdm

   /etc/rc3.d/K01kdm -> ../init.d/kdm

   /etc/rc4.d/K01kdm -> ../init.d/kdm

   /etc/rc6.d/K01kdm -> ../init.d/kdm

   /etc/rc5.d/S99kdm -> ../init.d/kdm

Note that it's important to have an entry on every runlevel, explicitly starting or stopping each service. The priority number must always be two digits. 99 is the lowest priority. Last to live, first to die, that's the fate of kdm.

Finally, edit /etc/inittab so that your chosen runlevel becomes the default:

# The default runlevel.

id:3:initdefault:

When you reboot, your new runlevel scheme will take effect. You can also comment out the line, and then you'll be asked during boot up to select a runlevel.

7.6.3 Discussion

gdm is the Gnome display manager, xdm is the X display manager, and kdm belongs to KDE. It's not uncommon to find all three installed. xdm is pretty barebones; it does nothing but provide a graphical login screen. Both kdm and gdm have several login and shutdown options, including a menu for selecting your window manager.

7.6.4 See Also

    Previous Section  < Day Day Up >  Next Section