• centos 开机启动流程、开机运行级别


    目录

    1、开机启动详细流程

    2、开机的运行级别

    开机启动流程图如下:

    1、开机启动详细流程

    第一步:开机启动(power on)会进行自检,post开机自检,主要检测主板上面的信息;而(打开计算机电源,计算机硬件会自动加载BIOS,读取BISO内相关硬件信息以硬件系统的自检,随后根据BIOS配置找到第一个有引导程序的设备),BISO主要是对磁盘上面的硬件进行检查。如果没有问题就启动bash,(如果有问题就会发出蜂鸣声)。

    第二步:/boot启动顺序检查,以第一启动顺序进行启动,这里系统的是以硬盘启动。

    启动顺序:第一是硬盘。

    第三步:看硬盘第一个扇区是否有MBR(硬盘上第0磁道第一个扇区被称为MBR,即主引导程序,大小是512字节,存放了预启动信息、分区表信息),系统找到BIOS所指定的硬盘的MBR后,采用MBR中的grub2引导程序去找到系统的驱动文件在哪里(存放/boot里)。(grub的功能:提供一个菜单,允许用户选择要启动的系统或不同的内核版本;把用户选定的内核转载到RAM中的特定空间中,解压、展开)。系统读取内存中的grub配置信息(一般为menu.lst或grub.conf),并依照此配置信息来加载指定内核,加载内核中的vmlinuz initramfs 文件。

    这个文件中会产生一个0号进程,0号进程会产生一个1号进程(7:systemd)和2号进程(应该不重要在这里)。

    • pid为0 表示所有进程的祖宗
    • pid为2表示为内核进程(服务内核)
    • pid为1的为用户创建的进程(为用户服务)

    第四步:加载这个内核文件中的systemed进程之后启动相应的运行级别。之后启动相应的运行服务

    第五步: 启动的驱动中的完全的多用户状态(有NFS),检测运行级别中的/etc/rc.local或者加载一下配置文件/etc/fstab,登录根据/etc/passwd和/etc/shadow检测用户名和密码是否正确,登录后进入控制台命令行模式。

    第六步:最后加载用户的环境变量(~/.bashrc、/etc/bashrc)和初始化文件(~/.bash_profile、/etc/profile),加载bash提示符

    runlevel:查看运行级别。

    重装系统:需要将引导顺序调整:将CD移到前面,想要通过哪种方式重装系统,就将那种方式放在最前面。

    2、开机的运行级别

    开机的运行级别(init +级别)

    运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动(关机)。

    运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登录;单例模式。

    运行级别2:多用户模式(没有NFS)

    运行级别4:系统未使用,保留。

    运行级别5:X11控制台,登录后进入图形GUI模式。

    运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动。

    systemd 7和 8 的1号进程,以前是init进程,centos6是init进程。

    systemd除了干以前init的活,还集成了其他功能 比如说开机自启服务的管理。

    查看当前的运行级别:less /etc/inittab

    1. [root@localhost etc]# less /etc/inittab
    2. # inittab is no longer used when using systemd.
    3. #
    4. # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
    5. #
    6. # Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
    7. #
    8. # systemd uses 'targets' instead of runlevels. By default, there are two main targets:
    9. #
    10. # multi-user.target: analogous to runlevel 3
    11. # graphical.target: analogous to runlevel 5
    12. # To view current default target, run:
    13. # systemctl get-default
    14. #
    15. # To set a default target, run:
    16. # systemctl set-default TARGET.target

    查看运行级别:

    [root@localhost etc]# systemctl get-default

     rc.local存放想记录的。

    加载etc/fstab

  • 相关阅读:
    [极客大挑战 2019]Havefun
    磁场设备主要有哪些
    Linux设备驱动开发之设备树(Device Tree)
    【PytorchLearning】NLP入门笔记之手写Transformer Encoder内部机制
    前端工程师应该如何去创业?
    亚马逊云科技 Build On-这可能是我离Amazon最近的一次
    浏览器字体变大|变小怎么办,浏览器字体大小设置方法
    解决库存超卖问题
    01-Gin框架路由
    理工ubuntu20.04电脑配置记录
  • 原文地址:https://blog.csdn.net/m0_52165864/article/details/126470544