第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

制作jffs2映像文件

/*
 *硬件平台:韦东山嵌入式Linxu开发板(S3C2440.v3)
 *软件平台:运行于VMware Workstation 12 Player下UbuntuLTS16.04_x64 系统
 *参考资料:《嵌入式Linux应用开发手册》、https://www.iteye.com/blog/luckyclouds-675711
*/


一、解压并安装zlib压缩库

  1. 上传zlib-1.2.3.tar.gz包到虚拟机的/work/tools目录下
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  2. 执行解压命令tar xzf zlib.1.2.3.tar.gz
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  3. 进入到解压文件夹内cd zlib.1.2.3执行安装命令./configure --shared --prefix=/usr/,这个命令的意思就是安装成动态库,并安装到/usr目录下。
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  4. /zlib-1.2.3目录下进行make操作
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  5. 最后进行sudo make install,因为要安装到系统中,所以需要加sudo
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

二、解压缩并安装mtd-utils-05.07.23.tar.bz2

  1. 上传mtd-utils-05.07.23.tar.bz2包到虚拟机的/work/tools目录下
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  2. /word/tools执行解压tar xjf mtd-utils-05.07.23.tar.bz2
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  3. 在解压文件夹/mtd-utils-05.07.23/util目录下make
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  4. 最后在/mtd-utils-05.07.23/util目录下sudo make install
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件
    这个时候已经安装好制作jffs2映像文件的工具了。

三、制作jffs2映像文件

1、 进入到之前保存根文件系统的目录cd /wors/nfs_root

2、执行mkfs.jffs2 -n -s 2048 -e 128KiB -d first_fs -o first_fs.jffs2

  • -n :表示不要在每个擦除快上都加上擦除标志
  • -s 2048:表示你所使用的NAND FLASH中一页的大小为2048字节(除了OOB块)。
  • -e 128KiB:表示你所使用的NAND FLASH中一个擦除块的大小为128KB(除了OOB块)。
  • -d:表示根文件系统目录
  • -o:表示输出文件

第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

四、烧写jffs2映像文件

  1. 使用USB下载口,烧写first_fs.jffs2到开发版,可以看到此时系统没有自动挂载jffs2的文件,而是挂载yaffs
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  2. 所以需要在命令行参数设定bootargs的参数
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  3. 输入命令set bootargs noinitrd root=/dev/mtdblock3 rootfstype=jffs2 init=/linuxrc console=ttySAC0后输入save
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件

  4. 最终结果:可以看到成功挂载了我们烧写进去的first_fs.jffs2
    第一、二期衔接——2.4 完善最小根文件系统-制作jffs2映像文件