📅  最后修改于: 2023-12-03 15:17:22.486000             🧑  作者: Mango
在 Linux 中,运行级别(Runlevel)指的是操作系统的运行状态,也可以理解为操作系统所处的模式或状态。每个运行级别都对应着一组预定义的系统服务和服务的进程。操作系统启动时会进入默认的运行级别,但用户也可以根据需要切换到指定的运行级别来满足特定的需求。
Linux 中一般有以下几种运行级别:
我们可以使用 runlevel
命令查看当前的运行级别。
$ runlevel
N 5
其中 N
表示之前的运行级别,5
表示当前的运行级别。
我们可以使用 init
命令来切换运行级别,例如切换到运行级别 3:
$ sudo init 3
切换后,系统会重新加载相应的服务和进程使得操作系统进入该运行级别下的状态。
除了上述预定义的运行级别,我们还可以自定义运行级别。自定义运行级别需要以下几步:
复制一个已有的运行级别,例如复制 runlevel 5
:
sudo cp /etc/inittab /etc/inittab.bak
sudo cp /etc/rc.d/rc5.d /etc/rc.d/rc6.d -r
修改 /etc/inittab
文件,增加一个新的 id 行和一个新的运行级别行:
# 新的 id 行,例如 "id:7:initdefault:"
id:7:initdefault:
# 新的运行级别行,例如 "7:myrunlevel:/etc/init.d/myrunlevel.sh"
7:myrunlevel:/etc/init.d/myrunlevel.sh
7
表示新的运行级别,myrunlevel
是自定义的服务名,/etc/init.d/myrunlevel.sh
是要执行的命令脚本。
编写命令脚本 /etc/init.d/myrunlevel.sh
。
#!/bin/bash
# 启动服务或执行其他命令,例如:
/etc/init.d/apache2 start
让命令脚本具有可执行权限:
sudo chmod +x /etc/init.d/myrunlevel.sh
重启系统或切换到新的运行级别:
sudo init 7
切换到自定义的运行级别后,操作系统会执行 /etc/init.d/myrunlevel.sh
中的命令。
运行级别是 Linux 操作系统启动后进入不同状态的一种方式。通过切换运行级别,我们可以方便地控制和管理操作系统运行时的服务和进程,以满足特定的需求。同时,我们还可以自定义运行级别,以适应特定的应用场景。