要写自己的inittab,需要理解busybox的inittab文件格式。
busybox的inittab文件与通常的inittab不同,它没有runlevel的概念,语句功能上也有限制。inittab语句的标准格式是
<id>:<runlevels>:<action>:<process>
各字段的含义如下
<id>:
id字段与通常的inittab中的含义不同,它代表的是这个语句中process执行所在的tty设备,内容就是/dev目录中tty设备的文件名。由于是运行process的tty设备的文件名,所以也不能象通常的inittab那样要求每条语句id的值唯一。
<runlevels>:
busybox不支持runlevel,所以此字段完全被忽略。
<action>:
为下列这些值之一:
sysinit, respawn, askfirst, wait,once, restart, ctrlaltdel, shutdown
其 含义与通常的inittab的定义相同。特别提一下askfirst,它的含义与respawn相同,只是在运行process前,会打出一句话
“please press Enter to active this console”,然后等用户在终端上敲入回车键后才运行process。
<process>:
指定要运行的process的命令行。
分享到:
相关推荐
- 每个文件都有特定用途,例如 `/etc/inittab` 控制系统的初始化,`/etc/passwd` 存储用户信息,`/etc/resolv.conf` 设置 DNS 解析等。 完成上述步骤后,你就成功创建了一个基于 Busybox 的基本根文件系统。不过,...
为了节省存储空间,我们可以将创建的根文件系统压缩成 CramFS 格式。使用 `mkcramfs` 工具,指定根文件系统的目录作为输入,生成一个名为 `rootfs.cramfs` 的文件,这个文件就是我们的根文件系统镜像。 6. **挂载...
5. **系统初始化**:配置`/etc/inittab`或使用Systemd等现代初始化系统,确保系统启动时能够正确运行Busybox的shell或其他启动脚本。 6. **测试和优化**:最后,将构建好的根文件系统挂载到模拟环境中进行测试,...
在嵌入式Linux系统中,inittab文件的格式和PC Linux系统中的inittab文件格式相同,但是在嵌入式系统中,inittab文件的内容相对简洁。inittab文件中的每一记录都从新的一行开始,每个记录项最多可有512个字符,每一项...
本文将详细讲解如何使用BusyBox来构建根文件系统,特别针对ARM架构的Linux设备。 首先,我们需要创建根文件系统的目录结构。根目录下的基本目录包括: - `/dev`:存放设备文件的地方,设备驱动程序通过这些文件与...
总结起来,使用BusyBox构建根文件系统的过程主要包括:下载源码、配置、编译、安装、创建根文件系统目录结构、复制 BusyBox 文件以及编写和配置初始化脚本。这个过程是嵌入式Linux系统开发的基础步骤,对于mini2440...
Busybox和/etc配置文件在构建嵌入式系统或者轻量级Linux环境时起着至关重要的作用。Busybox是一款集成了众多Unix命令的小巧工具,而/etc目录则包含了系统的配置文件。接下来,我们将深入探讨这两个关键组件及其在...
- 在**Init Utilities**部分,选择支持读取inittab文件,并启用通过控制终端运行命令的功能,这样可以避免出现类似“/bin/sh: can't access tty; job control turned off”的错误提示。 - 最后,在**Shell**部分...
在etc目录下创建inittab文件,它是系统启动时的初始化脚本。你可以参考BusyBox源码中的"examples/inittab"来编写内容。 除了上述步骤,还需要完成其他一些任务,例如: - **添加系统服务**:根据需求,在etc/init....
- 选择支持`init`,并允许它读取`/etc/inittab`配置文件。 - 选择必要的核心工具,如`cp`、`cat`、`ls`、`mkdir`等。 - 选择`mount`、`umount`以支持文件系统挂载,包括NFS和loopback挂载。 - 选择`inetd`以支持...
inittab文件是init进程的配置文件,它指定了系统启动时的行为。我们需要创建一个inittab文件来指定系统启动时的行为。 3.3、fstab文件 fstab文件是文件系统表,它指定了文件系统的挂载点和权限。我们需要创建一个...
* 基本的系统配置文件:包括 rc、inittab 等基本配置文件。 * 必要的设备支持文件:包括 /dev/hd*、/dev/tty、/dev/fdO 等设备支持文件。 * 基本的应用程序:包括 sh、ls、cp、mv 等基本应用程序。 Busybox 的编译...
之后,通常还需要设置/etc/inittab文件,该文件是init进程的配置文件,定义了系统启动时应该运行哪些服务。例如,启动时运行初始化脚本,或者以交互方式启动一个shell等。如果没有这个文件,BusyBox会使用默认配置。...
4. **创建根文件系统**:使用如 `mkfs.ext2` 或 `mkfs.ext3` 创建一个空白的文件系统镜像,然后挂载该镜像并复制编译好的 BusyBox 及其他必要的配置文件(如 `/etc/inittab`)到挂载点。 5. **启动模拟**:在 QEMU ...
除了Busybox,还需要创建一些基本的配置文件,如`profile`、`fstab`和`inittab`。`profile`文件用于设置环境变量,如`LD_LIBRARY_PATH`和`PATH`。`fstab`文件定义文件系统的挂载点和类型,例如proc、tmpfs等。`...
由于BusyBox的inittab格式与标准Linux有所不同,因此通常不需要传统的inittab文件。启动时需要执行的任务可以写入`/etc/init.d/rcS`脚本。 6. **创建设备节点和目录**: 在新安装的BusyBox环境中,需要创建必要的...
5. 最后,你可以将`/tmp/busybox-root`打包为 squashfs 或其他格式的文件系统镜像,用于嵌入式设备。 通过以上步骤,我们便能构建一个包含基本`etc`配置的根文件系统。然而,实际应用中,`etc`目录的配置可能会根据...
- **`inittab`文件**:使用`vi inittab`编辑,内容包含系统初始化命令、控制台行为、关机指令等。 - **`fstab`文件**:使用`vi fstab`编辑,定义文件系统的挂载点和属性。 - **`rcS`文件**:使用`vi rcS`编辑,...
【Busybox 1.13.3 和 etc 配置文件详解】 Busybox 是一个集成了众多 Linux 命令的单一可执行程序,被广泛应用于嵌入式系统和小型 Linux 发行版中,因其体积小巧、功能强大而受到青睐。在本文件包中,我们找到了 ...
- 支持读取 inittab 文件:`[*] Support reading an inittab file` 3. **Shells(Shell)**: - 选择默认 Shell(ash):`[*] ash` 4. **Coreutils(核心工具)**: - 提供了一系列常用命令,例如 `cp`, `cat`,...