目录
通电
一. bios 初始化
对硬件检测
初始化硬件时钟
二. 磁盘引导
mbr主引导记录
位置:0磁道1扇区446字节
作用:记录grub2引导文件的位置
当mbr数据丢失,系统会因找不到启动分区而停止启动
问题模拟方式
系统磁盘 /dev/nvme0n1
dd if=/dev/zero of=/dev/nvme0n1 bs=446 count=1 ##清空系统/dev/nvme0n1上的mbr数据
恢复方式:
用光盘进入系统挽救模式
chroot /mnt/sysimag
grub2-install /dev/xxxxxx ##重新安装grub2到系统硬盘上
三. grub2文件引导
rhel7中:
文件位置: /boot/grub2/grub.cfg
作用: 指定/boot位置
指定系统启动时加载文件名称
rhel8中:
/boot/grub2/grub.cfg
/boot/loader/entries/xxxxxx.conf
模拟问题
rhel7中:
rm -rf /boot/grub2/grub.cfg
rhel8中:
rm -rf /boot/loader/entries/xxxxxx.conf
修复:
rhel7:
grub2-mkconifg > /boot/grub2/grub.cfg
rhel8:
kerne-install add 内核版本号 内核镜像
手动引导
set root='hd0,msdos1'
linux16 /vmlinuz-4.18.0-147.el8.x86_64 ro root=/dev/nvme0n1p2
initrd16 /initramfs-4.18.0-147.el8.x86_64.img
boot
通用命令:
kernel-install add $(uname -r) /lib/modules/$(uname -r)/vmlinuz
四. 内核加载
/boot/vmlinuz-$(uname -r)
作用:
系统初始化硬件设备
只读挂载/设备
问题出现:
rm -rf /boot/vmlinuz-$(uname -r)
修复:
重装内核
进入挽救模式
chroot /mnt/sysimage
mount /dev/cdrom /mnt
cd /mnt/BaseOS/Package
rpm -ivh kernel-xxxxxx.rpm --force
在rhel8中还需
mv /boot/vmlinuz-kernel-xxxxx /boot/vmlinuz-xxxxx
五. 系统初始化镜像
/boot/initramfs-4.18.0-147.el8.x86_64.img
作用:
加载系统时钟
加载selinux
加载系统主机信息
加载/etc/fstab文件中磁盘挂载策略
加载磁盘配额
初始化系统程序开启开机启动服务
开启虚拟控制台
开启图形
问题出现:
rm -rf /boot/initramfs-4.18.0-147.el8.x86_64.img
恢复:
在挽救模式中
chroot /mnt/sysimage
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
六. 系统启动级别
0 关机
1 单用户模式
2 无图形网络模式
3 无图形网络模式
4 无图形网络模式
5 有图形网络模式
6 重启
问题出现;
systemctl set-default reboot.target
恢复:
在开机选择界面按<e>进入引导文件编辑模式
在内核加载选项最后加入启动级别5
ctrl+x
启动完成后
systemctl set-default graphical.target
七. 超级用户密码忘记
恢复:
在开机选择界面按<e>进入引导文件编辑模式
在内核加载选项最后删除到ro选项,更改ro为rw
加入rd.break 参数 终止系统启动
进入单用户模式
ctrl+x 启动
chroot /sysroot
更改密码
echo lee | passwd --stdin root
touch /.autorelabel ##当/.autorelabel 存在,selinux会重新初始化