根据维基百科的说法 ,“S”应该是一个标准的运行级别:“单用户模式”。 但是如果我没有弄错的话,Debian上的单用户模式是运行级别1.我发现的一个Debian文章声称,“S”是一个运行级别,系统用它来运行另一个运行级别。 有趣…
实际上,到目前为止,我几乎总是忽略了这个运行级别,但是今天我用Firestarter(是的,实际上是一个最终用户防火墙)来玩,因为我很好奇,它会产生哪些防火墙规则。 但后来我注意到,它在/etc/rcS.d中创build了一个启动钩子,我想知道,如果我的防火墙脚本也应该有这个呢?
现在我更感兴趣的是知道它在Debian / Ubuntu上究竟是什么,因为Shorewall包(这是一个强大的“Debianized”包)也在rcS.d中创build了它的(只有!)启动钩。
我以这种方式看待运行级别:
S - true single user mode usually drops you into a minimal root shell 1 - Administrative mode, you get a standard login request before access 2 - Multi-user without TCP/IP networking -- could use serial ports for other logins 3 - Multi-user with TCP/IP networking and text 4 - To be determined by the system owner 5 - Multi-User with TCP/IP networking and graphic console 6 - reboot 0 - shutdown and power down
因此,如果TCP / IP启动并运行,并且通常只在Init状态3中发生,则确实需要防火墙。
运行级别1也被称为运行级别s。
在基于Debian的系统中,这是单用户 / 最小模式 。 见Debian Runlevel :
运行级别是从0到6的数字或字母S.运行级别0,6和S分别保留用于关机,重启和单用户模式。
以上所有内容似乎都围绕着对问题的直接回答。
从我所能find的, rcS.d
脚本的实现就像S
代表“ 启动 ”而不是“ 单一 ”。
它们都在启动时运行。 如果你想使用运行级别1,运行rc1.d
中的脚本(这可能是非常空的,考虑到我们在rcS
所做的所有工作)
更重要的是, rcS
脚本运行在rc3
的路上 – 这样,系统有效地将自己置于单用户模式,然后重新思考并决定它应该做什么。 非常混乱,大部分是不成文的。
作为certificate,如果你检查/etc/inittab
,你会发现:
# Boot-time system configuration/initialization script.<br> # This is run first except when booting in emergency (-b) mode. si::sysinit:/etc/init.d/rcS
其次是许多行类似于:
l3:3:wait:/etc/init.d/rc 3
S是单用户模式。
除了由mdpc提供的答案外,在运行级别1中,不会启动守护进程(服务)。