Chinaunix首页 | 论坛 | 博客
  • 博客访问: 61420
  • 博文数量: 8
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 202
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-26 15:34
个人简介

爱技术的大学狗

文章分类

全部博文(8)

文章存档

2014年(8)

我的朋友

分类: LINUX

2014-01-29 14:46:17

家里的ubuntu 更新kernel 完了之后,重新启动的时候出现了下面情况:
Gave up waiting for root device. Common problems:
-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)
ALERT!  /dev/disk/by-uuid/34e5c1 …     does not exist …
dropping to a shell

网上搜了一下
有下面几种办法解决:
可以参考:http://blog.163.com/kayslive@yeah/blog/static/12210056420100131530813/
1.不管他,先进系统再说。
 直接在GRUB中把 kernel 那句中的 root=uuid=xxxxxxx给他改成 root=/dev/sda5
 成功进入。
2.至此,可以有两种解决之道,一种是先用着,一种是根本解决之道。
3.对于先用着,只要把Grub的menu.lst 里面的 root=uuid=xxxxx改成 root=/dev/sda5。这个我不多说,可以搜一下,网上有,也可以给我留言。
4.对于根本解决之道,请看下面:
根本解决之道
1.uuid不存在,那我们只要修复就行了,从网上查,有的说要重装GRUB。直觉告诉我不行。
2.那我记得有个 fsck 的可以修复硬盘。试试:
sudo fsck
的确有错,看了问题要解决了。
修复一下,重启机器。
又进不去了,不过这回找到uuid了,就是进不去x-window。那我就再在shell中,fsck一下。
重启,到进度条的时候,机器自动修复硬盘,看来有希望了。
呵呵,果然进去了。
此致全部解决。


当我尝试第一个办法把uuid 改成 /dev/sdax 后,重启了一下发现还是不行,在busybox下ls 了一下/dev下发现没有sda项,cat 了一下 /proc/modules 发现没有任何设备= =

然后我猜想是不是硬盘坏掉了。。。然后我重启了一下发现同一块硬盘下的window可以进去。所以硬盘是没问题的。在网上搜了一下发现没有类似这样的情况,没有办法只能重装一遍了。
当然啦,我还想试试跟新一下kernel看看会不会还出现这个问题。结果问题同样出现。。。。= =
弄了半天没有弄好 ,还是重装再来一遍吧。

前两次编译内核的时候没有怎么注意编译出现的问题。这次编译的时候一直盯着,然后终于发现问题了。
在 make install 这一步的时候出现了下面一堆东西:
WARNING:couldn't  open /lib/modules/3.8.5/modules.dep.temp for writing :  No such file or directory
FATAL:could not open /lib/modules/3.8.5/modules.dep.temp for writing : No such file or directory
FATAL:could not load /lib/modules/3.8.5/modules.dep:No such file or directory
FATAL:could not load /lib/modules/3.8.5/modules.dep:No such file or directory
FATAL:could not load /lib/modules/3.8.5/modules.dep:No such file or directory
......
因为最后那几行是找到了那文件的,所以前几次就没有注意到这个问题。
百度了一下发现原来是在上一步  make modules_install  写成 make modules install 了。这样的话就相当于
make modules + make install 了。这样的话编好的模块就没有拷到对应的路径(/lib/modules/x-x-x)下了。
结果重启之后内核的硬盘模块没有找到,然后就。。。Gave up waiting for root device
这错误犯得太二了。。。大家编译内核的时候还是留心点吧。

希望对遇到同样问题的同学有所帮助吧。

阅读(6307) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~