通电
bios初始化
grub2磁盘引导阶段
grub2文件引导街道
指定boot所在分区
启动内核,只读挂载/设备
启动init程序进入初始化阶段
启动systemd初始化进程
读取/etc/systemd/中的文件
启动程序
启动登录环境
grub文件引导阶段
由文件/boot/grub2/grub.cfg控制流程
指定/boot分区位置——>加载内核——>启动系统初始化进程——>grub2-mkconfig
内核引导阶段
检测硬件设备——>设备驱动初始化——>将/只读挂载——> 载入初始化进程systemd——>内核文件丢失请重新安装内核
systemd初始化
开启selinux和systemd-tools——>加载内核参数——>加载系统时钟,键盘,主机名称——>读写挂载/文件系统——>激活raid,lvm设备——>激活系统配额——>启动multi-user.target.wants中的所有服务脚本——>启用虚拟控制台——>启动图形
系统启动出错恢复
1.引导程序boot损坏
破坏/dev/vda前446字节引导
dd if=/dev/zero if=/dev/vda bs=446 count=1
selinux状态调整成disabled
开机无法引导系统
关闭虚拟机,加入iso镜像光盘,从光驱启动
Troubleshooting ##系统修复
Rescue a Res Hat Enterprise Linux system ##选择挽救模式
(1)继续
(2)只读挂载
(3)跳过shell
(4)退出
选择1
chroot /mnt/sysimage
grub2-install /dev/vda
执行两次exit退出从硬盘启动,恢复成功
2.引导文件/boot/grub2/grub.cfg丢失
set root='hd0,msdos1' 根据自己的boot分区
linux16 /vmlinuz-3.10.0-327.el7.x86_64 ro root=/dev/vda3
initrd16 /initramfs-3.10.0-327.el7.x64_64.img
boot
启动成功后grub2-mkconfig > /boot/grub2/grub.cfg恢复即可
3.内核丢失
cd /boot
rm -rf vmlinuz-3.10.0-123.el7.x86_64 ##删除内核
从光盘启动进入挽救模式
cd /mnt/sysimage/mnt
rpm2cpio /run/install/repo/Packages/kerner... | cpio -id ##拆开镜像文件
cd boot
cp vmlinuz-3.10.0-123.el7.x86_64 /mnt/sysimage/boot/
##把镜像文件中的内核复制到系统根的boot下面
从硬盘启动,启动成功即可
4.初始化文件丢失
cd /boot
rm -rf initramfs-3.10.0-123.el7.x86_64.img ##删除初始化文件
进入挽救模式
chroot /mnt/sysimage ##进入根环境
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) ##恢复初始化文件。$(uname -r)表示内核版本。
执行两次exit,从硬盘启动成功即可
5.boot分区丢失
恢复顺序:1–>3–>4–>2
6.闪退
从光盘启动进入挽救模式
chroot /mnt/sysimage
cp /bin/bash /mnt/sysimage/bin/bash
exit退出即可