现在一般安装服务器都是通过U盘引导安装,而刻录U盘一般都采用 UltraISO ,今天在测试服务器上安装 CentOS 7 又出现无法找到盘符的情况,具体信息如下:
[OK] Reached target Basic System
到这里就卡住不动了。第一反应就是 grub 找不到启动盘符。
网络上很多文章对于这种解决方案都是通过,找到 U盘的盘符,然后直接修改 grub 启动盘符的形式来安装系统。如下:
setparams 'Install CentOS Linux 7' linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 xdriver=vesa nomodeset quiet initrdefi /images/pxeboot/initrd.img
修改为如下:
setparams 'Install CentOS Linux 7' linuxefi /images/pxeboot/vmlinuz linux dd nomodeset quiet initrdefi /images/pxeboot/initrd.img
然后 使用 Ctrl+X 执行上面修改后的启动项,屏幕上就出列出硬盘设备的详细信息,就可以从中找到U盘的盘符。
再次修改 grub 条目:
setparams 'Install CentOS Linux 7' linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:/dev/sdd4 nomodeset quiet initrdefi /images/pxeboot/initrd.img
而后使用 Ctrl+X 启动即可进入正常安装流程。
网络上基于上面的解决方案有很多资料,在查阅相关资料时,发现一个最优解。完全不需要启动时修改 grub 配置信息。
发现原因是ISO映像文件的驱动器卷标太长,与FAT32驱动器不兼容所致。具体解释如下:ISO映像文件中的驱动器卷标很长,例如“CentOS-8-BaseOS-x86_64”长达22个字符;但是如果制作U盘时的文件系统格式为FAT32,则卷标最长为11个字符,就会截断变为“CentOS-8-Ba”。但是U盘启动并试图安装CentOS时是按照卷标去寻找对应的驱动器,于是就找不到! 解决办法可以如博主所说的那样操作,但是也有两种简易的解决办法。
两种解决方案如下:
尝试了第二种方式,安装后再无找不到启动盘符的问题,值得记录下。
U盘安装服务器可能报错:dracut-initqueue timeout-starting…
直接修改 /isolinux/isolinux.cfg 里 hd:LABEL= 为U盘的具体标签,或者将U盘的标签修改为 “CentOSx86_64” ,
按照正常流程安装即可。如果害怕空格影响,就把isolinux.cfg 的label 去掉\x20,同时U盘标签也去掉空格。
按tab键 再修改一下这里:
-----------------------------------
安装CentOS出现dracut-initqueue timeout-starting…解决办法:
https://blog.51cto.com/runcx/2620565
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!