Welcome to the ITFreeTraining training video on Windows File Systems. In this video I will
look at the 4 different file systems supported in Windows. These are ReFS, NTFS, Extended
FAT and FAT32. This video will look at the features available in each one and the limitations
of each. By the end of this video you will know which file system to choose depending
on what you require.
The Resilient File System or ReFS is a new generation of file system and the newest file
system added to Windows. This file system aims to improve data integrity as well as
reduce data corruption and downtime. Since it is a new file system it requires Windows
8 or Windows Server 2012.
ReFS was designed to work with Windows Storage Spaces and thus Windows Storage Spaces can
take advantage of the new features ReFS has to offer.
If you are familiar with NTFS, you may remember having to fix some disk problems by taking
the volume offline. With ReFS, there is no offline fixing option as all problems are
fixed while the volume is online - reducing downtime. In fact, there is no Check Disk
software for ReFS - unlike what is available with other file systems. So in summary, ReFS
is designed to be a highly available file system with little down time and with little
chance of data corruption.
If you have worked in IT for a while, you have probably heard of features like these
being added to the ReFS predecessor NTFS - for example, the self-healing feature. The point
to remember is that although NTFS has been improved over the years, it is still a 20
year old file system. In contrast, ReFS is a modern file system built from the ground
up using a modern approach. For this reason, it is much better at supporting repair features
than NTFS is able to.
Before you start using ReFS there are a number of features that it does not support. Firstly
it does not support disk quotas. According to one of the Microsoft Blogs, Disk Quotas
can be managed outside the file system rather than via a feature in the file system. It
is possible that Disk Quotas may be added to the role “File Server Resource Manager”
later on, but this has not happened in Windows Server 2012 R2 and there is no guarantee that
Microsoft will add this functionality.
The next missing features is file and folder compressions and encryption. If you use either
of these features you will need to stay with NTFS.
The next missing feature is called hard links. Hard links allows a feature called Data deduplication.
Data deduplication is when you have two or more identical files on the same drive using
the same space. This increases the amount of data that can be stored as identical files
are not being duplicated multiple times. The OS drive heavily uses hard links, for example
in the side by side store. This may be why ReFS cannot be used for booting the OS since
the OS heavily uses this feature.
On the technical side, ReFS is missing the features “named streams” and “object
ID’s". Named streams were added to Windows to make it more compatible with other file
systems; however, only a small amount of software on Windows does make use of them.
Object ID’s allow a file to be given a unique value. When the file is used, Windows can
use this unique number to work out where the file was from originally. Indexing software
may use this functionality.
Some additional features are missing from ReFS that are more legacy features. First,
extended attributes are not supported. The basic attributes of Read-Only, Hidden and
Archive are still supported; however, the attribute system is not. Software can add
additional attributes using NTFS; however, they are generally not used that much in Windows
as compared with some alternative operating systems. If you are using software that requires
extended attributes you will need to use NTFS.
ReFS no longer has support for 8 dot 3 filenames from the MS-DOS days. Long filenames were
first introduced in Windows 95 to offer an alternative to short filenames. If you have
software that requires short file names, that software is extremely old. If this is the
case, I would consider running the software in a virtual machine or upgrading the software.
The last point that I want to raise is software support. ReFS uses a lot of the same API’s
as NTFS so most software should work fine, but you should check the software to make
sure it works with ReFS. For example, SQL server has limited ReFS support. I refer to
it as limited as it will still run; however, some features do not work with ReFS. One such
important feature is a low level SQL Server utility that many administrators use to repair
problems with a SQL Database. If you are planning on running SQL Server, for the moment at least,
I would recommend running NTFS. ReFS was designed to be compatible with the majority of NTFS
features so most software should work with ReFS. However, it is worth checking or testing
the software to ensure that it will work.
Lastly, there is no software available in Windows to convert an NTFS volume to an ReFS
volume or ReFS to NTFS. If you want to change the file system on a volume you will need
to back up the data, reformat the volume and then copy the data back onto the volume.
To have a closer look at ReFS, I will open Windows Explorer and right click on a hard
disk in this system that has not yet been formatted and select the format option.
To format the disk with ReFS it is just a matter of selecting the option ReFS. If you
are using a client operating system like Windows 8.1, this option will not be present. Microsoft
assumes that if you are using ReFS it will be on a server operating system. Windows 8
and above will be able to read ReFS volumes but you will not be able to create them. In
order to format a drive with ReFS on Windows 8 and above you will need to enable the option
in the operating system, which can be done by adding a key to the registry. See the description
of this video on how to perform this.
Once the format is complete, I will open the newly created volume and create a file on
the volume. Once the file is created, I will right click the file and open the properties
for the file.
Notice in the properties for the file the 3 standard attributes, Read-Only, Hidden and
Archive. To compare this with NTFS, I will open the properties for a file on the c drive.
Notice on the standard file there are the attributes Read-only and Hidden. If I press
the advanced button, there are additional attributes available. The tick box “File
is ready for archiving” is effectively the archive option.
The next tickbox down, “Allow this file to have contents indexed in addition to file
properties”. If this option is ticked, the indexing software on Windows will read the
contents of the file and index it based on the key words in the file. This allows searches
to be returned based on the contents of the file not just the filename.
At the bottom, notice the options for compression and encryption, both of these are not available
in ReFS. You can see that ReFS looks much the same as NTFS from a user’s prospective
- with some missing features. There are also some improved scalability options available
in ReFS, but I will go through them later in the video when I compare all the file systems.
The next file system that I will look at is the New Technology File System, otherwise
known as NTFS. This was first introduced in 1993 with Windows NT. Since then, new versions
have been released with the latest version being 3.1 released in 2001. Additional features
like self-healing have been added in Windows Vista that did not require a new version of
the file system and thus NTFS has been improved and expanded since it was first implemented.
NTFS introduces the following features that were not present in a Windows file system
before this. First it is a transaction log file system. This means before a change is
made, it is first stored in a log file. Once the change is made the log is updated to reflect
the change was successful. This means that if there was a system crash while the volume
is being updated, Windows can detect that the last change was not successful and reverse
the changes. Transaction logs are essential to ensure that there is no data corruption
during drive crashes or power outages.
The next important feature that is added to NTFS is security. Before NTFS, security was
not available in Windows. NTFS allows security to be applied to the file and folder level
and supports users and groups. Also, NTFS supports compression and encryption. Since
ReFS currently does not support compression or encryption, effectively NTFS is the only
operating system supported by Windows that supports these features.
NTFS is the default file system used in Windows and unless you have good reason not to, you
should use this file system for your operating system.
The next file system that I will look at is FAT. FAT or File Allocation Table has been
around since the 70’s. There are a number of different implementations of FAT, but in
particular, Windows uses 2 different types. The first one is FAT32.
FAT32 is a simple file system and thus does not have modern features like security, compression
or encryption. It also does not have modern features like self-healing and transaction
logging like NTFS and ReFS have. But the advantage of not having these features is that there
is less overhead. This means the FAT file system performance can be a little better
than NTFS or ReFS. However, this is done at the expense of the resilience of the file
system and can increase the chance of data corruption.
The advantage of FAT32 is that it is compatible with everything. A hard drive formatted with
FAT32 can be read in just about any operating system including alternative operating systems
like Linux. For this reason, it is often used with removable media. Nowadays, with household
devices like TV’s supporting USB removable media, you want a file system on your removable
media that anything can read, and FAT32 is the best candidate for this.
The last file system that I will look at is extended FAT. This file system is a Microsoft
file system. If the truth be known, Microsoft developed the FAT32 file system by expanding
on older standards, but the difference is that the extended FAT file system is a proprietary
and patented file system. Essentially this means that if the file system is to be used
in devices like a cameras or TV’s, the company must pay Microsoft a fee. This makes it difficult
to implement in Open Source operating systems like Linux. In Windows, however, it is supported
in Windows XP and above, although a Windows update may need to be applied first in order
to read the file system.
The file system itself has been optimized for flash drives and thus not developed primarily
to replace file systems like NTFS for hard disks. Extended FAT, even though it has the
name FAT, is more of a redesign of FAT rather than adding features to an existing FAT file
system like FAT32 was. For this reason, it offers better performance on larger hards
disks than FAT32 does. If you are worried about compatibility it is best to use FAT32
even though support for extended FAT has improved.
When considering which file system to use, it is best to consider the limits of each
file system as shown here. FAT32 offers the most compatibility with other operating systems
including alternative operating systems. This makes it a good choice for removable media.
The biggest limitation is that the max volume size is 2 Terabytes. With storage only getting
larger, this limits the future of the file system. Also notice the biggest file size
is 4 Gigabytes. For general users and sharing files on removable media, this should be enough;
however, if you start working with very large high definition video files or very large
databases, you may reach this limit and need a different file system.
All the rest of the file systems have very large single file sizes and large maximum
volume sizes. With the smallest being 127 Petabytes followed by 16 Exabyte’s. If you
consider the following, after a Terabyte is Petabyte than Exabyte followed by a Zettabyte.
So the smallest value would be over 100,000 Terrabytes. So you can image this is quite
large by today’s standards.
So essentially ReFS, NTFS and extended FAT have plenty of room to grow. For the filenames,
all 4 file systems support 255 character filenames. One point to note that when ReFS was first
developed, the filename limit was 32kilobytes per file. When Windows was released to manufacturing,
this was dropped to 255 characters. This was most likely to improve compatibility with
NTFS and also the Windows file system API. So in some references you may see this value
listed as 32kilobytes.
In most cases, the decision of which file system to use will come down to how much compatibility
you want with other operating systems and which features you want. The most important
being security features, compression and encryption, which will ultimately determine the choice
of which file system you want.
If I now open Windows explorer. I have placed a USB key in the computer. If I click the
USB key and select the format option, it will allow me to reformat the USB Key. Notice
that the default option is FAT32. When you perform a format, Windows will automatically
choose the file system that it thinks is the most appropriate. FAT32 was chosen due to
its compatibility with other systems and it works best with small volumes.
Notice that when I select the pull down, I can format the USB key with any file system
that I want. It is just a matter of selecting it. If the file system is not available it
will not be displayed. For example, on Windows 8 computers ReFS must first be enabled before
it will appear in the pull down menu. You can see how easy it is to perform a format
of a drive. The tough decision is which file system to use, but I hope this video has helped
you make the appropriate decision.
Thanks for watching this free video from ITFreeTraining. If you like the video please feel free to
give us a like on YouTube as this helps us a lot. All our videos are free. Until the
next free video from us, thanks for watching and see you next time.