If you've previously tried to run Windows chkdsk on an ntfs-3g filesystem containing colons but that was mounted and used under Linux without either the
streams_interface=windows option, the only way to restore NTFS filesystem integrity is to boot a Windows operating system and allow Windows
chkdsk to permanently delete all files containing colons.
Put another way: be very, very careful running Windows
chkdsk on an NTFS filesystem that has been written to using ntfs-3g under Linux. You will lose all files containing colons.
There are two consequences of using ntfs-3g that interact to cause this:
Tuxera adheres to the letter of the NTFS spec, which allows colons in filenames. However, there is virtually no one using filesystems that are exclusively non-Windows-compatible NTFS, and never intended to be used with Windows, so almost everyone actually needs the non-default behavior.
Tuxera's recommended failsafe way to repair a corrupted NTFS filesystem is to boot a Windows operating system, and run
chkdsk. (This will also happen automatically if you boot a Windows operating system and the filesystem is detected as needing repair.)
So if you are interested in long-term stability and safety of your filesystem, you will eventually need to boot a Windows OS and run
chkdsk to repair it. But when Windows
chkdsk runs, it will delete all files with colons in their filenames without any prompt or warning.
Unfortunately, many folks use NTFS as a universal filesystem for portability and backups. Two common files containing filenames in Linux are emails named after their subject line (Re:, Fwd:, etc.) and emails stored using the Maildir format. So if you are creating an ntfs-3g filesystem from scratch for this purpose, make sure that you always mount it using the
windows_names mount option and in
/etc/fstab. When you have to eventually run
chkdsk, all files created on the filesystem should be valid.
If you don't do this, you may not be able to remove or salvage most or all of your Windows-invalid files (those containing colons, etc.). Once you've created invalid files, Windows will consider the filesystem to be corrupt until those files are purged -- and only Windows will be able to repair the filesystem. So repairing or deleting the files from Linux will be impossible.