centos启动流程

加电自检
检测硬件是否存在并且能够正常运行,如cpu、内存、硬盘是否存在并能正常运行,以及外围得输入输出设备是否存在,如键盘、鼠标、显示器。
bios启动次序,按照次序查找个引导设备,启动第一个具有引导程序的设备,即为本次启动需要加载的设备。
加载boot loader
bootloader安装在mbr中,linux的bootloader程序为grub和lilo,现在grub比较常用。mbr是第一块硬盘的第一个扇区。mbr的大小是512bytes,前446bytes为系统引导程序,从447bytes到510bytes为磁盘分区表,后两个字节为结尾标记(55AA表示为mbr是有效的,非55AA则此mbr无效)。由于mbr太小,允许bootloader程序大小最大446个字节,要求gurb程序最大为446个字节,却又要实现这么多功能几乎不可能实现,所以把grub设计为两个阶段:第一阶段加载安装在mbr中的gurb;1.5阶段让第一节段的bootloader能够识别第二阶段的所在分区的文件系统。第二阶段加载根所在分区/boot/grub/。
显示系统版本菜单加载用户选定系统内核ramdisk
内核程序一般放在/boot下,以vmlinuz开头的文件,当加载完kernel后,会初始化kernel,kernel初始完后会加载根文件系统,但是kernel可能没有自带根文件系统所在的设备驱动,这时候会加载虚拟文件系统(initrd ramdisk)。当加载完kernel和initrd后会加载根文件系统rootfs,加载根文件系统结束后根切换switchroot,为什么会有switchroot这步呢,因为加载initrd后虚拟文件系统里面有一个临时的根,所有需要切换,加载根文件系统是以只读方式挂载。运行用户空间的第一个程序sbin/init,运行/etc/inittab,/etc/init/*.conf设定的文件。包括准备软件运行环境,系统主机名称、网络配置、文件系统格式等其它服务管理,而这些操作都是init配置文件定义。
设定默认运行级别
init的配置文件中有一个非常重要的配置项,就是默认的系统启动级别,启动级别就是为了系统维护的目的而制定的。分为7个级别:
0:关闭所有服务器:关机
1:维护模式,单用户模式,sigle模式;此级别可允许root用户直接登录而无需认证;
2:维护模式,多用户模式,需要用户认证,会启动网络功能,但不支持使用NFS;
3:正常级别,完全多用户模式,文本界面;
4:预留级别;
5:正常级别,完全多用户模式,图形界面;
6:关闭所有服务;重启
运行系统初始化脚本
/etc/inittab这个文件定义了系统的启动级别,如 id:5:initdefault 即默认启动图形窗口,意味这启动或关闭/etc/rc.d/rc5.d/目录下的服务脚本所控制的服务。K开头的脚本要关闭,S开头的脚本要启动。K##数值越小越优先关闭,依赖的服务先被关闭,后关闭被依赖的服务。S##数值越小的,越优先启动,被依赖的服务优先启动,依赖的服务器最后启动。
启动终端

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88396

(1)
469008940469008940
上一篇 2017-11-14 14:16
下一篇 2017-11-14 15:17

相关推荐

  • Linux 常用命令之cp,一个可以煮饭的工具;

    cp 复制目录和文件 对于系统管理员来说,在文件系统中将文件和目录从一个位置复制到另外一个位置是家常便饭,而cp就是可以煮饭的工具之一。cp需要源对象和目标对象,源对象在前,目标对象在后面。 1. 常用选项 基本用法 [root@local tmp]# ll total 0 -rw-rw-r–. 1 gen…

    Linux干货 2016-08-02
  • N28-第二周

    1. Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
    2. bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
    3. 請使用命令行展開功能來完成以下練習:
    (1) 創建/tmp目錄下的a_c、a_d、b_c、b_d。
    (2) 創建/tmp/mylinux目錄下的bin、boot/grub、dev、etc/rc.d/init.d、etc/sysconfig/network-scripts、lib/modules、
    lib64、proc、sbin、sys、tmp、usr/local/bin、usr/local/sbin、var/lock、var/log、var/run目錄。
    4. 如何查看文件的元數據,其信息有哪些,分別表示什麼含意?如何修改文件的時間戳信息?
    5. 如何定義一個命令的別名?如何在命令中引用另一個命令的執行結果?
    6. 顯示/var目錄下所有以L小寫開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
    7. 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
    8. 顯示/etc目錄下,以非字母開頭,後面跟了一個字母以及其他任意長度任意字符的文件或目錄。
    9. 在/tmp目錄下創建以tfile開頭,後跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10. 複製/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
    11. 複製/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
    12. 複製/etc目錄下所有以L小寫或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

    Linux干货 2017-12-14
  • DNS服务器搭建示例

    DNS服务器搭建示例 负责解析magedu.com域名,能够对一些主机名进行正向解析和逆向解析 配置主配置文件 [root@slave1 etc]# vim /etc/named.conf options { listen-on port 53 { 192.168.91.132; }; // listen-on-v6 port 53 { ::1; }; di…

    2017-09-16
  • 文本处理及正则表达式

    文本处理工具:     more:分页查看文件     less:分页控制显示文件     head 查看文件的前几行         -n 3   显示前三行      &nbs…

    Linux干货 2017-05-31
  • 权限

    用户组和管理权限

    2017-11-30
  • SecureCRT 8.0的安装及Linux基本命令介绍

    在CentOS虚拟中安装并打开图形界面后,可以在图形界面和命令行界面之间任意切换。在打开终端后输入init3可以切换至命令行界面,输入init5返回到图形界面。 这里我们用SecureCRT 8.0来远程的对虚拟机进行操作,对于SecureCRT 8.0的安装步骤就不详细介绍,简单介绍下如何连接到CentOS。 1. 2.点击完成。   &nbsp…

    2017-07-13

评论列表(1条)

  • 马哥教育
    马哥教育 2017-12-02 09:23

    赞,继续加油。