当前位置: 技术问答>linux和unix
一个关于Linux启动的问题
来源: 互联网 发布时间:2017-05-23
本文导语: 我安装了centos 内核版本为2.6.32-431.17.1.el6.i686,最近想了解下Linux开机启动流程。init进程启动之后去读取inittab文件的内容,根据文件的内容做下一步动作,但是我找到/etc/inittab文件后,里面只有一行内容,就是:...
我安装了centos 内核版本为2.6.32-431.17.1.el6.i686,最近想了解下Linux开机启动流程。init进程启动之后去读取inittab文件的内容,根据文件的内容做下一步动作,但是我找到/etc/inittab文件后,里面只有一行内容,就是:
id:3:initdefault然后就是一些没用的注释。我有点疑惑,相关的配置是通过哪个文件来执行的?比如说root用户的配置文件是哪个?求解...
|
inittab里只有这么一行?man一下init看看是不是这个发行版改了启动流程
|
开机流程:按下电源—BIOS自检—系统引导(基本都是grub)—启动内核—初始化系统。
电源和BIOS自检应该都清楚了吧,我就不说了。 系统引导:硬盘会首先去读MBR(grub)其中读grub分为两个阶段,stage1和stage2两个阶段,你可以在/boot/grub/中看见这两个文件。当stage2被载入内存时,就开始读/boot/grub/grub.conf,然后加载内核文件/boot/vmlinuz-版本,initrd被加载到内存,释放initrd中的脚本init,此时由init去完成任务,init去挂载根运行/sbin/init,然后去读/etc/inittab/,执行/etc/rc.d/rc.sysinit,执行/etc/rc.d/rc脚本,执行/etc/rc.d/rc.local,启动终端等待登录。
电源和BIOS自检应该都清楚了吧,我就不说了。 系统引导:硬盘会首先去读MBR(grub)其中读grub分为两个阶段,stage1和stage2两个阶段,你可以在/boot/grub/中看见这两个文件。当stage2被载入内存时,就开始读/boot/grub/grub.conf,然后加载内核文件/boot/vmlinuz-版本,initrd被加载到内存,释放initrd中的脚本init,此时由init去完成任务,init去挂载根运行/sbin/init,然后去读/etc/inittab/,执行/etc/rc.d/rc.sysinit,执行/etc/rc.d/rc脚本,执行/etc/rc.d/rc.local,启动终端等待登录。
|
这个大约执行的文件应该可以在网上查找到,如果你想确认这个文件是否执行了,你在这个文件最后加一段自定义脚本,然后启动之后,查看启动日志,看看有没有相关信息,从而可以判断。。。。。
|
那你可能需要看下这两个文件。我的系统manpage就没提到这两个文件,可能系统初始化配置在里面