linux 创建initramfs-基于 TI AM335X


mail:[email protected]

qq:196568501

phone:13410905075

author:drivermonkey

-欢迎交流


1)根文件系统创建,所谓的建立根文件系统就是将所需要根文件copy 到一个目录,用压缩命令压缩为指定格式。

2)将更文件系统编译进内核。具体方法就是在 编译内核的时候指定第一步生成的根文件路径,然后编译。

       KERNEL OPTIONS:

#
# General setup
#
...
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE="<path_to>/target_fs>"
...

#
# UBI - Unsorted block images
#
...
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=1
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024

3)把内核直接放到sd或者nand中,系统起来

  

在系统启动的过程中遇到了这样的问题:

1.WARNING: Unable to open an initial console

解决方式:在根文件加入:

cd /dev
mknod -m 660 console c 5 1
mknod -m 660 null c 1 3

2. 在系统启动的时候找不到init 程序

解决方式:

创建 link 使其指向 init 程序

3.启动到level 5 的时候可能出现 找不到 库文件的情况。

解决方式:

直接将缺少库文件 copy 到根文件系统里


参考资料:

http://processors.wiki.ti.com/index.php/Initrd

你可能感兴趣的:(linux 创建initramfs-基于 TI AM335X)