In Linux, a run level is an operating mode in which a specific set of processes are allowed to run. There are several predefined run levels in most Linux systems, each of which corresponds to a specific set of processes and services that are allowed to run.
The most common run levels are:
- 0: Halt. The system is shut down and powered off.
- 1: Single-user mode. Only a minimal set of processes and services are allowed to run. This run level is typically used for maintenance and recovery tasks.
- 2: Multi-user mode without networking. A larger set of processes and services are allowed to run, but networking is disabled.
- 3: Full multi-user mode with networking. All processes and services are allowed to run, and networking is enabled. This is the normal run level for a Linux system.
- 4: Unused.
- 5: Full multi-user mode with GUI. All processes and services are allowed to run, networking is enabled, and the graphical user interface (GUI) is started.
- 6: Reboot. The system is shut down and restarted.
The default run level for a Linux system is usually set to 3 or 5 in the
/etc/inittab file. The system will automatically start the processes and services associated with the default run level when it boots up.
You can switch between run levels using the
init command or the
telinit command. For example, to switch to run level 1, you can use the following command:
<code>sudo init 1 </code>
To switch back to the default run level, you can use the following command:
<code>sudo init 3 </code>
It is important to note that switching between run levels can have significant effects on the system, as it will stop and start various processes and services. You should be careful when switching between run levels, particularly if you are not sure what processes and services are associated with a particular run level.
To learn more about run levels and how to manage them in Linux, you can consult the documentation for your specific distribution or refer to online resources and tutorials. There are also many books and online courses available that cover these topics in more detail.
Kipkorir is the founder of advancelearnlinux.com with over 6 years in information technology(Microservices, Analytics, Power BI, and Database Development). He's also passionate about Data analytics and Data Science.