Введение
Широко используемый формат файловой системы Linux. В Linux имеется несколько драйверов файловой системы для формата файловой системы FAT (Таблицы распределения файлов). Они обычно известны по именам, используемым в команде mount для вызова конкретных драйверов в ядре: , , и .
Linux has several filesystem drivers for the File Allocation Table (FAT) filesystem format. These are commonly known by the names used in the mount command to invoke particular drivers in the kernel: , , and .
История и поддержка
Большинство основных дистрибутивов Linux, включая RedHat, SuSE и Debian, не поддерживают установку Linux на том FAT. Однако, некоторые дистрибутивы это делают. К ним относятся такие дистрибутивы, как Phat Linux, который устанавливается в C:\PHAT на DOS путем распаковки ZIP-файла и загружается запуском COM-скрипта с именем LINUX.BAT. UVFAT, расширение UMSDOS, использующее структуры данных Windows для длинных имен файлов вместо собственных, было прекращено до выпуска. Они должны работать с ядрами 2.4.x. Более ранние дистрибутивы Linux, использовавшие UMSDOS, – это MuLinux, Monkey Linux и Winlinux 2000.
Сравнение характеристик
Все драйверы файловых систем Linux поддерживают все три типа FAT, а именно FAT12, FAT16 и FAT32. Различия между ними заключаются в поддержке длинных имен файлов, выходящих за пределы структуры имен файлов 8.3 оригинального формата файловой системы FAT, а также в предоставлении Unix-подобной семантики файлов, отсутствующей в формате файловой системы FAT, например, прав доступа к файлам.
- Да.
Драйвер файловой системы не предоставляет дополнительных семантик Unix-файлов и не поддерживает длинные имена файлов. Если файловая система диска FAT смонтирована с использованием этого драйвера, будут видны только имена файлов в формате 8.3, длинные имена файлов будут недоступны, и никакие структуры данных длинных имен файлов любого типа на дисковом томе не будут поддерживаться. Драйвер файловой системы обеспечивает поддержку длинных имен файлов, используя те же структуры данных на диске, которые Microsoft Windows использует для поддержки длинных имен файлов VFAT на томах FAT, но не поддерживает никаких дополнительных семантик Unix-файлов. Драйвер файловой системы обеспечивает поддержку длинных имен файлов и дополнительных семантик Unix-файлов. Однако он делает это, используя структуры данных на диске, которые не распознаются никакими драйверами файловых систем для операционных систем, отличных от Linux.
- Да.
Ключевое преимущество из трёх заключается в том, что он обеспечивает полную семантику Unix-файлов. Поэтому его можно использовать в ситуациях, когда необходимо установить Linux и запускать его с тома FAT, для чего требуется поддержка такой семантики. Однако Linux, установленный и работающий с такого тома, работает медленнее, чем Linux, установленный и работающий с тома, отформатированного, например, в формате файловой системы ext2. Более того, если специальная утилита не запускается регулярно при каждом переключении между Windows и Linux, некоторые изменения, внесённые Windows в файлы и каталоги на диске, приведут к появлению сообщений об ошибках, связанных с недоступными файлами в Linux.
- Да.
, хотя и не обладает полной семантикой файловой системы Unix и не позволяет установить и запустить Linux с дискового тома FAT, не имеет вышеупомянутых недостатков при простом обмене данными на дисковом томе FAT между Linux и другими операционными системами, такими как Windows. Его структуры данных идентичны тем, что Windows использует для длинных имен файлов VFAT, и он не требует запуска утилиты синхронизации для предотвращения расхождения структур данных Windows и Linux. По этой причине он является наиболее подходящим драйвером файловой системы FAT для Linux в большинстве случаев. Установка Linux в такую директорию обычно заключается просто в распаковке файлов из архива в эту директорию и её поддиректории. Такая установка также, как правило, требует использования файла подкачки вместо раздела подкачки для Linux, однако это связано с нежеланием переразбивать жесткий диск и не относится непосредственно к драйверу файловой системы. В качестве альтернативы можно использовать один из драйверов файловой системы FUSE: FatFuse, FuseFat или .
Файловая система POSIX
Современный эквивалент UMSDOS — это POSIX Overlay Filesystem. Он работает через FUSE.