http://www.sourceware.org/jffs2/
zz from: http://blog.sina.com.cn/s/blog_4a4163880100cozw.html
因为jffs2是构建于MTD设备上的文件系统,所以无法通过loop设备来挂载,但是可以通过mtdram设备来挂载。mtdram是在用RAM实现的MTD设备,可以通过mtdblock设备来访问。使用mtdram设备很简单,只要加载mtdram和mtdblock两个内核模块即可。这两个内核模块一般的linux内核发行版都有编译好的,直接用modprobe命令加载。
下面是在Fedora core 6环境下使用mtdram设备挂载jffs2根文件系统映像的具体步骤:
1.加载mtdblock内核模块
[root@localhost ~]# modprobe mtdblock
2.加载mtdram内核模块,将该设备的大小指定为jffs2根文件系统映像的大小,块擦除大小(即flash的块大小)指定为制作该jffs2根文件系统时“-e”参数指定的大小,缺省为64KB。下面两个参数的单位都是KB。
[root@localhost ~]# modprobe mtdram total_size=49152 erase_size=128
3.这时将出现MTD设备/dev/mtdblock0,使用dd命令将jffs2根文件系统拷贝到/dev/mtdblock0设备中。
[root@localhost prebuilt_bin]# dd if=rootfs.jffs2_zylonite_qvga of=/dev/mtdblock0
98304+0 records in
98304+0 records out
50331648 bytes (50 MB) copied, 1.98391 seconds, 25.4 MB/s
步骤三也可以用以下等价的方法完成,更为简单:
[root@localhost ~]# cat roots.jffs2 >/dev/mtdblock0
4.将保存了jffs2根文件系统的MTD设备挂载到指定的目录上。
[root@localhost prebuilt_bin]# mount -t jffs2 /dev/mtdblock0 /mnt/mtd
这之后就可以到/mnt/mtd目录查看、修改挂载的jffs2根文件系统了,修改后的jffs2根文件系统可以通过dd命令拷贝为一个jffs2的映像文件。
mkfs.jffs2参数详解
zz from: http://blog.sina.com.cn/s/blog_4a4163880100cogf.html
实例:mkfs.jffs2 -r rootfs -o rootfs.jffs2 -e 0x4000 --pad=0x1000000 -s 0x200 -n
mkfs.jffs2: Usage: mkfs.jffs2 [OPTIONS]
Make a JFFS2 file system image from an existing directory tree
Options:
-p, --pad[=SIZE] 用16進制來表示所要輸出檔案的大小,也就是root.jffs2 很重要的是, 為了不浪費flash空間, 這個值最好符合flash driver所規劃的區塊大小。如果不足则使用0xff来填充补满。
-r, -d, --root=DIR 指定要做成image的源資料夾.(默认:当前文件夹)
-s, --pagesize=SIZE 节点页大小(默认: 4KiB)
-e, --eraseblock=SIZE 设定擦除块的大小为(默认: 64KiB)
-c, --cleanmarker=SIZE Size of cleanmarker (default 12)
-m, --compr-mode=MODE Select compression mode (default: priortiry)
-x, --disable-compressor=COMPRESSOR_NAME
Disable a compressor
-X, --enable-compressor=COMPRESSOR_NAME
Enable a compressor
-y, --compressor-priority=PRIORITY:COMPRESSOR_NAME
Set the priority of a compressor
-L, --list-compressors Show the list of the avaiable compressors
-t, --test-compression Call decompress and compare with the original (for test)
-n, --no-cleanmarkers 指明不添加清楚标记(nand flash 有自己的校检块,存放相关的信息。) 如果挂载后会出现类似:
CLEANMARKER node found at 0x0042c000 has totlen 0xc != normal 0x0
的警告,则加上-n 就会消失。
-o, --output=FILE 指定輸出image檔案的文件名.(default: stdout)
-l, --little-endian 指定使用小端格式
-b, --big-endian 指定使用大端格式
-D, --devtable=FILE Use the named FILE as a device table file
-f, --faketime Change all file times to '0' for regression testing
-q, --squash Squash permissions and owners making all files be owned by root
-U, --squash-uids 将所有文件的拥有者设为root用户
-P, --squash-perms Squash permissions on all files
--with-xattr stuff all xattr entries into image
--with-selinux stuff only SELinux Labels into jffs2 image
--with-posix-acl stuff only POSIX ACL entries into jffs2 image
-h, --help 显示这些文字
-v, --verbose Verbose operation
-V, --version 显示版本
-i, --incremental=FILE Parse FILE and generate appendage output for it
分享到:
相关推荐
XILINX zynq系统的petalinux工程挂载jffs2文件系统的petalinux配置工作流程,已成功应用下载到目标板卡,板卡重新启动所建立的文件夹和文件不会丢失。
文档详细描述了在linux下如何制作基于nerflash的jffs2文件系统的详细流程。
嵌入式LINUX下的JFFS2文件系统实现.pdf
目前Linux 被广泛的应用到嵌入式系统中, 但嵌入式系统中最常用的存储设备是Flash存 储器, 这使得L inux默认的根文件系统ex ...uC linux平台上构建JFFS2文件系统的方法。 关键词: JFFS2; uC linux; S3C44B0X; 嵌入式系统
将打包的jffs的bin文件还原成为linux系统可以读写的文件,支持各种加密方式
嵌入式linux的jffs2文件系统移植
linux系统下JFFS2文件系统分析pdf,英文版
jffs2文件系统镜像 可以直接烧写使用
制作根文件系统的JFFS2镜像。使用MTD工具中的mkfs.jffs2命令,具体做法如下: mkfs.jffs2 -r /home/tekkamanninja/working/nfs/rootfs -o rootfs.jffs2 -e 0x4000 --pad=0x500000 -s 0x200 -n
(1)配置内核支持jffs2文件系统。 File systems ---> [*] Miscellaneous filesystems ---> <*> Journalling Flash File System v2 (JFFS2) support 重新编译内核并拷贝到/tftpboot下。 (2)zlib的编译。 解压zlib-...
JFFS JFFS2文件系统.pdf 关于JFFS/JFFS2的简要介绍,还可以的资料
jffs2文件系统工具
JFFS2文件系统在嵌入式Linux根文件系统中的应用研究
适配于Tiny6410的根文件系统的.jffs2文件,已测试,和yaffs2文件系统差不多,只不过jffs2是压缩的文件系统,比yaffs2文件系统差不多小一半。
描述了ARM-LINUX上JFFS2制作过程
编译通过之后会生成mkfs.jffs2工具,这个工具就是用来制作jffs2文件系统映象的。把mkfs.jffs2拷贝到/root/目录下; cp mkfs.jffs2 /root/ 使用mkfs.jffs2工具生成生成jffs2文件系统的命令: cd /root/ ./mkfs.jffs2 ...
嵌入式Linux下JFFS2文件系统的实现,对于做根文件系统的用户来说很好
本文主要介绍如何在AT91SAM9261EK板子上制作和使用jffs2文件系统,使用的是linux-2.6.21内核。
在嵌入式Linux上实现JFFS文件系统.pdf
嵌入式linux文件系统jffs2制作工具,具体的说明见压缩包内