启动第一步:加载BIOS 接通电源后系统的控制权就交由BIOS来完成,系统会运行一个自我检查的例行程序, 先加载BIOS信息,BIOS中包含了自检程序,中断程序、配置信息、 运行POST(Power-On-Self-Test))自检,主要检查硬件的好坏 eg:硬盘坏道将致使电脑系统文件损坏或丢失,电脑没法启动或死机, eg:内存条未插紧, eg:BIOS程序损坏 启动第二步:读取MBR Master Boot Record主引导记录,可里面却存放了预启动信息、分区表信息。 系统将其复制到内存中。其实被复制到物理内存的内容就是Boot Loader, 而具体到你的电脑,那就是lilo或者grub了。 eg:MBR文件损坏 启动第三步:Boot Loader Boot Loader,Grub、Lilo和spfdisk是常见的Loader。 系统读取内存中的grub配置信息,依照配置信息来启动不一样的操做系统。 eg:centos7中使用的是grub2 启动第五步:加载内核 创建Linux内核,基于Linux的程序应该能够正常运行了。 启动第六步:用户层init依据inittab文件来设定运行等级 内核被加载后,第一个运行的程序即是/sbin/init, 该文件会读取/etc/inittab文件,并依据此文件来进行初始化工做。 其实/etc/inittab文件最主要的做用就是设定Linux的运行等级, 启动第七步:init进程执行rc.sysinit /etc/rc.d/rc.sysinit脚本程序,包括设定PATH、设定网络配置,启动swap分区、设定/proc等等。 这里面的脚本够看几天的 启动第八步:启动内核模块 依据/etc/modules.conf文件或/etc/modules.d目录下的文件来装载内核模块。 启动第九步:执行/etc/rc.d/rc.local 你若是打开了此文件,里面有一句话,读过以后,你就会对此命令的做用一目了然: #THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES(此文件是为了兼容性目的而添加的) #It is highly advisable to create own systemd services or udev rules(建议建立本身的systemd服务或udev规则) #to run scripts during boot instead of using this file.(在引导期间运行脚本而不是使用此文件)。 Linux留给用户进行个性化的地方。你能够把你想设置和启动的东西放到这里。 启动第十步--执行/bin/login程序,进入登陆状态 此时,系统已经进入到了等待用户输入username和password的时候了, 你已经能够用本身的账号登入系统了。 |
启动的三种方法:shell 1、把启动程序的命令添加到/etc/rc.d/rc.local文件中centos 2、把写好的启动脚本添加到目录/etc/rc.d/init.d/,而后使用命令chkconfig设置开机启动。bash 3、把启动程序的命令添加到/etc/rc.d/rc.sysinit 文件中网络 init是全部进程的顶层ide init读取/etc/inittab,执行rc.sysinit脚本this /etc/profile 和 ~/.bash_profile 是在启动一个交互登录shell的时候被调用。centos7 etc/bashrc 和 ~/.bashrc 是在一个交互的非登录shell启动的时候被调用。spa ~/.bash_logout 在用户注销登录的时候被读取操作系统 |