Chr*_*her 8 ubuntu debian firewall runlevel
根据维基百科,'S' 应该是一个标准的运行级别:“单用户模式”。但如果我没记错的话,Debian 上的单用户模式是运行级别 1。我发现的一篇 Debian 文章声称,'S' 是一个运行级别,“系统在通往另一个运行级别的路上使用它”。有趣的...
实际上,到目前为止我一直几乎忽略了这个运行级别,但今天我玩弄了 Firestarter(是的,真的,一个最终用户防火墙)只是因为我很好奇它会生成哪个防火墙规则。但后来我注意到,它在 /etc/rcS.d 中创建了一个启动钩子,我想知道我的防火墙脚本是否也应该有它?
现在我更想知道它在 Debian/Ubuntu 上的实际情况,因为 Shorewall 包(这是一个强烈的“Debianized”包)也在 rcS.d 中创建了它的(唯一!)启动钩子!
小智 5
以上所有内容似乎都回避了对问题的直接回答。
据我所知,rcS.d脚本的实现方式是S“启动”而不是“单一”。
它们都在引导期间运行。如果您想使用运行级别 1,则运行 中的脚本rc1.d(考虑到我们刚刚在 中所做的所有工作,该脚本很可能是空的rcS)
更重要的是,rcS脚本的运行方式是rc3- 系统有效地将自身置于单用户模式,然后重新思考并决定它真正应该做什么。非常混乱,而且大多没有记录。
作为证明,如果您检查/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
Run Code Online (Sandbox Code Playgroud)
随后是许多类似以下的行:
l3:3:wait:/etc/init.d/rc 3
Run Code Online (Sandbox Code Playgroud)
我以这种方式查看运行级别:
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
Run Code Online (Sandbox Code Playgroud)
因此,如果 TCP/IP 已启动并正在运行,则确实需要防火墙,并且这种情况通常仅发生在初始状态 3 中。