One advantage that Windows 2000 brings to end users is the removal of the 26 drive letter limitation. Under Windows NT, you could access resources under a fully qualified path name (i.e., \\resource\sharename) without having to map a drive letter to that resource if it was storage. If you wanted a persistently available resource, it was usually easiest to map remote storage to a drive letter. But you didn't have that option for local storage; it received a drive letter whether or not you liked it. And adding drives sometimes played with the default order of the drives, requiring care when installing new drives.
Win2K adds a feature called NTFS Junction Points. A junction point is a physical location on a local hard disk that points to another location on that disk or another storage device. When you create a mounted drive, you create a junction point. A mounted drive is a device attached to an empty folder on an NTFS volume. It behaves the same as any other drive, but no drive letter is attached to the volume, just a label.
You can mount an entire drive to a directory on another drive. When users access that directory, they have access to that entire drive, regardless of size. For example, you could have any number of drives physically installed on one system, but the users and applications might see only a single C drive letter.
Win2K has four methods to deal with mounted drives and junction points. Two are contained within the OS, and two are in the Win2K Professional Resource Kit. In this column, I discuss only the two methods found in the base OS.
The easiest way to create a mounted drive is to use the Disk Management portion of the Computer Management Console. When you add a drive or want to change existing drives, right-click the drive or partition and select Change Drive Letter and Paths.... From that dialog box, you can add, edit, or remove drive letters and mount points. To add a drive letter, select Add, Add New Drive Letter or Path. Select a drive letter from the drop-down menu of available letters. To select a new mount point, click "Mount in this NTFS folder" and type in the fully qualified path name to the empty folder you want to use as the mount point. The Browse button lets you look at the directory tree for the available volumes that support mount points and lets you select an existing folder or create a new empty folder to use as the junction point. This procedure lets you perform all disk and drive management activities from the same application.
But of course, some of us want to do everything the hard way (i.e., from the command line), so Win2K lets us use the MOUNTVOL command. Entering mountvol without any parameters returns information similar to the following:
MOUNTVOL \[drive:\]path VolumeName
MOUNTVOL \[drive:\]path /D
MOUNTVOL \[drive:\]path /L
path Specifies the existing NTFS directory where the mount point will reside.
VolumeName Specifies the volume name that is the target of the mount point.
/D Removes the volume mount point from the specified directory
/L Lists the mounted volume name for the specified directory.
The command returns all possible values and current mount points for the local system, which means that your system won't return the same response as you see above. You'll also notice that the primary identification of the drive volumes provided is not the drive letter but the Global Unique ID (GUID), which identifies the drive even if you later change the drive letter. Of course, Win2K doesn't require that you use drive letters beyond the boot device. Also remember that you can cut and paste in the command windows, so you don't need to retype the GUID information.
The ability to mount drives using junction points is very useful. Even if you don't need to use this functionality now, take a few minutes and play with your existing Win2K NTFS partitions to get a feel for how it works.