How To Change Current/Default Runlevel in CentOS 8 / RHEL 8
RedHat systems no longer use actual run levels. They now use targets which are managed by systemd. This has been the case since RHEL7 / CentOS7. This continues to be the case with RHEL8.
Thse are the targets ( runlevels ):
Runlevel | Target Units | Description |
0 | runlevel0.target / poweroff.target | Power off the system |
1 | runlevel1.target / rescue.target | Single User mode |
2 | runlevel2.target / multi-user.target | multi-user mode |
3 | runlevel3.target / multi-user.target | multi-user mode |
4 | runlevel4.target / multi-user.target | multi-user mode |
5 | runlevel5.target / graphical.target | Graphical mode |
6 | runlevel6.target / reboot.target | Reboot the system |
You can show the current default runlevel/target with this command:
systemctl get-default
You can change it like this:
systemctl set-default multi-user.target
Reboot the system:
reboot
Verify that the target has in fact changed:
systemctl get-default
If you just want to change the current runlevel on they fly, without making a config change, just run one of these commands:
systemctl isolate multi-user.target
systemctl isolate graphical.target