Why you should use NTFS

In the past two weeks, I’ve received panicked phone calls from two friends whose computers suddenly stopped booting. In both cases, the most likely culprit was a hardware failure, but it’s also possible that the damage was caused by a virus or by corrupted data on the hard disk.

One friend had a current backup, and the other didn’t. One is taking this opportunity to junk his old PC and restore his backed-up data onto a shiny new one. The other is about to spend hours or days trying to rebuild her system and recover data from an old, crashed hard drive – no fun.

The one obvious lesson in all this, of course, is back up your data. But a second lesson almost got lost in the noise. Both of these crashes were at least partially caused by disks formatted with the FAT32 file system. Converting their boot disk to NTFS might have prevented one or both of these crashes. NTFS uses a journaling system to keep track of all disk activity and automatically recover from errors. It is far more robust than FAT32, which runs ScanDisk if you so much as look at it sideways. It’s also more secure, but that’s a secondary benefit for most people running Windows XP at home.

At any rate, I bring this up because I can’t imagine why any sane person would continue to use FAT32 with Windows XP these days. (If you dual-boot, you’ll need to use FAT32 for Windows 9X, but not for XP.) So here’s a little information for you.

How do you determine which file system a disk is using? Simple. Right-click the drive icon and choose Properties. The General tab will tell you the file system in use. If it’s FAT32, you need to use the Convert command. Rather than give you a lengthy tutorial, I’ll point instead to Alex Nichol’s excellent Converting FAT32 to NTFS.

Converting a hard drive is very fast. Minutes, not hours. It’s also very safe, although as always you shouldn’t do anything like this unless you have a current backup. (See lesson #1 above!)

And I want to correct a bit of misinformation that is out there in Microsoft’s Help files and in the Knowledge Base. In Windows 2000, the Convert utility did not assign permissions correctly when used on a boot drive. That was a pretty serious flaw, and it was fixed in Windows XP, as we noted in Windows XP Inside Out:

With Windows 2000, converting a FAT32 system volume to NTFS entailed several trade-offs, most notably a reduced level of security, because the Convert utility in Windows 2000 does not adjust default security attributes as the Windows Setup program does. The Windows XP version of the Convert utility (Convert.exe) fixes this deficiency. When you convert a FAT or FAT32 drive under Windows XP, the Convert utility automatically applies the correct default permissions to all system folders

Unfortunately, the online documentation doesn’t reflect this. See the disclaimer in the original KB article written for Windows 2000, 237399 – The Default NTFS Permissions Are Not Applied to a Converted Boot Partition, which says “on converted boot volumes, NTFS permissions are not applied after the volume is converted…”

This same language is used in the online documentation for the Windows XP Convert command and in
a KB article written specifically for Windows XP that describes the NTFS conversion process: 314875 – The Free Space That Is Required to Convert FAT to NTFS.

In all these cases, the wording is flat-out wrong. I just ran some tests, upgrading from Windows 98 to Windows XP and then converting the FAT32 boot volume to NTFS. NTFS permissions were applied using the settings found in C:\Windows\Security\Templates\Setup_scurity.inf, just as they are supposed to be. In addition, using the Network Setup Wizard and making files in the your profile private will tighten security permissions just as they would be if you were to do a clean install.

Bottom line: If you’re running FAT32, convert to NTFS. It’s the smart thing to do.