【Linux】inittab系统启动时sysinit含义

# Startup the system
::sysinit:/bin/mount -t proc proc /proc
::sysinit:/bin/mount -o remount,rw /
::sysinit:/bin/mkdir -p /dev/pts /dev/shm
::sysinit:/bin/mount -a
::sysinit:/bin/mkdir -p /run/lock/subsys
::sysinit:/sbin/swapon -a
null::sysinit:/bin/ln -sf /proc/self/fd /dev/fd
null::sysinit:/bin/ln -sf /proc/self/fd/0 /dev/stdin
null::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout
null::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr
::sysinit:/bin/hostname -F /etc/hostname
# now run any rc scripts
::sysinit:/etc/init.d/rcS

# Put a getty on the serial port
console::respawn:/sbin/getty -L  console 115200 vt100 # GENERIC_SERIAL
::sysinit: 前缀用于指定在系统初始化期间应运行的命令。这些命令通常用于设置系统环境。例如,/bin/mount -t proc proc /proc 是用于将 proc 文件系统挂载到 /proc 目录的命令。 console::respawn:/sbin/getty -L console 115200 vt100 是在串行端口上启动一个 getty 的命令,这是一个用于处理串行端口输入的程序。 ::shutdown:/etc/init.d/rcK 是在系统关闭之前运行的命令。这个命令通常用于执行一些清理工作,如关闭交换空间并卸载文件系统。

以下是一些命令的详细解释:
/bin/mount -t proc proc /proc:挂载 proc 文件系统到 /proc 目录。proc 文件系统是一个伪文件系统,它提供了系统内核和当前进程的信息。
/bin/mount -o remount,rw /:重新挂载根文件系统(/)为只读模式。 
/bin/mkdir -p /dev/pts /dev/shm:创建 /dev/pts 和 /dev/shm 目录。pts 是伪终端设备的目录,shm 是共享内存区域的目录。
/bin/mount -a:自动挂载所有在 /etc/fstab 文件中定义的文件系统。
/sbin/swapon -a:启用所有在 /etc/fstab 文件中定义的交换空间。
/bin/ln -sf /proc/self/fd /dev/fd:创建一个指向 /proc/self/fd 的符号链接 /dev/fd。这是因为在某些系统中,/dev/fd 是一个符号链接,指向 /proc/self/fd。 
/bin/hostname-F /etc/hostname:设置系统的主机名。 
/etc/init.d/rcS:运行启动脚本。启动脚本通常包含了启动系统时需要执行的命令。
/sbin/getty -L console 115200 vt100:在串行端口上启动一个 getty 程序。这个程序负责处理串行端口的输入。
/etc/init.d/rcK:运行关闭脚本。关闭脚本包含了关闭系统时需要执行的命令。
/sbin/swapoff-a:关闭所有的交换空间。
/bin/umount -a -r:卸载所有的文件系统。 这些命令都是在系统启动或关闭时执行的,用于设置和清理系统环境。

null::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr

在这个上下文中,“null” 是一个特殊的关键字,用于指示这个命令不需要在系统启动时运行,而是在系统运行过程中根据需要运行。这种命令通常用于设置环境变量或者创建符号链接,这些操作在系统启动时可能还不需要,但是在系统运行过程中可能需要。

null::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout 这个命令的意思是,在系统启动时不运行这个命令,而是在系统运行过程中,当需要创建一个从 /proc/self/fd/1 到 /dev/stdout 的符号链接时,再运行这个命令。

这种语法是 init 系统的一部分,用于控制系统启动过程中哪些命令应该在哪个阶段运行。在这个脚本中,“null” 关键字用于指示这个命令应该在系统运行过程中根据需要运行,而不是在系统启动时运行。

你可能感兴趣的:(Linux,linux,前端,javascript)