linux支持解压什么文件系统,Embeded linux之各类文件系统

Cramfs:(优点:只读,目的:不可更改文件、防入侵)

1.下载cramfs-1.1源码工具

http://files.cnblogs.com/files/pokerface/cramfs-1.1.tar.gz

2.解压

tar xvzf cramfs-1.1.tar.gz -C /home/liuzhengwu/tools

3.编译

make

4.得到

COPYING  cramfsck  cramfsck.c  GNUmakefile  linux  mkcramfs  mkcramfs.c  NOTES  README

cramfsck:用来创建cramfs文件系统

mkcramfs:用来进行cramfs文件系统的释放以及检查

5.将文件系统制作成cramfs格式文件系统(当前路径为文件系统顶层)

/home/liuzhengwu/tools/cramfs-1.1/mkcramfs . rootfs.cramfs

6.设置uboot启动参数

set bootargs 'mem=256M console=ttyXXX,115200 root=/dev/mtdblock2 rootfstype=cramfs mtdparts=hi_sfc:1M(boot),3M(kernel),12M(rootfs)'

7.烧录文件系统

mw.b 82000000 ff 1C00000;tftp 0x82000000 rootfs.cramfs;sf probe 0;sf erase 400000 1C00000;sf write 82000000 400000 1C00000

效果:

da2d6eced4c5b94790d32d9d205bae1b.png

Initramfs:

1.配置内核支持initramfs

make menuconfig

->General setup

[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support

(/home/liuzhengwu/sdk/rootfs_glibc/) Initramfs source file(s)

->Device Drivers

[*] Block devices  --->

  RAM block device support

(16)    Default number of RAM disks

(4096)  Default RAM disk size (kbytes)

2.编译内核+根文件系统

make uImage

3.uboot参数

set bootargs 'mem=256M console=ttyXXX,115200n8 root=/dev/ram0 rw init=/init initrd=0x82000000,3M mtdparts=hi_sfc:1M(boot),6M(kernel)'

4.tftp下载uImage、启动即可

Ramdisk:

jffs2:

1.工具zlib

tar xvzf zlib-1.2.3.tar.gz

2.配置

./confiure --share --prefix=/home/liuzhengwu/tools/zlib/pc_build/

3.编译

make

4.安装

make install

5.工具mtd-utils

tar xjf mtd-utils-05.07.23.tar.bz2

6.修改编译脚本的安装路径

vi Makefile

prefix=/home/liuzhengwu/tools/mtd-utils/pc_build/

6.编译

make

7.安装

make install

8.得到mkfs.jffs2工具

9.制作jffs2格式文件系统

/home/liuzhengwu/tools/mtd-utils/pc_build/mkfs.jffs2 -n -s 2048 -e 128KiB -d rootfs/ -o rootfs.jffs2

-n 不要在每个擦出块上都加上清楚标志

-s 一页大小

-e 一块大小

-d 目录

-o 输出文件

NFS:

服务器:

安装nfs

apt-get install nfs-kernel-server

增加挂载目录

vi /etc/exports

/home/liuzhengwu/rootfs/ *(rw, sync,no_root_quash)

重启nfs

sudo /etc/init.d/nfs_kernel_server restart

客户端:

手动挂载

mount -t nfs -o nolock 192.168.0.197:/home/liuzhengwu/rootfs/ /mnt

启动挂载

uboot 参数 bootargs:

增加

noinitrc root=/dev/nfs nfsroot=serverip:rootdir ip=addrip:gwip:netmask:hostname:ethdevice:autoconf init=/linuxrc console=ttyXXX

noinitrc root=/dev/nfs nfsroot=192.168.0.197:/home/liuzhengwu/rootfs/ ip=192.168.0.254:192.168.0.1:255.255.255.0::eth0:off init=/linuxrc console=ttyXXX

未完待续

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值