WARNING: Not enough clusters for a 32 bit FAT!

在emmc上制作fat32分区做启动分区时出现这个警告,导致没法正常启动,

root@am57xx-evm:/boot# fdisk -l /dev/mmcblk1
/dev/mmcblk1p1 *       4096   40959   36864   18M  c W95 FAT32 (LBA)

root@am57xx-evm:/boot# mkfs.vfat -F 32 -n "boot" /dev/mmcblk1p1
mkfs.fat 4.1 (2017-01-24)
mkfs.fat: warning - lowercase labels might not work properly with DOS or Windows
WARNING: Not enough clusters for a 32 bit FAT!

先在网上了解一下簇的概念和扇区的区别:
簇和扇区不是属于一个范畴。簇是系统在硬盘上读写文件时的单位,是一个数据块。而扇区是硬盘划分的最小单位值,就是簇(数据块)占用的地方。
簇的大小大于扇区的大小。硬盘每簇的扇区数与硬盘的总容量大小有关。扇区是存储介质上可由硬件寻址的基本单位,x86系统几乎总是定义512字节的扇区大小;簇是许多文件系统格式使用的可寻址数据块,簇的大小总是扇区大小的整数倍,且不同文件系统对于不同大小的卷(分区)会有不同的默认簇大小,比如FAT32对于8GB以下的分区,默认簇大小为4KB,对于8GB~16GB的分区,默认簇大小为16个扇区(8KB),NTFS对于大于2GB的分区,默认簇大小为8个扇区(4KB)。
打个比方,你(系统)要在仓库(仓库可视为硬盘)里存放一些书(数据)。你先把书分门别类放到一些大纸箱(簇)里,然后放进仓库,纸箱的体积是根据你仓库大小来决定的,而仓库始终划分成单位为0.1m³的小格子(扇区),仓库大了,纸箱就大些,仓库小了,纸箱就小些。

制作fat32文件系统有个最小的簇的个数要求:
这里扇区大小为512bytes,
经测试当簇大小等于1个扇区时,分区最少需要40MB,当簇大小设为2个扇区时,分区至少需要80MB,
40M / 512 = 81920, 80M / 512 / 2 = 81920,计算出制作fat32的分区大小至少需要有81920个簇

root@am57xx-evm:/boot# fdisk -l /dev/mmcblk1
/dev/mmcblk1p1 *     2048 165887  81920  40M  c W95 FAT32 (LBA)

root@am57xx-evm:/boot# mkfs.vfat -s1 -F 32 -n "boot" /dev/mmcblk1p1
mkfs.fat 4.1 (2017-01-24)
root@am57xx-evm:/boot#

root@am57xx-evm:/boot# mkfs.vfat -s2 -F 32 -n "boot" /dev/mmcblk1p1
mkfs.fat 4.1 (2017-01-24)
WARNING: Not enough clusters for a 32 bit FAT!
root@am57xx-evm:/boot#
.
.
.
.
root@am57xx-evm:/boot# fdisk -l /dev/mmcblk1
/dev/mmcblk1p1 *     2048 165887  163840  80M  c W95 FAT32 (LBA)

root@am57xx-evm:/boot# mkfs.vfat -s2 -F 32 -n "boot" /dev/mmcblk1p1
mkfs.fat 4.1 (2017-01-24)
root@am57xx-evm:/boot#

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值