您好,登录后才能下订单哦!
一、CentOS系统启动流程图解
二、启动详解
1.开机自检
服务器主机开机以后,将根据主板BIOS中的设置对CPU、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制权,大多数时候会移交给本机硬盘。
2. MBR 引导
当从本机硬盘中启动系统时,首先根据硬盘第1个扇区中MBR(Master Boot Record主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区;或者直接根据MBR记录中的引导信息调用启动菜单(GRUB) 。
3. GRUM菜单
对于Linux系统来说,GRUB算是使用最为广泛的多系统引导器程序了。系统控制权传递给GRUB以后,将会显示启动菜单提供给用户选择,并根据所选项(或采用默认值)加载Linux内核文件,然后将系统控制权转交给内核。
4.加裁Linux内核
Linux内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间,负责资源分配与调度。内核接过系统控制权以后,将完全掌控整个Linux操作系统的运行过程。
5.INIT进程初始化
为了完成进一步的系统引导过程,Linux内核首先将系统中的“/sbin/init”程序加载到内存中运行(运行中的程序称为进程) ,init进程负责完成一系列的系统初始化过程
init进程
与使用数字标记用户账号、组账号类似,Linux系统中的进程(运行中的程序)也使用数字进行标记,每个进程的身份标记号称为PID。在引导Linux系统的过程中,init进程是系统中第一个进程,PID(进程标记)号永远为1
init进程运行以后将陆续执行系统中的其他程序,不断生成新的进程,这些进程称为init进程的子进程,反过来说init进程是这些进程的父进程。当然,这些子进程也可以进一步生成各自的子进程,依次不断繁衍下去,最终构成一棵枝繁叶茂的进程树,共同为用户提供服务。
从以上描述可以看出,init进程正是维持整个Linux系统运行的所有进程的"始祖",因此init进程是不允许被轻易终止的。需要切换不同的系统运行状态时,可以向init进程发送正确的执行参数,由init自身来完成相关操作。
三.Systemd单元类型
四.运行级别
Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。也就是说,启动时根据"运行级别",确定要运行哪些程序。
运行级别(runlevel)的分类:
五.MBR扇区故障修复
MBR引导记录位于物理硬盘的第一个扇区(512B),该扇区又称为主引导扇区(MBR扇区),除了包含系统引导程序的部分数据以外,还包含了整个硬盘的分区表记录。主引导扇区发生故障时,将可能无法进入引导菜单,或者因无法找到正确的分区位置而无法加载系统,通过该硬盘引导主机时很可能进入黑屏状态。
(1)事先准备一块磁盘
(2).将MBR引导文件备份到新磁盘中
dd if=/dev/sda of=/data/sda.mbr.bak bs=512 count=1
(3).模拟破坏mbr引导扇区
dd if=/dev/zero of=/dev/sda bs=512 count=1
(4).重启 reboot 会出现下面dhcp搜索的情况
(5).将系统镜像文件的驱动盘放入,重启,并在读条的过程按下ESC键,选择CD-ROM Drive
(6).选择Troubleshooting 疑难问题
(6).选择Rescue a Centos system
(7).等待一段时间后,出现下面界面 输入1 选择继续
(8).这个时候输入ls 你会发现我们放备份文件的挂载点不在列表中
(9).我们新建一个挂载点,将sdb1挂载到该文件夹,你会看到我们前面备份的文件
(10).将该备份文件覆盖我们的mbr扇区引导文件
(11).输入reboot 重启
这样修复就完成了
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。