/ 中存储网

Ubuntu启动时出现initramfs的方法及命令

2014-12-25 00:00:00 来源:中存储网

安装好eucalyptus ,由于打雷,还是把Ubuntu服务器关了,结果第二天来开机发现3台服务器都出现接下来的提示,并停在initramfs了。

Gave up waiting for root device.Common programs:

—Boot args(cat /proc cmdline)

—Check rootdelay=(did the system wait long enough?)

—Check root=(did the system wait for the right device?)

—Missing modules (cat /proc/modules: ls /dev)

没理由那么杯具吧。按照提示来检查:

1.Boot args

安装好之后没有修改过grub.cfg,也没有重启,估计不是这个问题。

2.rootdelay

难道服务器启动慢?新到的R525,双U,8G内存,没理由啊。不会是因为加了个LSI HBA卡就这样吧?算了,还是加上延迟来试试。

使用server 的安装光盘启动,选择 Rescure a broken system,像装系统那样一步步进行,最后在选择执行shell 位置的时候选择原来系统的根/。由于之前把/boot单独分来出来,这里挂载一下并修改/boot/grub/grub.cfg为可写,然后在 kernel   /boot/vmlinuz-2.6.32-24-generic root=UUID=7e4d787a-8081-4f79-b2c4-9945912697a4 ro quiet 后面加上 rootdelay=60 ,用sed -i 's/quiet/quiet rootdelay=60/' /boot/grub/grub.cfg 可直接替换,不熟悉就用vi吧,rootdelay=60表示延迟60秒。重启!

Lucky ,搞掂!

3.后面的就不用检查了

4.为了避免更新内核时 rootdelay 参数被覆盖,可以修改 /etc/default/grub 的 GRUB_CMDLINE_LINUX_DEFAULT="quiet rootdelay=60" ,这样下次就不会被覆盖了。