您的位置:首页 > 运维架构

对Kernel panic-not syncing:No init found...init=option to kernel错误总结!

2011-11-08 21:13 429 查看
在移植Linux中很容易出现这样那样的问题,我也遇到过,现在就共享下人家的一些经验和自己的一些新的吧:

一:mount_devfs_fs(): unable to mount devfs, err: -2

"mount_devfs_fs(): unable to mount devfs, err: -2"一个困扰了我很久的问题,主要是ecc的问题。在此我把我的理解说一下好了: 搞清楚你在driver/mtd/nand/s3c2410.c文件中有没有把NAND_ECC_SOFT改成NAND_ECC_NONE,这个网上不少的人都会做(听说会与yaffs文件系统有冲突,但我发现反而和cramfs文件系统有冲突)。假设你把NAND_ECC_SOFT改成NAND_ECC_NONE,那[*] Lets Yaffs
do its own ECC 这一步是必需的。

最后,如果你把NAND_ECC_SOFT改成NAND_ECC_NONE的话,那你下载yaffs文件系统的时候就不应该加上-e的参数了。

这个东西我可是经历了无数次的"mount_devfs_fs(): unable to mount devfs, err: -2"才悟出来的,本来想不讲出来的,但实在太多人问这个问题了,实在不忍^_^

最后给点建议:先让内核挂载cramfs试试看(记得把NAND_ECC_SOFT改成NAND_ECC_NONE哦),因为这个文件系统只要用下载内核的命令下载就行,成功挂载cramfs的话将会是你最大的鼓舞

二:确保devfs修改正确.

由于linux 2.6.12后取消了devfs,因此你自己在fs/kconfig里面添加devfs的支持.从2.6.12的fs/Kconfig中拷贝下面几项到2.6.14的fs/Kconfig中去:

config DEVFS_FS

bool "/dev file system support (OBSOLETE)"

depends on EXPERIMENTAL

help

…………………………………………………

config DEVFS_MOUNT

bool "Automatically mount at boot"

depends on DEVFS_FS

help

………………………………………………….

config DEVFS_DEBUG

bool "Debug devfs"

depends on DEVFS_FS

help

…………………………………………………..

help 的部分就省了,反正你在 2.6.12 内核的配置文件会看得到,或者自己写上去也行。

重新make menuconfig 在File systems->Pseudo filesystems目录里面可以后到devfs的配置选项如下:

[*] /proc file system support

[*] /dev file system support (OBSOLETE)

[*] Automatically mount at boot

[*] Debug devfs

[*] Virtual memory file system support (former shm fs)

[ ] Relayfs file system support

我在一次实验当中没有把Debug devfs加进去,系统挂不成功!因为在执行内核要结束的时候,要mount devfs,需要debug devfs!所以要加上去!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: