Chinaunix首页 | 论坛 | 博客
  • 博客访问: 474863
  • 博文数量: 59
  • 博客积分: 345
  • 博客等级: 二等列兵
  • 技术积分: 1380
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-18 22:44
个人简介

to be myself

文章分类

全部博文(59)

文章存档

2017年(5)

2013年(47)

2012年(3)

2011年(4)

分类: 嵌入式

2013-03-03 12:09:38

启动内核出现Kernel panic - not syncing: No init found.No init found.Try passing init= option to kernel.

分析内核发现在init_post()函数的最后发现下面这段:

run_init_process("/sbin/init");

run_init_process("/etc/init");

run_init_process("/bin/init");

run_init_process("/bin/sh");

panic("No init found.  Try passing init= option to kernel.");

    出现了下面的panic,内核运行上面的run_init_process()是一去不复返的,既然出现了panic,肯定就是从上面四个函数里面返回了。检查根文件系统,发现sbin/init是存在的。

    这次为什么会出错呢?之前我编译好多次,用nfs挂载都没问题的。在网上“init没起来 确认init放好了,如果是动态编译的话确定init需要的lib也都放好”。突然想到我这次是选择动态编译busybox,而/sbin/init也是指向busybox的软连接啊,busybox当然需要库才能运行额。于是拷贝了一个完整的文件系统的lib目录到挂载的这个文件系统的lib目录下,启动就OK了。

 

2011-08-01 12:27 发表于百度空间,今搬至CU。

 

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