linux系统盘不启动不了,linux系统无法开机及其解决办法

我们在使用linux系统时会遇到很多问题,如系统崩溃,系统起不来,忘记root密码等等,或许很多人遇到这样的问题直接选择重装系统,但是一次次重装显得很麻烦,那么,我们在接下来就来学习几种系统的排错方法。

切记,排错原则就是缺什么则补什么

1.root用户密码忘记

当忘记root用户后

选择进入系统时按‘e’,然后将ro后的删除,改为rw,后加rd.break

chroot /sysroot/##切换到shell模式

echo xxxxxx | passwd --stdin root##echo后面的为更改的root密码

touch /.autorelabel##重启SElinux

两个exit重启

引导阶段

d4a629b4a947cbab7e57a657a0acd24c.png

"e"进入救援模式

5fe3191eb8e9246452b9c476d8664ecf.png

ctrl+x

06022931e0f37f62a43c006572cbe6cb.png

开始具体操作

2c0856b41a51593e295a52fee239a925.png

结果

112c89c7127f04a242c545465f1a4d32.png

2.磁盘引导阶段,mbr主引导的恢复

模拟问题:

dd if=/dev/zero of=/dev/sda bs=446 count=1 删除主引导记录

f79df1b58a6c03f0d7ea483e77bdd15f.png

e57ec200cbf853f5e4bce0f327b7da1f.png

解决方案

若为真实主机,则需要插入镜像光驱,然后光驱启动

由于我们是模拟问题,用的是虚拟机,我们则添加光驱并由光驱启动

ef68552c312b4b2b6ee502ed8350fe5d.png

1d351bf66184318779c64a2ac718f85e.png

重启

25c824fd0877c560240d1ff42b7ba088.png

7bff9aa9498438b6ce3253c4cf0753ad.png

这样就进入了光驱拯救模式,然后开始解决问题

4f48171a9dc9b378bfad295d64e0e5e0.png

chroot/mnt/sysimage##切换到真实目录

grub2-install/dev/sda##此处磁盘应与所截取的位置一致

c57d4f3451bcd52cd134405d742c6228.png

两个exit退出,关闭虚拟机且切换磁盘启动

8438d58b158afcadbec14b78ab7ebb97.png

3.文件引导阶段

1.引导文件丢失

引导文件:/boot/grub2/grub.cfg

模拟问题:rm -fr /boot/grub2/grub.cfg

525955767cd3ef5856d1fbbfc6e7e7d6.png

当系统没有重启的时候可通过以下命令恢复引导文件

grub2-mkconfig > /boot/grub2/grub.cfg

8e7d8b58269f24de655e06e99044b674.png

当误删引导文件,系统被重启时会出现这样的情况

###boot###

grub > set root='hd0,msdos1'##此位置时不固定的,位置指定/boot所在分区,'hd0,msdo1'为第一块磁盘第一分区

在重启前查看df,或者在拯救模式查看df

###根###

grub > linux16 /vmlinuz-3.10.0-123.el7.x86_64 ro root=/dev/mapper/rhel-root #根分区的设备名称

主要查看df,看根分区在哪里,而且如果boot和根时分开的,则linux16 后则不加/root,可自动补齐

###系统初始化镜像###

grub > initrd16 /initramfs-3.10.0-123.el7.x86.img##可自动补齐

grub > boot

feb3f2e420130a6cc1c5be819ff78076.png

df查看boot分区位置

8f5f2b785b8c8b32df543b37540c792d.png

解决:

3d1f0b1d15b2367d189372cf174f2851.png

cdd6083dc5db068b813312a5ebe1439c.png

注:表面上看问题已经解决,但是我们刚才时通过镜像的引导文件开启的计算机,故若要解决这个问题,我们还需要手动将引导文件补上,否则每次开机均得手动引导

8da360d8e51d80051aff72516e4fd37a.png

2.内核文件丢失

#模拟问题:rm -fr /boot/vmlinuz-3.10.0-514.el7.x86_64

进入到挽救模式

chroot /mnt/sysimage##进入bash

mount /dev/cdrom /media##挂载镜像

cd /media/Packages##进入镜像的Packages目录

cp kernel-3.10.0-514.el7.x86_64.rpm /mnt##复制内核文件rpm包到mnt底下

cd /mnt

rpm2cpio kernel-3.10.0-514.el7.x86_64.rpm | cpio -id##拆解内核文件包

cd boot/##进入拆解后的内核文件所在位置

cp vmlinuz-3.10.0-514.el7.x86_64 /boot/##复制所需内核文件到/boot下

注:缺什么给什么

原理:缺什么补什么,内核文件丢失的话我们则需要选择一个和系统版本相同的镜像,将所需文件补齐

fda46d0cd22ba25b2856422ce8ed251e.png

0e0388630336c67f175686de5cb1e74c.png

进入挽救模式开始解决问题

2ec83b1f88169afd8946b8ddd7788fc8.png

进入磁盘引导,恢复正常

3.系统镜像文件丢失

#模拟问题: rm -fr /boot/initramfs-3.10.0-123.el7.x86_64.img

#当系统没有重启时

mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

或者mkinitrd /boot/initramfs-3.10.0-123.el7.x86_64.img 3.10.0-123.el7.x86_64

uname -r 是查看系统内核版本

#当系统重启后

进入挽救模式

chroot /mnt/sysimage/

再重新生成镜像文件,命令同上相同

86bac685e75c0ae891f82f167a4af8da.png

若没有重新生成直接重启:

5e65d81ed9cec79dcdcd3b883257332d.png

进入挽救模式

dad65bc9f72a94a7437640d85e894443.png

4.当/boot分区被删除

##当/boot分区被删除

进入到挽救模式

chroot /mnt/sysimage

grub2-install /dev/sda

mount /dev/cdrom /mnt

rpm -ivh /mnt/Packages/kernel-3.10.0-123.el7.x86_64.rpm --force

grub2-mkconfig > /boot/grub2/grub.cfg

bbee53cb50550900dca8f6bfc63bb355.png

4dd228489e3570021dcb5b38c109d484.png

进入挽救模式

0d36c2504b896b5b2111bc60663bc350.png

fb0057f9fe9995ccaab386494bf98761.png

两个exit进入磁盘引导

4.开机启动级别被篡改

#错误形成

systemctl set-default reboot.target

32cf902296da7526bb388bbd527e0331.png

57557d6fc67708ac5ff1c0dce3bf6398.png

将系统启动级别优先级高的改为reboot后,妨碍安系统一直重启

解决办法:

1.开机按上下键停止读秒

2.按E进入编辑模式

3.选择内核启动行

linux16 /vmlinuz..............后面加个5

4.启动系统

ctrl+x

5.再在内核中systemctl set-default graphical.target

6.reboot测试是否修改过来了

ba4bd579a542f41954f157c854f0ef7f.png

35060579adb62a8022a35efa07e762da.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值