内核源代码中的 inittab 在哪里

see*_*har 1 linux login init yocto

我想编辑inittab文件中的一些东西。我在哪里可以找到inittab内核源代码?我需要在进行更改后构建内核。我需要在启动后删除登录提示。我知道我可以更改,/etc/inittab但如果我在重新启动后这样做,我会丢失更改。我正在使用嵌入式 Linux Yocto 项目。

Ste*_*ris 7

/etc/inittab 是正在使用的 init 系统的一个特性,而不是内核的一部分。

在内核完成其部分系统初始化后,它将创建第一个用户空间进程。通常这是/sbin/init但它可以改变。

现在做什么/sbin/init取决于您拥有的初始化系统的类型。传统的“sysvinit”将读取 /etc/inittab 并基于此执行操作。

upstart是一个替代的初始化系统(例如,在 RedHat 6 中使用);inittab除了确定默认运行级别外,它不使用。

最近,systemd根本不使用inittab

因此,如果您想修改inittab您需要查看内核外部和 init 系统的方式。

更新:

在Yocto的标准poky版本中,您将看到默认设置inittab

meta/recipes-core/sysvinit/sysvinit-inittab/inittab
Run Code Online (Sandbox Code Playgroud)

还有一个脚本在

meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
Run Code Online (Sandbox Code Playgroud)

getty根据您的meta/conf条目向此附加行。

您可以inittab根据需要直接编辑模板或构建过程脚本(如果基于配置条目)。