Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

A few weeks ago I was reading through the Wikipedia entry on NTFS, and noticed that it was possible to use Symbolic Links amongst a number of other features that aren't readily apparent in Windows Explorer.

What other useful features exist that may not be documented on Wikipedia, and how does one get access to these features? Is there a 3rd party program, registry settings, hidden configuration windows, cli, etc. used to manipulate/create/use these features?

Update: Turning this into a community wiki.

share
    
I believe "hidden-features" is the canonical tag (at least on StackOverflow). –  mmyers May 2 '09 at 0:47
    
Ahh, good point. I have updated accordingly. –  Jordan S. Jones May 2 '09 at 3:22
comments disabled on deleted / locked posts

locked by sysadmin1138 Aug 9 '12 at 19:33

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

7 Answers

up vote 12 down vote accepted

Microsoft distributes at least two Sysinternals tools for this.

  1. Junction lets you manipulate junction points (symbolic links).
  2. Streams will show you alternate data streams. That page also shows you the :stream syntax to manipulate them from command-line.
share
    
linkd can be used for junction points and is distributed with the windows 2000 resource kit... not that it's much use if you can download junction though, just thought it was an interesting side-note :) –  Oskar Duveborn May 1 '09 at 19:48
    
Sin Windows Vista, (with Windows 7, 2008 and 2008 R2) you can create Symbolic links with a native tool from the OS. Use the command mklink –  Ricardo Polo Aug 26 '11 at 21:48
add comment

Windows Internals by Mark Russinovich has a chapter on NTFS and what it does and doesn't support. In the fifth Edition Chapter 11 covers all the File Systems Windows NT supports, and goes into details on the internals of NTFS.

share
add comment

In 1997 O'Reilly published Windows NT File System Internals. Its old, so a lot of the information might be out of date. However, it should contain a lot of information.

share
add comment

The Windows fsutil command exposes most of NTFS's obscure features, if I'm not mistaken. Start -> Run -> cmd.exe -> fsutil /? for more info.

share
add comment

NTFS supports “symbolic links”:

  • for directories (MS term: “junctions”) in all versions of NTFS
  • for files (using CreateSymbolicLink since Vista and Server 2008)

It also supports hard links for files, through the CreateHardLink function since Windows 2000.

Check this page: Hard Links and Junctions.

I've used CreateHardLink in Python scripts (through Python's ctypes module). I've even have a “deduper” script that finds duplicate files and, under some conditions, replaces them with hard links, that frees a lot of space in a typical Windows installation.

share
add comment

NTFS supports file names that the Win32 API doesn't. For example the POSIX subsystem allows the following names (from the Windows Internals book):

"TrailingDots..." 
"SameNameDifferentCase"
"samenamedifferentcase"
"TrailingSpaces    "

Apparently you can still see them all by using 'dir /x'

Its also possible to create files with really long file paths (up to 32,000 characters). You can still see them in explorer but you can't delete them easily.

share
add comment

Alternate Data Streams - you can use the LADS tool to enumerate them.

You can create them for example by doing:

notepad test.txt:adsname1
notepad test.txt:adsname2
notepad test.txt

All 3 will be shown in explorer as 1 file but they are all different streams attached to that same filename.

share
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.