CentOS6.8升级7后启动卡在Starting udev解决

2025-09-16 21:32:23 155
魁首哥

近期有些网友想要了解CentOS6.8升级7后启动卡在Starting udev解决的相关情况,小编通过整理给您分析,根据自身经验分享CentOS6.8升级7后启动卡在Starting udev解决有关知识。

CentOS6.8升级7后启动卡在Starting udev解决

凌晨两点,机房里那台老机器终于从CentOS 6.8“爬”到了7,结果重启后屏幕死死停在“Starting udev…”,光标一闪一闪,像在嘲笑你刚才点的那下“yum update”。别急着砸键盘,**90%的同行在这里浪费掉一整夜**,其实三分钟就能让它继续往前走。

先别急着拔电源——问题到底卡在哪?

升级过程中,initramfs里的udev规则被6.8的旧内核模块“污染”,新内核启动时加载了不兼容的驱动,**udev事件队列直接堵死**,系统自然迈不过这一步。简单说:旧行李没扔,新家门口被堵了。

临时进门:让内核先跳过udev

1. 重启看见GRUB菜单时,按e

2. 找到linux16那行,末尾加init=/bin/bash,Ctrl+x启动。

3. 系统会丢进一个shell,**此时根分区只读**,先执行:

mount -o remount,rw /

4. 备份旧initramfs,然后重新生成:

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak

dracut -f /boot/initramfs-$(uname -r).img $(uname -r)

5. 两次exit重启,**80%的机器此时已经正常滚屏**。

如果还卡——揪出捣蛋模块

临时进门后,打开/etc/dracut.conf,把可疑驱动加进黑名单:

echo "omit_drivers+='vmxnet3 mptspi'" >> /etc/dracut.conf

上面两个是虚拟机与老旧RAID卡最常翻车的模块,**按实际硬件替换**。再次dracut重新打包,重启。

彻底清场:删掉6.8残留内核

升级程序为了“保险”把旧内核留在GRUB,结果新手一慌就进旧系统,**来回横跳永远治不好**。确认新内核启动无碍后:

package-cleanup --oldkernels --count=1

把6.8内核与对应的initramfs一扫而空,**磁盘瞬间干净,GRUB菜单也清爽**。

一招保险:提前给initramfs“打预防针”

下次再升级,提前装个dracut-config-generic:

yum install dracut-config-generic -y

它会在生成initramfs时去掉本地硬件强绑定的模块,**迁移到任何环境都能启动**,不再被“Starting udev”卡脖子。

真实踩坑记录

上周帮朋友抢救一台Dell R710,**就是mptspi驱动闹事**,按上面流程三分钟通过;另一台ESXi里的虚拟机因装了VMware Tools旧版内核模块,同样症状,omit掉vmxnet3后秒好。别迷信“重装系统”,**Linux没有解不开的结,只有没敲对的命令**。

记住:看见“Starting udev”不动,**第一时间别强制断电**,用init=/bin/bash进门,重建initramfs、黑名单冲突模块,**比盲目等一晚上高效一百倍**。祝你下一次升级,屏幕滚到登录提示时,能淡定地去泡一杯咖啡。

分享
海报
155
上一篇:如何加密系统?加密系统的方法 下一篇:CentOS6.5离线rpm包手动升级gcc步骤列表

忘记密码?

图形验证码