无需完全重启硬件即可重启 ubuntu

无需完全重启硬件即可重启 ubuntu

我想重新启动操作系统,就像从 GRUB 中拉出一样,但实际上不需要重新启动整个计算机。这是因为这台机器上有许多不同的操作系统,虽然重新启动是必要的,但在这种情况下不需要人工干预来选择启动选项。有什么想法吗?我知道你可以降级到不同的运行级别,但我不知道(我们称之为)“不完整的软件重新启动”。

答案1

尝试 执行命令似乎确实能完成您需要的工作。

kexec -l kernel-image --append=command-line-options --initrd=initrd-image

来自 kexec 手册页:

kexec 是一个系统调用,它使你能够从当前正在运行的内核加载并启动到另一个内核。kexec 在内核中执行引导加载程序的功能。标准系统启动和 kexec 启动之间的主要区别在于硬件初始化通常由 BIOS 或固件执行(取决于架构)在 kexec 启动期间不执行
。这可以减少重新启动所需的时间。... 将
必须传递给新内核的命令行参数插入到 中command-line-options。将 的准确内容传递到/proc/cmdlinecommand-line-options是确保将正确的值传递给重新启动内核的最安全的方法。

从未尝试过执行我自己(除了在 crashdump 期间加载转储内核,但这是一个自动过程),我会先进入单用户模式以停止所有进程,然后再运行 kexec 。

相关内容