作者:任程明,华清远见嵌入式学院讲师。
一、cramfs 文件系统+ jffs2文件系统。
1.cramfs 文件系统:存放系统文件:只读。
jffs2文件系统:存放用户文件:读写。
修改文件系统的自启动脚本:vim /etc/init.d/rcS
在其中添加:
mount -t jffs2 /dev/mtdblock3 /home/y (给用户)
2.通过虚拟机制作cramfs文件系统:
sudo mkfs.cramfs ./rootfs ./rootfs.cramfs
在虚拟机中,将做好的文件系统拷贝到tftp目录下,以备下载用:
cp rootfs.cramfs /tftpboot
开发板下载cramfs文件系统到内存中:
tftp 20008000 rootfs.cramfs
擦写nand flash:
nand erase 400000 6400000 (此为分区大小)
将下载的文件系统烧写到开发板的nand flash中:
nand write 20008000 400000 文件系统实际大小
同时擦写/dev/mtdblock3所在的文件系统(用户)
nand erase 6800000 9800000 (此为分区大小)
设置u-boot 环境变量:
setenv bootargs root=/dev/mtdblock2 init=/linuxrc console=ttySAC0,115200
二、jffs2文件系统
1. 通过虚拟机制作jffs2文件系统:
sudo mkfs.jffs2 -r ./rootfs -o ./rootfs.jffs2 -e 0x20000(块大小) --pad=0x6400000(分区大小) –n
将做好的文件系统拷贝到tftp目录下,以备下载用:
cp rootfs.jffs2 /tftpboot
开发板下载jffs2文件系统到内存中:
tftp 20008000 rootfs.jffs2
擦写nand flash:
nand erase 400000 6400000(此为分区大小)
将下载的文件系统烧写到开发板的nand flash中:
nand write 20008000 400000文件系统实际大小
或:nand write 20008000 400000 6400000
设置u-boot 环境变量:
setenv bootargs root=/dev/mtdblock2 init=/linuxrc rootfstype=jffs2 rw console=ttySAC0,115200
原文地址:http://www.embedu.org/Column/Column508.htm ,转载请注明!