pg电子官方

 
 注册
热搜:
查看: 17839|回复: 8

关于exfat格式化的问题 -pg电子官方

发表于 2021-1-1 21:55:30 | |
发现当前版本的diskgenius格式化exfat文件系统时,根据卷容量所对应可用的最小簇大小计算地不正确。
首先exfat和ntfs都是使用四个字节即32位簇项来描述总簇数,在使用同等簇大小下这两个文件系统能支持的卷容量都是一样大的。
也就是说,单个exfat卷最多可以有2^32个簇,即使使用最小的512b簇最大也能支持到512b×2^32b=2t的分区大小,使用4k簇的话最大则能支持到4096b×2^32b=16t的分区大小。
如图在diskgenius中将一个16t容量的分区格式化为exfat时最小却只能选择到16k簇大小,但如果用windows自带format命令行格式化为exfat时最小就可以使用4k簇大小。
截图20201230000812.jpg
截图20201230001218.jpg
不过目前只有exfat存在这个问题,而ntfs则没有问题可以选择4k簇大小格式化。
截图20201230000858.jpg
簇大小如果太大了存小文件会很浪费空间,希望官方在下一版本能够修复这个bug。
 楼主| 发表于 2021-1-1 21:57:46 |
顺便再提交一个bug,如图所示对于采用原生4k逻辑扇区(4kn)的磁盘,不论卷容量有多小在系统里格式化最小也只能用4k簇,而用diskgenius格式化最小却只能选择到8k簇,这个问题从5.2版本开始就有了,请修复这个bug。
截图20201230003246.jpg
发表于 2021-1-8 17:34:25 |

顺便再提交一个bug,如图所示对于采用原生4k逻辑扇区(4kn)的磁盘,不论卷容量有多小在系统里格式化最小也只 ...

谢谢!这个问题可以纠正。
发表于 2021-1-8 17:39:42 |
本帖最后由 dgen 于 2021-1-8 17:41 编辑

第一个问题,虽然用windows命令行格式化时可以指定4k的簇大小,但是chkdsk命令检查分区会报错的。所以为了兼容考虑,软件做了限制。
4096.png
 楼主| 发表于 2021-1-10 17:18:58 |

第一个问题,虽然用windows命令行格式化时可以指定4k的簇大小,但是chkdsk命令检查分区会报错的。所以为了 ...

那是因为系统的格式化程序有bug,就算在系统里用16k簇格式化出来的exfat分区也一样会chkdsk报错。
截图20210110163701.jpg
而用diskgenius同样以16k簇格式化再chkdsk就一点问题都没有,所以你就没发现完全相同的盘分别用format和diskgenius格式化出来的分区元数据也是有差异的吗?
截图20210110163758.jpg
截图20210110163847.jpg
那么在分区格式化上谁家的做的最好岂不是一目了然?这可是自家的招牌一定要抓住机会好好宣传啊。
发表于 2021-1-11 16:57:15 |
本帖最后由 dgen 于 2021-1-11 16:58 编辑

1、楼主很细心!format命令格式化大容量的exfat分区,指定最小的簇大小,确实会出问题。
2、另外一点,无论是用format命令还是diskgenius格式化,只要最终的总的簇数目大于2的30次方(位图大于128mb),chkdsk就会报错。这可能是windows系统的限制,或者bug。
3、diskgenius可以考虑支持更小的簇大小,但是这样格式化之后chkdsk有可能会报错,虽然这不是diskgenius的问题。
 楼主| 发表于 2021-1-12 03:28:06 |

1、楼主很细心!format命令格式化大容量的exfat分区,指定最小的簇大小,确实会出问题。
2、另外一点,无 ...

是chkdsk的bug,我用fsck检查总簇数>2^30的exfat分区都可以正常进行没有问题。
截图20210112000000.jpg
这个加上吧,反正用fsck.exfat照样能修,毕竟又不是diskgenius的锅没必要做限制,这锅要背也得让微软去背。
不过提到分区检查,我倒是建议diskgenius把linux里更强大的fsck功能也集成进来,这样不光能支持对fat12/16/32、exfat、ntfs文件系统的查错与修复,还能对chkdsk不支持的ext2/3/4文件系统查错与修复这不一举两得?
发表于 2021-1-14 10:41:50 |

是chkdsk的bug,我用fsck检查总簇数>2^30的exfat分区都可以正常进行没有问题。

这个加上吧,反正用fs ...

簇大小的问题关注后续版本吧。
错误检查与修复功能会考虑,但估计比较有难度。
感谢反馈。
 楼主| 发表于 2021-1-26 22:13:09 |

簇大小的问题关注后续版本吧。
错误检查与修复功能会考虑,但估计比较有难度。
感谢反馈。

已测试今天刚更新的diskgenius v5.4.1.1178已经可以用大于2^30个簇数目格式化exfat分区了没有问题。
截图20210126213450.jpg
不过对于扩容exfat分区大小你们是不是忘记做同步调整了?
截图20210126214340.jpg
另外fsck功能的话在github里有很多现成的开源项目实现,代码移植难度应该不会太高。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋||archiver|pg电子官方-pg电子试玩 ( )

gmt 8, 2023-10-20 20:23 , processed in 0.078845 second(s), 19 queries .

powered by x3.4

pg电子官方 copyright © 2001-2021, tencent cloud.

返回列表
网站地图