linux系统引导过程和引导修复

linux系统引导过程和引导修复

如何从光盘启动(系统坏了可以从光盘修复)

  • 在vmware中
    方法1:此种方法进入光盘后,以后每次打开虚拟机都是这个界面。需要再次进入电脑固件进行修改,才能选择进入硬件。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

方法2:
在这里插入图片描述

在这里插入图片描述
##出现这个界面点击ESC就会切换到光盘。

  • 在linux中
    点击要打开的虚拟机
    点击灯泡
    添加光驱
    在这里插入图片描述
    添加玩光驱后,进行选择。
    启动。
    在这里插入图片描述

通电

bios初始化

对硬件检测
初始化硬件时钟

磁盘引导

mbr光盘断电的时候,会收到零次,开电的时候,会跳到确定的扇区读取数据,mbr是为了让磁头跳到启动分区。
如果mbr出现问题,磁头没人支配,启动会停止。
mbr=主引导记录=0磁道1扇区446
作用:记录grub2引导文件的位置
当mbr数据丢失系统会因为找不到启动分区而停止启动
①如何看哪个设备有引导记录?
开启一个sheer,看一下fdisk -l 看设备分区 *代表设备上面有引导记录即mbr记录即引导分区。*在分区上显示,表示这个是启动分区,启动分区所在的设备为启动设备。
②如何删除这个mbr,问题模拟

Dd if=/dev/zero of=/dev/sda bs=446 count=1 

从系统的无线零字节中,截取数据446个字节,一共截取1块,放到sda硬盘中。也就是说用一个白板,把前面446覆盖掉,前面的引导数据就没了。

Dd 					##截取命令
if=/dev/zero 		##截取模板
of=/dev/vda  		##存放数据位置
bs=446  			##数据库大小
count=1 			##截取块个数

截取掉之后,重启后无法进行磁盘引导。系统重启就不太行了。
③如何解决?
关机。
选择从光盘启动。
再开启。
选择troubleshoot排错
选择rescu挽救系统。现在我们真实的硬件的东西在/mnt/sysimage这个下面挂载。
选择1

chroot /mnt/sysimage 			##转换系统从光驱到真实系统的磁盘中
grub2-install  /dev/vda  		##安装mbr.
exit							##两次让虚拟机重启

我们还是会从光盘重启,此时我们应该调整我们的启动顺序,让他从硬盘启动。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

grub2文件引导

开机时候的两行标题是系统引导文件中的内容。

/boot/loader/entries 						##引导文件所在的目录,引导文件都在boot分区里面。
/boot/grub2/grub.cfg						##Grub是主引导文件,主引导文件引导这两个文件发生作用。

模拟文件丢失:
在此目录中删掉这两个引导文件就会丢失引导文件,电脑没办法自动引导,因此我们要手动进行引导。前提是必须知道根分区和boot分区所在设备名称。
解决方法:
①手动添加

set root=’hd0,msdos1’  					 ##指定系统启动分区
										 #Msdos1:指定引导分区在第一块硬盘的第一个分区  
										 #Set root :指定引导分区设备
										 #Hd0:指定引导分区的位置为第一个硬盘。
Linux16 /vmlinuz-4.18.0-193.e18.x86_64 ro root=/dev/vda3  
										##启动内核,只读挂载根分区,
initrd16 /initramfs-4.l8.0-193.el8.x86_64.img 
										##指定系统初始化的设备,加载系统初始化镜像,引导完成启动系统
boot 

②系统启动后不代表系统引导修复了,用命令

Cd /boot/loader/entries   ##切换到引导文件的目录
kernel-install 内核版本  内核镜像
uname -r  	  			  ##查看内核版本
						  ##当回复引导文件时报错文件缺失。其实我们系统中有这个/boot/bls.conf,但是现在没有。

③解决

cp /usr/lib/modules/4.18.0-187.el8.x86_64/bls.conf /boot
kernel-install add 4.18.0-193.el8.x86_64 /boot/vmlinuz-4.18.0-193.el8.x86_64
ls 									##查看两个文件是否恢复成功。
reboot								##查看是否成功

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

内核加载

内核加载,初始化我们的时钟,硬件驱动,加载我们的根,只读挂在/设备

Cd /boot
vmlinuz-4.18.0-193.el8.x86_64 				##内核文件

模拟问题:

rm -rf vmlinuz-4.18.0-193.el8.x86_64 	    ##删掉内核文件
reboot    									##重启失败

解决:
进入光驱的挽救模式

chroot /mnt/sysimage 
mount /dev/cdrom  /media        ##挂载光驱	
cd /media/BaseOS/Packages	
cp 								##复制内核安装包到mnt下面
cd /mnt
ls								##查看内核安装包
rpm2 	 						##对他解压
ls
cd lib/modules/4.18.0-193.el8.x86_64 
ls   							##找到内核文件
cd  /boot/loader/entries
ls
cat   xxx.conf     				##此文件中记录了内核文件的名称
								#linux:  这个就是内核文件的名称
cp 	/mnt/lib/modules/4.18.0-19      /boot/vmlinuz-4.18内核文件
exit 							##两次

重启从硬盘启动

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

系统初始化镜像

系统启动完成后,会加载文件/boot/initramfs-4.18.0-193.el8.x86_64.img 对我们系统进行初始化.
加载系统时钟,加载selinux,加载系统主机信息,加载/etc/fstab文件中磁盘挂在策略,加载磁盘配额,初始化系统程序开启开机启动服务,开启虚拟控制台,开启图形
问题模拟:

cd /boot
rm -rf initramfs-4.18.0-193.el8.x86_64.img

解决问题:

Cd /boot 
Ls
Mkinitrd --help 				##根据提示输入命令
ls   							##查看到文件已经生成
exit							##两次

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

系统启动级别

系统启动之后就读取系统的启动级别了。初始化完成后就会加载脚本和启动级别

0 关机
1 单用户
2 无图形网络模式
3 无图形网络模式
4 无图形网络模式
5 有图形网络模式
6 重启

/etc/systemd/system 			##系统启动脚本都在此目录中
Ls
default.target					#系统启动级别的脚本连接
multi-user.target.wants			#系统所有服务的启动脚本连接

①当我们设置服务开机启动或者服务开机不启动时,系统会在/etc/systemd/system/multi-user.target中建立或者删除链接。
Systemctl disable sshd
Systemctl enable sshd
②启动界别设置为reboot,就是系统开机后无限进入重启模式。
Systemctl set-dafault reboot.target
Reboot看一下
提出问题:
如果系统一直重启,就是系统启动级别出现了问题,开始了无限重启。
解决:
在出现引导文件的时候,用上下键选定第一个,按e进入编辑模式。有五行。第四行比较长,在第四行后面指定启动级别。手动更改系统启动级别为5或者3,5有图形。更改完之后,ctrl x 去开启。
进入系统后, systemctl set-default graphical.target再次reboot

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

超级用户密码忘记

恢复:
1.在开机选择界面按进入到引导文件编辑模式
2.在内核加载选项最后删除到ro选项
3.更改ro---->rw ,从只读挂载根设备变成读写挂载
4.加入rd.break参数,在系统加载完成后终止系统启动进入单用户模式
5.ctrl+x启动
6.chroot /sysroot ,当前模式下默认使用root用户登录,进入到系统单用户模式
7.echo westos| passwd --stdin root
8.touch /.autorelabel ##当/.autorelabel文件存在,可以让系统中的selinux重新,如果更改密码后selinu没有重新初始化,会阻止新密码的生效,此操作只有在selinux开启时候需要。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值