Identify the current SysV runlevel and switch targets during runtime. Then locate the configuration responsible for the default runlevel to make the change persist across boots.
You’re working on an older Debian system using SysV init. The system boots into a graphical environment, but your team needs it to boot into multi-user mode without GUI (runlevel 3).
This is the kind of change you make for headless servers, recovery situations, or systems where the GUI adds boot time and operational risk.
runlevel
and
who -r
.
/etc/rc3.d/
.
init
/
telinit
.
/etc/inittab
.
runlevel
N 5
who -r
run-level 5 2025-07-18 13:14
ls /etc/rc3.d/
S01rsyslog S02networking S03cron K01gdm3
init 3
telinit 3
Switching to runlevel 3...
[ OK ] Stopping graphical interface manager
[ OK ] Starting multi-user services
/etc/inittab
# The default runlevel.
id:3:initdefault:
init 5
telinit 5
Switching to runlevel 5...
[ OK ] Starting graphical interface manager
runlevel
: Shows previous and current SysV runlevel.
who -r
: Displays runlevel and time of last runlevel change.
/etc/rc3.d/
: SysV runlevel directory containing service symlinks for
runlevel 3.
init <N>
/
telinit <N>
: Switches runlevels immediately.
/etc/inittab
: Defines the default runlevel in SysV init systems.