Linux

更改linux中的init程序位置

  • April 18, 2021

在 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.");

例如,我想知道如何將 init 程序的路徑更改為其他路徑system/init

任何幫助將不勝感激!!

來自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

引用自:https://unix.stackexchange.com/questions/645690