In This Article
What is VFAT (Virtual File Allocation Table)?
Technically, VFAT refers to the upgraded extension to the FAT16 and FAT32 file systems. It is designed to add support, often more than 8 characters long, and is usually found on the host computer system, mounted as a driver on it.
- The Virtual File Allocation Table file system format helps with creating, managing, and storing files with long names.
- It is found on the host computer and works as a driver.
- Mounting the VFAT format on a computer is quite easy, but it needs to be done based on a few precise parameters.
Understanding VFAT (Virtual File Allocation Table)
A VFAT is a specific type of file system format that is typically an extension and upgrade of the FAT file system.
Found as a driver in the host computer system, VFAT, after installation, operates in a protected mode with the VCACHE cache, typically in 32-bits.
VFAT, as an extension of the FAT code included with Microsoft Windows 95 and all future versions of Windows, permits file and directory names of length equal to 255 characters, which include:
- The spaces
- The multiple periods
- The commas
- Extended characters
The primary objective of VFAT is to support long file names and make the computer systems more user-friendly. The VFAT format typically works by creating discrete entries in the directory to create a long file name.
- It does not restrict the naming of the files to 8 characters only but is extended up to 255 characters.
- This format is also supported by other operating systems since it is installed as a driver extension in all of them.
The VFAT filesystem format is usually used on the following:
- The older Windows systems
- Flash modules
- Portable Universal Serial Bus (USB) drives
Each supported by the VFAT kernel mode, it comes in three different types of file systems formats, such as:
When you install the VFAT filesystem format on your computer system, you should ensure that it is not limited. Therefore, you should follow a few specific parameters and command options such as:
- showexec –
- debug –
- Flush –
- rodir –
- dos1xfloppy <bool>: 0,1,yes,no,true,false
While formatting a large VFAT filesystem, add the alternative -F 32 to create the file system in 32 bits, provided the partition size allows it.
Remember, if the partition is oversized, the formatting process may be terminated sometimes.
What is the Maximum File Size of VFAT?
It is different and varies according to the sector size and the operating system. Ideally, on a Windows machine, the size of the file cannot be more than 2 gigabytes, especially on a 32-bit architecture. It is the same as Linux.
However, the structure and size of the sectors may create a lot of confusion.
This is because the file size limit also changed and became more varied as the sizes of the sectors became larger over time. For example:
- The file size limit for a 512-byte sector size is 2 TB.
- The file size limit for a 4K sector size is 16 TB.
- FAT16 will only support a file size of up to 2 GB.
- FAT32 will support a file size of up to 2 TB.
As for Linux, formerly, the size limit of files was 2 GB, and the copying process would stop at this limit.
However, based on the structure of the kernel and the VFAT filesystem drivers, it should be 4 GB since the size of the file is represented by 4 bytes, or a 32-bit integer.
If you want to create a backup for bigger files, you will have to follow a different process such as:
- Exclude it from rsync.
- Split the file into smaller parts of up to 2 GB.
This can be done by using the following command:
> cd /myvfat
> split -d -b 2000m /myext3/cryptfile cryptfile_backup
cryptfile_backup00 cryptfile_backup01 cryptfile_backup02
when you want to reassemble the split file into its original size, you should use the following command:
> cat cryptfile_backup00 cryptfile_backup01 cryptfile_backup02
> copy /b cryptfile_backup00 + cryptfile_backup01 + cryptfile_backup02 cryptfile
Can Linux Access and Read VFAT?
Yes, Linux can access as well as read VFAT. It will normally use the usual partitioning scheme of MS-DOS, which will help it to share the disk drive with other operating systems.
Typically, the Linux operating system comes with a load of kernel modules for almost all versions of the Microsoft File Allocation Table and Virtual File Allocation Table file systems. This includes Windows Me and Windows 2000.
Ideally, to use the VFAT file system and format it from Linux, you will need to use the command: mount -t vfat /dev/fd0 /mnt. It does not need any specific partition formatter for that because mkdosfs will do just fine.
What is the Default VFAT?
Usually, the default number of File Allocation Tables in a filesystem is 2, and if there is nothing mentioned, then the mkfs.fat will choose between 12, 16 and 32 bits by default, depending on which is most appropriate for the particular size of the file system.
Can Windows Read VFAT?
Yes, Windows can read VFAT. Ideally, just like the old Windows FAT32 file system, it is designed to be read and written by all types of operating systems.
The Virtual File Allocation Table format is quite a useful upgrade to the regular FAT filesystem formats since it allows using longer names for the files stored on a hard disk.
This allows easy management and storing of the files on the disk. This format is specially made to allow reading the files in different operating systems.