硬关机和硬重启的终端命令

Avi*_*Raj 7 command-line shutdown

我想通过终端进行硬重启和硬关机(立即关机和重启)。

这可以通过终端命令实现吗?

请注意,此问题中没有答案如何从终端关闭或重新启动?问题是否立即关闭或重新启动。所以这不是一个骗局。

Avi*_*Raj 8

注意:在运行以下命令之前保存所有工作文档。

硬关机的终端命令,

sudo sh -c "echo o > /proc/sysrq-trigger"
Run Code Online (Sandbox Code Playgroud)

硬重启的终端命令,

sudo sh -c "echo b > /proc/sysrq-trigger"
Run Code Online (Sandbox Code Playgroud)


Oli*_*Oli 8

执行Alt+ SysRq+( R, E, I, S, U, B or O) 比强制重启更安全。

  • R 将键盘从原始模式切换到 XLATE 模式
  • E SIGTERM 除了 init 之外的所有内容
  • I SIGKILL 除 init 之外的所有内容
  • S 同步挂载的文件系统
  • U 以只读模式重新挂载已挂载的文件系统
  • B重新启动系统,或O关闭系统

如果您真的想要,您可以只Alt+ SysRq+B/O重新启动/停止,但这样做会使您的文件系统处于危险之中。执行上述所有操作相对安全,即使系统的其余部分出现故障也应该可以工作。

这基本上与您在命令中谈论的方法相同,但我不确定您是否可以编写 E 和 I 的脚本(因为它们会破坏您的终端访问)。但是您绝对可以处理磁盘访问和重新启动或关闭。

for i in s u b; do echo $i | sudo tee /proc/sysrq-trigger; sleep 5; done  # reboot
for i in s u o; do echo $i | sudo tee /proc/sysrq-trigger; sleep 5; done  # halt
Run Code Online (Sandbox Code Playgroud)

您仍然可能会因正在运行的应用程序而丢失数据,但它不应该破坏您的文件系统。如果您有特别大的磁盘写入缓存,最好增加该sleep值。