CentOS 7的引导过程是一个复杂而精细的系统启动序列,涉及从硬件自检到操作系统加载的多个步骤,以下是对CentOS 7引导过程的详细解析:
CentOS 7 引导过程
1、BIOS 加电自检(POST):当计算机开机后,首先进行的是BIOS加电自检,这一步骤包括检查CPU、内存、显卡等硬件设备是否正常运行,并进行初始化。
2、MBR 引导:完成硬件检测后,BIOS会找到硬盘上的第一个扇区——主引导记录(MBR),并将系统控制权交给MBR,MBR负责将控制权转交给包含操作系统引导文件的分区。
3、GRUB2 菜单:系统控制权传递给GRUB(GRand Unified Bootloader)后,GRUB会显示一个菜单,提供用户选择启动哪个操作系统或内核版本的选项。
4、加载 Linux 内核与内存文件系统:用户选择启动项后,GRUB会加载Linux内核和initramfs(内存文件系统),initramfs包含了启动时所需的各种驱动程序和脚本。
5、初始化进程:在initramfs中,系统会找到所有必要的驱动程序并执行/sbin/init程序,此时PID为1的进程是systemd,systemd会启动initrd.target中的所有单元,挂载根文件系统,并最终切换到系统的根目录。
6、systemd 服务管理:systemd作为系统的初始化进程和服务管理器,会根据配置文件/etc/systemd/system/default.target启动相应的目标(如multiuser.target或graphical.target),并等待用户登录。
排障方法
1、忘记root密码恢复:在GRUB2菜单界面按下'e'键进入编辑模式,修改linux16或linux参数行,添加init=/bin/sh,然后按Ctrl+x启动至Shell,挂载文件系统为可写模式,运行passwd命令重置root密码,最后使用exec /sbin/init或exec /sbin/reboot重启系统。
2、MBR扇区修复:如果MBR扇区损坏,可以使用安装光盘引导进入紧急急救模式,备份MBR,然后使用dd命令恢复MBR。
3、GRUB修复:如果GRUB配置损坏,可以从光盘启动进入救援模式,挂载系统分区,执行chroot /mnt/sysimage,然后使用grub2install和grub2mkconfig命令重新安装和配置GRUB。
FAQs
1、如何查看CentOS 7的服务状态?
在CentOS 7中,可以使用systemctl status <服务名>
命令来查看特定服务的状态,要查看sshd服务的状态,可以运行systemctl status sshd
。systemctl listunits type=service
可以列出所有服务单元的状态。
2、如何修改CentOS 7的默认启动级别?
CentOS 7使用systemd来管理服务和运行级别,不再使用传统的SysVinit脚本,要更改默认启动级别,需要编辑/etc/systemd/system/default.target
文件,将其链接到相应的目标,如multiuser.target或graphical.target,要设置为图形界面启动,可以运行ln sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
。
CentOS 7的引导过程是一个涉及多个组件和步骤的复杂过程,了解这些步骤对于系统管理员来说至关重要,以便在出现问题时能够有效地进行故障排除和修复。