Solaris:重新启动而不是初始化以进入单用户模式

Solaris:重新启动而不是初始化以进入单用户模式

我继承了有关在 Solaris 上进入单用户模式的说明,例如:

  1. 执行reboot -- -s
  2. 挂载所有文件系统

我的问题是,为什么不直接这样做:

  1. init 1

有什么不同?

答案1

David,运行级别 1 和 s 是等效的。这两个命令的主要区别在于,reboot 将重置系统,使其尽可能处于干净的状态,而“init s”将直接切换到单用户模式而不重置系统 - 这可能更快,但可能会留下“垃圾”(任何缺少 utmpx 条目的进程都可能无法关闭,等等)。

有一些细微的差别,因为“init s”在 /etc/inittab 运行中不会有任何 boot 或 bootwait 条目,但这种情况不太可能发生。

迈克尔,您说得不对,init 不理解 SMF(svcadm 的东西);但它理解。

xenny,-s 标志的关键是紧跟在 reboot 命令后面的“--”。这表示“--”后面的任何内容都应直接传递给引导加载程序和内核 - 请参阅 reboot 联机帮助页中的 boot_arguments 部分。

答案2

我相信“init 1”不会将系统设置为单用户模式.....你必须使用

init s

反而。

如果对您的声明进行了编辑,那么就会有很大的不同。重启命令基本上会完全关闭系统,然后从零开始启动到单用户模式。

简单的 init X 将仅运行脚本以将系统转换为请求的状态 X。UNIX 类型系统和 Linux 类型系统对启动/关闭脚本的选择有所不同。不会发生重新启动(当然,转换为状态 0 和 6 除外)。

答案3

reboot 将重新启动内核。init 应该让机器进入单用户模式,并在进入单用户模式的过程中终止进程,而无需重新启动内核。

在我的 solaris 机器上, /usr/sbin/reboot 的手册页提供了 dln 或 q 的可能参数,哪个以 's' 为开头的重启选项首先出现在您的路径中?

答案4

从控制台类型

#init 0

然后它会进入 OK 提示符。从那里输入

OK> boot -s

它将启动并要求输入 root 密码才能进入维护模式。输入 root 密码。它将进入单用户模式。输入who -r以验证。

相关内容