linux排错,Linux系统排错(常见)-Go语言中文社区

Linux操作系统的开机过程:从BIOS开始,然后进入Boot Loader,再加载系统内核,然后内核进行初始化,最后启动初始化进程。

更改root用户密码

开机按上下键停止读秒

按 ’e‘进入编辑模式

上下键 到linux16 /boot/vmlinuz-xxxxxxxxxxxxxxxx删除该行ro后的内容 改ro为rw rd.break

启动系统 ctrl+x

界面停止不动时按回车,依次输入以下内容

chroot /sysroot/

passwd

touch /.autorelabel

exit

720d7363a19953b7790c0e87b6677122.png

6a4341ff923b36eff2ad150ed5befea2.png

a9faa699ed153dc2e85d7475342dbaca.png

002c866bbfeedcf042ef39ac44960f71.png

磁盘引导阶段 mbr主引导记录的恢复

hostnamectl查看系统版本

fdisk -l查看主引导分区,*在哪,mbr就在哪

dd if=/dev/zero of=/dev/vda bs=446 count=1问题模拟

注意,导入的空字节只能是446,再大会把磁盘分区覆盖掉

重启动虚拟机,发现报错

添加光盘启动,调整光盘启动顺序

再次重启虚拟机

进入光盘启动恢复界面

32111

chroot /mnt/sysimage/改变程序执行是所参考的根目录位置

##grub2-install启动分区所在硬盘

grub2-install /dev/vda启动分区所在硬盘

将本地磁盘启动调到前面

重启

f26d4ca233cb04ed5c887217f58ecb69.png

e6882f43c50ee166af4ebc28ae92ccf2.png

f2f7023fcf0b28206ee158bbb74124f1.png

1cfbe1886b3085dabcaac7603cd27c02.png

e52d78a90e9542ddafa29ba61a76f7a7.png

256b3dd6e1dfc419063c149ff786ee13.png

180780b0bfae2b6f44ed551ecea6cf92.png

07340efcfb6f7b4b5660895242f94c0d.png

6388c3e874037ec8cbacc74219a5d82f.png

a0e9a66de68b3a60bd2effb811d5a1b6.png

6689e0bbb55d8563913b97755ebff0fe.png

c7b0c4070af52cb15e6adb326e69a0d5.png

文件引导阶段

1)引导文件丢失

/boot/geub2/grub.cfg引导文件

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

当系统没有重启时,

grub2-mkconfig > /boot/grub2/grub.cfg恢复引导文件

当系统已经重启时,

df先查看boot在哪?

grub > set root='hd0,msdos1'此位置不是固定的,位置指定/boot所在的分区,刚才用df命令查看过

grub > linux16 /boot/vmlinuz-3.10.0-123.el7.x86_64 ro root=/dev/vda1引导内核

grub > initrd16 /boot/initramfs-3.10.0-123.el7.x86_64.img引导系统初始化镜像

grub > boot执行引导

以上操作可以使系统正常启动,但是是临时的,所以进入系统后还是需要执行下面的命令

grub2-mkconfig > /boot/grub2/grub.cfg恢复引导文件

a27fc4c5bcab8ea3100c5d7844522aa9.png

ff2dae5b2d6a3b5d29178c21dcd83f97.png

7b275117cb6765ba06f237cdd4093bf1.png

2)内核文件丢失

rm -rf /boot/vmlinuz-3.10.0-123.el7.x86_64模拟问题

光盘启动,进入到挽救模式,32111

df查看虚拟光盘

chroot /mnt/sysimage/改变程序执行时所参考的根目录位置

mkdir redhat新建挂载点

mount /dev/sr0 /redhat/挂载到redhat下

cd /redhat/

ls

cd Packages/进入之后不要ls

cp kernel-3.10.0-123.el7.x86_64.rmp /mnt

cd /mnt

ls

rpm2cpio kernel-3.10.0-123.el7.x86_64.rmp | cpio -id

ls

cd boot/

ls

cp vmlinuz-3.10.0-123.el7.x86_64 /boot/

更改磁盘驱动为第一

e341cbcfe5010239b1e9ca4e49c65362.png

9316da8f2237d388cb5d0a9221095a9c.png

77308073ee406efadb9b2c635dfad5eb.png

系统初始化镜像文件丢失

rm -rf /boot/initramfs-3.10.0-123.el7.x86_64.img

当系统没有重启时,

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

当系统已经重启时,

光盘启动,进入到挽救模式,32111

chroot /mnt/sysimage/改变程序执行时所参考的根目录位置

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

021efb6232e6e10388dfe5b008147489.png

f52c3625fc358751b682fb0a2580c801.png

bd74723021f7cdafe0ce2b32fef801a1.png

9b6eeb2e254fef986a669704084fc29c.png

当/boot分区被删掉后

进入到挽救模式

chroot /mnt/sysimage

mkdir /boot

grub2-install /dev/vda

mount /dev/cdrom /mnt

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

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

64ec4acd5b104578b6e98c1ed749f8a7.png

b6352f2a5b466e4fe9cee10ddf7341a5.png

627a40aaaf759b3a436d0e337747c23d.png

efde086be053e31ee42df7e8ba351c67.png

当开机启动级别被篡改

错误形成

systemctl set-default reboot.target

解决

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

2.按“e”进入编辑模式

3.选择内核启动行

linux16 /vmlinuz-XXXXX ro XXXXXXXXXXXXXXX改变为:

linux16 /vmlinuz-XXXXX ro XXXXXXXXXXXXXXX5

4.启动系统

ctrl + x

5.重新设定启动

systemctl set-default graphical.target

0e270cc087c896fb54eb31624e792844.png

79f1d7e3ab36adba2f97636a9598b378.png

0b2c61a2bf2daac3cdcbbde8f9b4674e.png

36625c022cda7d4342649efc666ee70c.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值