现在的位置: 首页 > 综合 > 正文

linux内核移植错误记录

2017年09月02日 ⁄ 综合 ⁄ 共 1116字 ⁄ 字号 评论关闭

No filesystem could mount root, tried: ext3 cramfs vfat msdos romfs

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0):

(我遇到的)原因:我制作的ramdisk是ext2格式的,但在linux内核中未添加对ext2的支持,开始是M(如图所示,配置错误),需要修改为直接编译进内核。

文件系统OK了,但是: 

Failed to execute /linuxrc. Attempting defaults... 

Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.

原因: 按照http://blog.csdn.net/zhangliang_571/article/details/8519889 制作的ramdisk,原因不能一概而论,http://blog.csdn.net/forever_key/article/details/6280400提到一种,文件没有可执行权限也是一种,我遇到的是没有执行权限,看了文件是有可执行文件的,就觉得很奇怪,后面看到文件所属的组不对,想到linux中一个文件的权限和所属的组,rwx都有关,rwx没问题,猜想可能是组没设置对:所以用了chown -R root:root '~/work/fs/ramdisk_fs'
命令,还真的解决了。 如果在制作ramdisk文件系统时就以root身份来做,也不会有后面这些麻烦事了。

接下来是ls等输出乱码: 

/ # ls

[1;34mbin[0m [1;34metc[0m [1;36mlinuxrc[0m [1;34mmnt[0m [1;34msbin[0m [1;34mtmp[0m [1;34mvar[0m

[1;34mdev[0m [1;34mlib[0m [1;34mlost+found[0m [1;34mproc[0m [1;34msys[0m [1;34musr[0m

原因是输出的是彩色字体,解决方法:

http://blog.chinaunix.net/uid-26404477-id-3459315.html。

改为用secureCRT:

/ # ls
bin         etc         linuxrc     mnt         sbin        tmp         var
dev         lib         lost+found  proc        sys         usr






抱歉!评论已关闭.