加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

嵌入式系统增加文件系统分区

发布时间:2020-12-14 00:47:10 所属栏目:Linux 来源:网络整理
导读:最近工作中需要在arm架构的单板上增加一个fat格式的文件系统分区用于windows访问,就回顾了一下文件系统和linux分区。简单写几句: 单板的存储介质是eMMC,linux系统,采用交叉编译。增加分区就直接在fastboot传给kernel的参数中增加一个分区就好了,没什么

最近工作中需要在arm架构的单板上增加一个fat格式的文件系统分区用于windows访问,就回顾了一下文件系统和linux分区。简单写几句:

单板的存储介质是eMMC,linux系统,采用交叉编译。增加分区就直接在fastboot传给kernel的参数中增加一个分区就好了,没什么要说的。

这里主要说一下增加文件系统的两种方式:

?

方法一

1.在宿主机上准备好,再烧录到对应的分区上:

  dd if=/dev/zero of=data.fat bs=1024 count=1024

  这里如果count太小了的话,执行mkfs.fat的时候会出现错误提醒:Not enough space to build proposed filesystem while setting up superblock

  这是因为文件系统的头部会在分区开始出写下MBR,记录文件系统的信息,如果block太少了 ,写不下的话会报错,具体的有机会写一篇文件系统的博客。

  mkfs.fat data.fat -F 32

  这里的-F 32是指定fat32文件系统,你也可以根据自己的需要选择fat12,fat16,fat32中的任意一个,当然也可以不指定,用默认的就好了。

  这时file data.fat就可以看到文件系统已经格式化好了 :data.vfat: DOS/MBR boot sector,code offset 0x3c+2,OEM-ID "mkfs.fat",sectors/cluster 4,root entries 512,sectors 2048 (volumes <=32 MB),Media descriptor 0xf8,sectors/FAT 2,sectors/track 32,heads 64,serial number 0xbfc1387d,unlabeled,FAT (12 bit)

  接着将data.fat烧录到对应的分区即可

?

方法二

2.在目标机上的启动执行脚本上添加:

  在/init.d/rcS中添加如下shell脚本 :

?

mount /dev/mmcblkmpn /
if [ $? -ne 0 ]; then
    mkfs.fat /dev/mmcblkmpn -F 32
    mount /dev/mmcblkmpn /
fi

  其中mmcblkmpn为对应的文件系统分区

推荐使用方法一,由于方法二在挂载文件系统失败后可能会有丢失数据的风险

?

以上所有。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读