新闻动态
当前位置:首页 > 新闻动态
【常见问题(二)】打印Failed to start Switch Root错误,导致系统进入紧急模式的解决方法
2023-09-04

本期为服务器操作系统常见问题第二篇,介绍系统启动时进入紧急模式(emergency模式),打印Failed to start Switch Root报错的应对策略。

 一.   问题描述 

系统启动时进入紧急模式(emergency模式),打印Failed to start Switch Root报错,具体如下:

640.png

  二.   过程分析 

(1)根据提示,执行vi /run/initramfs/rdsosreport.txt命令查看rdsosreport.txt日志。

从日志中看,系统进入emergency模式的原因是:root文件系统没有挂载或者系统缺少os-release文件,造成initrd-switch-root.service服务启动失败。

640 (1).png

查看kernel启动参数,系统启动参数中没有包含“root=”,造成系统启动过程中不会挂载root文件系统。

640 (2).png

(2)重启系统,在grub界面按e键编辑当前系统启动选项,linux行中的root启动参数缺失。

640 (3).png

(3)按Esc回到grub界面,按e键进入修复模式启动选项的编辑模式,root启动参数存在,按Ctrl+x键通过当前修复模式进入系统。

640 (4).png

(4)进入系统后,检查/boot/grub2/grubenv文件,发现grubenv被清空。

640 (5).png

三.   问题根因 

/boot/grub2/grubenv文件被清空或者损坏。

四.   解决方案 

步骤一:通过修复模式进入系统;

步骤二:根据如下方法修复grubenv文件:

Legacy模式

(1)创建一个空的grubenv文件。

 # grub2-editenv /boot/grub2/grubenv create

(2)重新生成grub.cfg文件,在生成grub.cfg的同时会自动写入grubenv文件。

# grub2-mkconfig -o /boot/grub2/grub.cfg

UEFI模式

(1)创建一个空的grubenv。

 # grub2-editenv /boot/efi/EFI/实际系统路径/grubenv create

(2)创建 /boot/grub2/grubenv和 /boot/efi/EFI/实际系统路径/grubenv的软链接。

 # ln -sf /boot/efi/EFI/实际系统路径/grubenv /boot/grub2/grubenv

(3)重新生成grub.cfg文件,在生成grub.cfg的同时会自动写入grubenv文件。

 # grub2-mkconfig -o /boot/efi/EFI/实际系统路径/grub.cfg

步骤三:检查grubenv文件是否生成kernelopts=<paramater>参数。

640 (6).png

步骤四:执行reboot重启系统。


关注我们

Copyright © 2024 浪潮信息 鲁ICP备13028953号-12

售前咨询

售后服务

回到顶部

回到顶部

售前咨询
售后服务