Linux操作系统引导过程

本文详细介绍了Linux系统的引导过程,包括开机自检、MBR引导、GRUB菜单、加载内核和init初始化。同时,讲解了如何修复MBR扇区和GRUB引导故障,包括备份MBR、模拟故障后的急救模式恢复、重建GRUB配置。此外,还提到了CentOS7中Systemd的使用以及如何重置root用户密码。最后,讨论了系统服务控制和运行级别的管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、引导过程总览

1.开机自检
服务器主机开机以后,将根据主板BIOS中的设置对CPU (Central Processing Unit,
中央处理器)、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制剖权,大多时候会移交给本机硬盘。
总结:检测出第一个能够引导系统的设备比如硬盘或光驱、U盘

2.MBR引导
当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中 MBR (Master Boot Record,
主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区;或者直接根据MBR记录中的引导信息调用启动菜单(如GRUB)。
总结:运行放在MBR扇区里的启动GRUB引导程序

3.GRUB菜单
对于Linux操作系统来说,GRUB (GRand Unified Bootloader,统一启动加载器)是使用最为广泛的多系统引导器程序。系统控制权传递给GRUB 以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载 Linux内核文件,然后将系统控制权转交给内核。需要注意的是,Centos 7 采用的是 GRUB2启动引导器。

 4.加载内核:将内核与镜像加载到内存中

5.init初始化:开启pid=1的进程,进程就是init加载的程序是systemd

2、系统初始化进程

init进程

  • Linux内核加载运行lsbin/init程序
  • init进程是系统中第一个进程
  • init进程的PID(进程标记)号永远为1

Systemd

  • Systemd是Linux操作系统的一种init软件
  • CentOS7中采用全新的Systemd启动方式,取代传统的SysVinit
  • CentOS7中运行的第一个init进程是/lib/systemd/systemd

查看当前系统下的活跃进程:ps aux

Systemd单元类型

单元类型:0service      扩展名: .service   说明:描述一个系统服务

运行级别所对应的Systemd目标

运行级别:6   Systemd的target:reboottarget      说明:重新启动,使用该级别时将会重启主机

 3、修复MBR扇区故障

1、思路:

MBR  512字节
MBR  是在sda盘的第一个物理扇区中
解决MBR引导程序故障问题,前提要先进行备份
备份:
    首先在/sda中,我只要将512的MB内容,备份到其他盘/sdb

2、问题:

MBR引导文件异常了,重启后无法正常进入

3、解决:

  • 进入急救模式,然后选择进入“安全模式”
  • 创建挂载点,r将之前备份在/sdb中的mbr文件挂载到这个临时挂载点上
  • dd复制512字节的数据到/ sda中
  • exit退出重启,检测

4、步骤

1.备份MBR扇区数据到其它磁盘( /dev/sdb1)

mkdir /backup
mount /dev/sdb1 /backup

dd if=/dev/sda of=/backup/ mbr.bak bs=512 count=1

 

 2.模拟破坏MBR引导扇区

dd if=/dev/zero of=/dev/sda bs=512 count=1

 

3.引导界面进入急救模式,从备份文件中恢复MBR扇区数据

先加教好光盘镜像,重启操作系统
当出现安装向导界面时,选择"Troubleshooting"选项,
再选择"Rescue a centos Linux system"选项,进入急救模式
选择“1"选择cContinue并按Enter键继续
再次按Enter键后将进入带"sh-4.2#"提示符的Bash Shell环境
sh-4.2#mkdir /backupdir
sh-4.2#mount /dev/sdb1/backupdir
#挂载带有备份文件的分区
sh-4.2#dd if=/backupdir/mbr.bak of=/dev/sda#恢复备份数据.
sh-4.2#exit
#执行exit命令退出临时shell环境,系统将会自动重启 

 

 

 

 4、修复GRUB引导故障

1、故障原因

  • MBR中的RGU引导程序遭到破坏
  • grub.conf文件丢失,引导配置有误 

2、故障现象

  • 系统引导停滞,显示grub>提示符

3,解决思路

  • 尝试手动输入引导命令
  • 进入急救模式,重写或者从备份中恢复
  • 向MBR扇区中重建grub程序 

 4、步骤

 引导界面进入急救模式,重建GRUB菜单配置文件
rm -rf /boot/ grub2l grub.cfg
#进入急救模式,加载光盘镜像切换到系统根环境
sh-4.2#chroot /mnt / sysimage
#重新将GRUB引导程序安装到第一块硬盘(/dev/sda)的MRB扇区,如果有多个分区可省略
bash-4.2#grub2-install / dev / sda
#重新构建GRUB菜单的配置文件
bash-4.2# grub2-mkconfig -o / boot/grub2/grub.cfg
#退出chroot环境,并重启
bash-4.2#exit
sh-4.2# reboot

 

 5、CentOS遗忘root用户的密码或是重置

进入急救模式,加载系统镜像,c切换到系统根环境 exit选择troubleshooting然后选择急救模式
sh-4.2# chroot /mnt/sysimage
#重设root用户密码
bash-4.2# passwd root

 

6、优化启动过程

ntsysv工具

  • 提供一个交互式、可视化窗口
  • 可以在字符终端运行
  • 便于集中管理多个服务

 systemctl工具

  • 不提供交互式、可视化窗口
  • 管理单个服务效率更高

7、Linux系统的运行级别

查看运行级别

  • rulevel命令
  • systemctl工具

临时切换运行级别

  • init命令
  • systemctl工具

设置永久运行级别

8、系统服务控制

系统服务控制

systemctl 控制类型  服务名称

控制类型

  • start:启动
  • stop:停止
  • restart:重新启动
  • reload:重新加载
  • status:查看服务状态
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值