Linuxで初期化プログラムの場所を変更する

Linuxで初期化プログラムの場所を変更する

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

関連情報