更改Linux中的init程序位置

更改Linux中的init程序位置

在linux内核中我在文件中发现了以下几行main.c

if (!try_to_run_init_process("/sbin/init") ||
        !try_to_run_init_process("/etc/init") ||
        !try_to_run_init_process("/bin/init") ||
        !try_to_run_init_process("/bin/sh"))
        return 0;

    panic("No working init found.  Try passing init= option to kernel. "
          "See Linux Documentation/admin-guide/init.rst for guidance.");

system/init例如,我想知道如何将 init 程序的路径更改为其他路径。

任何帮助将不胜感激!!

答案1

https://www.kernel.org/doc/html/v5.11/admin-guide/kernel-parameters.html

    init=           [KNL]
                    Format: <full_path>
                    Run specified binary instead of /sbin/init as init
                    process.

system/init不是有效路径(缺少根斜杠),它必须类似于init=/system/init

相关内容