Similar to how Microsoft Windows has “safe” and “command prompt only” modes you can boot the operating system into, the Linux operating system has different modes of operation — or “runlevels” — it may run in. Unlike Windows, however, you can change Linux runlevels on the fly.
When you boot a computer running Linux, it will boot into a default runlevel (this is usually level 3 or level 5). There are six different runlevels most Linux distributions use (with System V init - like Red Hat, or Mandrake)
Run levels 1 and 2 are not often used. Most Linux systems run in runlevel 3 or 5. Most desktop Linux systems boot into runlevel 5 by default and the user is greeted by a graphical login prompt. Most server Linux systems boot into runlevel 3 by default and the user is greeted by a text-mode login prompt.
The program responsible for handing changes in runlevel is called 'init'. The 'init' program is the first program started by a Linux system and is responsible for starting and stopping all processes based on run level. You can change the runlevel (sometimes called the “init level” by running the 'init' program with the runlevel as a command line argument (as root, of course):
When you reboot a Linux system by typing reboot or by pressing CONTROL+ALT+DELETE, you are telling the system to go into runlevel 6 (reboot). You can do the same thing by typing telinit 6.
When you shutdown a Linux system with a shutdown -h or poweroff command, you are telling the system to go into runlevel 0. You can do the same thing by typing telinit 0.
You can boot into a specific runlevel by including the run level at the Linux boot prompt:
If you use the GRUB bootloader, you can indicate the desired runlevel by pressing e to edit the boot configuration (if GRUB is configured to allow you to do so) and appending the desired runlevel (e.g. 5 at the end of the boot command:
Then press b to boot with the edited boot command.