NTFS Volume Mount Points in Windows 2000
Microsoft Windows 2000 introduced NTFS volume mount points, a mechanism that allows administrators to attach a storage volume directly to an empty directory on an existing NTFS volume rather than assigning it a traditional drive letter. This article explains the technical foundation of volume mount points in Windows 2000, how they utilize NTFS reparse points to redirect file system requests, the operational benefits of the feature, and the methods used to create and manage them.
The Underlying Technology: NTFS Reparse Points
Windows 2000 achieved mount point functionality by introducing NTFS version 3.0, which included support for reparse points. A reparse point is a collection of user-defined data stored within an NTFS directory or file, along with a 32-bit tag identifying the type of data.
When a volume is mounted to a directory:
- The host directory is converted into a reparse point stamped with
the tag
IO_REPARSE_TAG_MOUNT_POINT. - The reparse data block stores the internal device name and the
unique Global Unique Identifier (GUID) of the target volume (for
example,
\??\Volume{GUID}\). - When the operating system's I/O Manager or an application accesses the directory path, the NTFS driver detects the reparse tag.
- NTFS returns a status code (
STATUS_REPARSE) back to the I/O Manager along with the target volume path. - The I/O Manager redirects the file system operation to the target volume seamlessly, without requiring changes to user applications.
Requirements and Behavior
To use volume mount points in Windows 2000, specific file system criteria must be met:
- Host Directory: The folder serving as the mount point must reside on an NTFS volume and must be completely empty prior to mounting. Once mounted, the directory acts as the root of the target volume.
- Target Volume: The target volume can be formatted with NTFS, FAT16, or FAT32. However, the volume hosting the mount point folder must be NTFS.
- Inheritance and Permissions: File permissions and security descriptors inside the mounted directory reflect the Access Control Lists (ACLs) of the target volume, not the parent volume hosting the mount point folder.
Key Benefits
Prior to Windows 2000, Windows systems were constrained by the 26-letter English alphabet (A through Z) for disk assignments, with several letters traditionally reserved for floppy drives and system volumes. Volume mount points resolved this limitation by:
- Bypassing Drive Letter Limits: Storage arrays, partitions, and removable drives could be added to the operating system indefinitely without consuming a drive letter.
- Transparent Storage Expansion: Administrators could
expand storage capacity by adding a new physical disk and mounting it
into a specific path (e.g.,
C:\Database\Logs) without altering application configurations or folder structures. - Simplified Administration: Large enterprise servers could group multiple physical disks and partitions into a unified directory tree.
Configuration and Management
Windows 2000 provided two primary methods to configure and maintain volume mount points:
Disk Management (GUI)
- Open the Computer Management console (
compmgmt.msc) and navigate to Disk Management. - Right-click the partition or volume to be mounted and select Change Drive Letter and Path.
- Click Add, select Mount in this NTFS folder, and specify or create an empty directory on an NTFS drive.
The mountvol Utility
(CLI)
Windows 2000 included the command-line tool mountvol.exe
for scripting and advanced volume routing. Common tasks included:
- Creating a mount point:
mountvol C:\MountedDisk \\?\Volume{GUID}\ - Listing active volumes and paths: Running
mountvolwith no arguments outputs all current volume GUIDs and their associated mount paths. - Deleting a mount point:
mountvol C:\MountedDisk /d
Deleting a mount point only disassociates the target volume from the folder; it does not delete or alter the data on the mounted volume.