"Не хватает кластеров для 16-битной FAT", но я выше минимального размера. Зачем?
Я пытаюсь сделать файловую систему FAT16 на моем Ubuntu.
Итак, я сначала создаю файл с dd if=/dev/zero of=Fat16.bin bs=1024 count=8192
,
Это создаст 8MB файл, полный нулей.
Затем я форматирую этот файл в файловую систему FAT16, введя следующую команду: mkfs.vfat -f2 -n FAT16 -r 224 -s8 -S512 -F16 Fat16.bin
,
Но это дает мне следующую ошибку.
WARNING: Not enough clusters for a 16 bit FAT!
The filesystem will be misinterpreted as having a 12 bit FAT without mount option "fat=16"
Насколько мне известно, минимальный размер файловой системы FAT16 составляет 4 МБ, поэтому я не понимаю, что здесь происходит.
2 ответа
Я нашел ответ,
из https://staff.washington.edu/dittrich/misc/fatgen103.pdf (см. "Определение типа FAT") число кластеров должно быть между 4085 <=> 65525, чтобы отформатировать действительный раздел FAT16. Таким образом, раздел должен быть достаточно большим для хранения 4085 кластеров + метаданных, таких как таблицы FAT.
Вероятно, это то, что он говорит - Not enough clusters for a 16 bit FAT
, Я предполагаю, что необходимое пространство может быть рассчитано, но попытка, например, 16Mb, не вызывает этого предупреждения:
$ dd if=/dev/zero of=Fat16.bin bs=$((1024*1024)) count=16
16+0 records in
16+0 records out
16777216 bytes (17 MB) copied, 0.0561285 s, 299 MB/s
$ mkfs.vfat -v -f2 -n FAT16 -r224 -F16 Fat16.bin
mkfs.fat 3.0.26 (2014-03-07)
Fat16.bin has 64 heads and 32 sectors per track,
hidden sectors 0x0000;
logical sector size is 512,
using 0xf8 media descriptor, with 32768 sectors;
drive number 0x80;
filesystem has 2 16-bit FATs and 4 sectors per cluster.
FAT size is 32 sectors, and provides 8171 clusters.
There is 1 reserved sector.
Root directory contains 256 slots and uses 16 sectors.
Volume ID is 30bd4358, volume label FAT16 .