1-byte file takes up 2 MB (yes, megabytes) on 6 TB exFAT Veracrypt volume. Why?
Screenshot:
File properties of file that takes up 2MB of disk space for 1 byte of data:
The drive is a 6TB single partition, mounted via Veracrypt and formatted as exFAT. The sector size on my 2TB volume, formatted and mounted the same way, is 512KB-- also large, but not quite as ridiculous (shouldn't it be 512 bytes?).
Why in the world is the sector size a whopping 2MB here? Since it's an advanced format drive, shouldn't it be 4KB?
The drives were formatted using Veracrypt; there was no option to specify sector size that I recall there is a cluster size option, but it maxes out at 64KB for exFAT. The 6TB drives and all their data are about to be moved to a RAIDZ2 ZFS array, so I don't necessarily need to fix this directly, but I really want to know how/why this happened.
Solution 1:
Well I can confirm that exFAT on a 6 TB volume defaults to 2 MiB clusters on Windows 10. If I explicitly select 64 KiB, it uses that though. 64 KiB is also the maximum size Disk Management has in its dropdown list.
Incidentally, Microsoft has an article on default cluster sizes for various filesystems and Windows version. Unfortunately, it does not include the exFAT/Windows 10 combination, for whatever reason.
Experimentally, I determined the following defaults:
Volume size Cluster size
500 GiB 128 KiB
1000 GiB 256 KiB
1500 GiB 512 KiB
2000 GiB 512 KiB
3000 GiB 1 MiB
4000 GiB 1 MiB
5000 GiB 2 MiB
8000 GiB 2 MiB
10000 GiB 4 MiB
20000 GiB 8 MiB
Those are just samples, I didn’t bother checking the actual ranges. The pattern is quite clear though. It switches at powers of two, ie. 512 GiB, 1 TiB, 2 TiB, 4, TiB, 8 TiB, 16 TiB, ...
It’s basically
(volume size “step”) / (221)
Or, more colloquially: Divide by two, go two SI suffixes lower. 16 TiB → 8 TiB → 8 MiB.