首页 运维 正文
Ubuntu下软Raid降级后导致机器无法启动的处理方法

 2022-10-23    350  

当在Ubuntu下使用软Raid(不是系统盘)后,如果软Raid出现降级情况,重启服务器会导致启动不起来:

ubuntu下软Raid降级后导致机器启动不起来的处理方法 - 网易杭研后台技术中心 - 网易杭研后台技术中心的博客

启动不起来的原因是因为,启动时会出现提示“do you wish to start the degraded RAID(Y/N)“,但这个提示会很快超时,当你没有及时按“Y”时,就是导致机器启动不起来。 当然,如果你在虚拟机中使用了软Raid,当软Raid出现降级,重启虚拟机也会出现上面的相同的问题。 解决的方法是:

1. 编辑文件/etc/initramfs-tools/conf.d/mdadm

2. 改变其中的"BOOT\_DEGRADED=false" 为 "BOOT\_DEGRADED=true"

3. 然后 sudo update-initramfs -u

这时启动后,就会出现一个降级的软Raid:

root@ubuntu01:~#cat/proc/mdstat
Personalities:[linear][multipath][raid0][raid1][raid6][raid5][raid4][raid10]
md127:active(auto-read-only)raid1sdb[0]
130944blockssuper1.2[2/1][U_]
unuseddevices:<none>

如果你想启动时就不要自动把软Raid设备识别出来,需要改ubuntu中内核启动脚本。需要编辑 sudo vi /usr/share/initramfs-tools/hooks/mdadm,如果你的ubuntu是13.04,则大约修改的行是89行:

88if/usr/share/mdadm/mkconf>$tmpfile;then
89cp-p$tmpfile$DESTMDADMCONF
90else
91warn"failedtoauto-generatetemporarymdadm.conffile."
92fi

需要做的是把89行的内容注释掉,基本的意思在内核的启动过程中就是不生成软Raid的配置文件,这样就不会识别出了。修改后的内容如下:

88if/usr/share/mdadm/mkconf>$tmpfile;then
89#cp-p$tmpfile$DESTMDADMCONF
90echoDisablemdadmbootautoassemblebyosdba2013.06.28
91else
92warn"failedtoauto-generatetemporarymdadm.conffile."
93fi

然后执行下面命令让配置生成到/boot/initrd.img.XXXX的启动文件中:

sudoupdate-initramfs-u

以后再启动ubuntu,就不会自动重组软Raid了。

当然注意:如果你的启动硬盘是在软Raid上,则不要做上面的操作。因为这样做后,因为操作系统不识别软Raid,也会导致在软Raid上的操作系统无法启动。

原文链接:https://77isp.com/post/8568.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。