linux系统引导过程及修复
如何从光盘启动主机
在windows VMware虚拟机中
快手速方法
开启虚拟机,鼠标点进去,在加载读条时迅速按esc进入下面界面,选择CD-ROM
慢手速方法
用+/-可以调整设备启动顺序,把光盘调整到最上方
在windows系统中,f10选项的触发需要f10和fn一起按
此方式每次启动都会从光盘启动
需要从硬盘启动只需要用此方法重新调整
系统引导过程中磁盘引导修复
通电
即开机
bios初始化
对硬件检测
初始化硬件时钟
磁盘引导
mbr=主引导记录=0磁道1扇区446
作用:
记录grub2引导文件的位置
当mbr数据丢失系统会因为找不到启动分区而停止启动
问题模拟方式
系统磁盘/dev/sda
dd if=/dev/zero of=/dev/vda bs=446 count=1
清空系统 /dev/sda 上的mbr数据
reboot后打不开硬盘了
恢复方式:
用光盘进入系统挽救模式
chroot /mnt/sysimage
press enter
grub2-install /dev/vda #重新安装系统grub2到系统硬盘上
exit
exit
系统引导文件丢失修复
实验条件:
删除引导文件:
做过以上操作后,系统引导文件丢失,无法自动引导。
解决办法:
手动引导(每次开机都要)
指定引导分区在第一个硬盘的第一个分区中:
永久性修复
内核版本号
会报错,如何解决报错问题?:
rhel8:
cp /usr/lib/modules/4.18.0-193.el8.x86_64/bls.conf /boot/
用此命令解决文件缺失
kernel-install add 内核版本号 内核镜像
恢复系统内核文件
加载内核作用:
/boot/vmlinuz-$(uname -r)
系统初始化硬件设备
只读挂载 / 设备
问题出现:
rm -fr /boot/vmlinuz-$(uname -r)
reboot之后的结果
恢复:
光驱启动
切换到救援模式
进入 chroot /mnt/sysimage
mkdir /westosdir #建立一个westosdir目录
mount /dev/cdrom /westosdir #将光盘挂载到这个目录里面
cp /westosdir/Baseos/Packages/kernel-core-$(uname -r).rpm /mnt #将内核的安装包复制到/mnt目录里面
cd /mnt #进入/mnt
rpm2cpio kernel-core-$(uname -r).rpm | cpio -id #把这个安装包的文件解压出来到当前的目录
cp /mnt/lib/modules/$(uname -r)/vmlinuz /boot/vmlinuz-$(uname -r) #复制软件包里的内核初始化文件到/boot里面,复制过去的文件需要修改名称
两次exit退出,选择硬盘启动就好了
恢复系统初始化镜像
问题:
删除了这个文件
解决办法:
光驱加挽救模式
选择continue
2.
输入chroot /mnt/sysimage/
3.
mkinitrd /boot/initrafms-4.18.0-193.el8.x86_64.img 4.18.0-193.el8.x86_64
4.
两次exit
系统启动级别修复
当我们设定服务开机启动或开机不启动时,系统会在此文件中建立或删除链接
问题出现:
systemctl set-default reboot.target #设置用户的启动级别为0
reboot之后
系统会开机之后进入无限重启模式
恢复方法:
1.上下键停止无限重启
2.选择第一个redhat
3.按e进入编辑模式
4.更改启动级别为5(只需添加5)
5.ctrl +x 启动
6.进入系统后输入systemctl set-default graphical.target修改启动级别
破解超级用户密码
rd.break代表在系统内核加载完成后终止系统启动
ctrl+x启动
进入单用户模式(默认root)
密码变更为yxy