In Windows 2000, all drive letters assigned to volumes are assigned by the Mount Manager (MountMgr) program. After a drive letter is assigned to a volume by MountMgr, the drive letter is reserved for the volume in the MountMgr database located in the system's registry. Windows 2000 Setup also uses MountMgr to handle BASIC, Dynamic, and legacy FT-Set drive letter assignments during a clean installation and are displayed and assigned in a specific order, sometimes based on past drive letter assignments.
When you perform a Windows 2000 upgrade from Windows NT, the drive letterassignments are exported to the $Win_nt$.~bt\Migrate.inf file so the text-mode setup program can reference and import them into the MountMgr database as part of the upgrade process. This process occurs even if you install Windows 2000 into a new folder, but only if both of the following conditions are true:
- You start the new installation while you are running Windows NT or Windows 2000.
- You use the Winnt32.exe program to start the installation.
You can start the installation from the autorun dialog box that is opened when when you insert the installation CD-ROM, or you can open a command prompt, change to the i386 folder, and then run the Winnt32 command.
: If you perform an unattended upgrade, the Migrate.inf file is not created, and drive letter assignments are not retained if the answer file includes the "oempreinstall=yes" parameter. This is by design.Windows 2000 MountMgr assigns drive letters to BASIC disk partitions according to the following rules.NOTE:
This table is used for volumes which do not already have a drive letter assignment reserved in the MountMgr database. This table would primarily be used during a fresh Windows 2000 installation. Otherwise, after setup is complete, if you add a group of drives, the rules below will be applied to those volumes which do not already have a drive letter assignment.
BASIC Disk - Drive Letter Assignment Rules
The following are the basic disk drive letter assignment rules for Windows 2000:
- Scan all fixed hard disks as they are enumerated, assign drive letters starting with any active primary partitions (if there is one), otherwise, scan the first primary partition on each drive. Assign next available letter starting with C:
- Repeat scan for all fixed hard disks and removable (JAZ, MO) disks and assign drive letters to all logical drives in an extended partition, or the removable disk(s) as enumerated. Assign next available letter starting with C:.
- Finally, repeat scan for all fixed hard disk drives, and assign drive letters to all remaining primary partitions. Assign next available letter starting with C:.
- Floppy drives. Assign letter starting with A:
- CD-ROM drives. Assign next available letter starting with D:.
In Windows 2000, all legacy FT-Sets on basic disks record their last used drive letter in a private region on the physical disk. During a new installation, these drive letters are extracted and favored when re-assigning drive letters. This means legacy FT-sets are assigned drive letters prior to assigning any other drive letters to other basic disk partition as stated above.
All assigned drive letters are "persistent" after they are assigned. This means they should remain assigned to that volume until it is either deleted or changed manually using Disk Management. This should hold true for all online volumes as you add and remove disks to the system.
The exception to this rule is that if a volume (disk) is offline, and a different new volume comes online, it may get the offline volume's drive letter. To ensure you keep your drive letter assignments intact, you must keep existing volumes online when introducing new volumes.NOTE:
Disk Management Console prohibits changing the Windows 2000 System/Boot partition drive letter.
This is by design.
For additional information about how to change the System/Boot drive letter in Windows 2000, click the article number below to view the article in the Microsoft Knowledge Base:
How to Change the System/Boot Drive Letter in Windows 2000
Dynamic Disk Considerations
Logical Disk Manager (LDM) keeps track of the last drive letter assigned to a dynamic volume by recording it in its configuration database. The LDM configuration database is located in a 1 MB private region on the end of each dynamic disk. This drive letter is then passed to MountMgr when MountMgr asks LDM for a "suggested" drive letter before assigning one to the volume.
DYNAMIC Disk - Drive Letter Assignment Rules
MountMgr assigns a drive letter to dynamic volumes according to the following rule:
- If the MountMgr database in the system registry has a drive letter recorded for this volume, the volume gets the drive letter from the database. MountMgr makes sure that only one volume owns a drive letter in the database.
- If the MountMgr database does not have a drive letter for this volume, MountMgr asks LDM for a "suggested" drive letter for this volume. LDM looks for a recorded letter in its configuration database and suggests it to MountMgr. If this drive letter is free, the volume gets that suggested drive letter and also puts that drive letter into the MountMgr database to be used during the next mount.
- Finally, if the suggested drive letter is already used or there is no suggested drive letter from LDM, the volume gets assigned the next available drive letter.
Importing Foreign Dynamic Disks
After you import foreign dynamic disks, more than likely the MountMgr database on the local system does not have records for those volumes when they are brought online. However, those same volumes may have had drive letters assigned to them when they were used on the other system and LDM recorded those drive letters in its configuration database at the end of the physical disk. When the volume is mounted for the first time, LDM "suggests" the old drive letter used by that volume to MountMgr. If the suggested drive letter is not used, the volume gets the drive letter suggested, otherwise it gets the next available drive letter.
Dynamic Disks During Setup
Windows 2000 currently does not fully support pure dynamic disk volumes during Setup. Setup only understands dynamic disk partitions that are hard-linked. Hard-linked dynamic partitions are created when you upgrade a BASIC disk to dynamic, and the basic disk had pre-existing primary and or logical drives configured. Each of the these pre-existing partitions retain a legacy-style partition table entry (type-42 for primary and type-05 for extended) even after you upgrade the disk to dynamic. These special hard-linked partition table entries allow Setup to recognize them as valid partitions in which the operating system can be installed.
Pure dynamic disks (those not containing any hard-linked partitions) only have a single partition table entry (type 42) to define the entire disk. Volumes contained on a pure dynamic disk are called soft-linked, and do not display drive letters for them until Setup is complete. Windows 2000 Setup displays a single drive letter for the whole drive (usually the drive letter assigned to the first soft-linked partition) even if it had multiple volumes configured. You cannot perform a new installation to this type of dynamic disk without destroying underlying volumes.
Considering the above, for a new installation of Windows 2000, the MountMgr database in the system registry is newly created. Drive letters for dynamic volumes are enumerated first and behave similar to importing foreign dynamic disks. This means suggested drive letters from LDM are assigned to dynamic volumes prior to scanning and assigning drive letters to basic disks but after legacy FT-Sets are assigned. For remaining dynamic partitions that cannot be assigned their suggested drive letter, they are assigned a letter based on the same rules as for basic disks. Dynamic hard-linked partitions are equivalent to a basic primary and dynamic soft-linked are equivalent to basic logical drives.
In the case of an upgrade, Winnt32 Setup copies the pre-upgrade MountMgr database to the $Win_nt$.~bt\Migrate.inf file for text-mode setup to use, so the drive letters should be preserved for dynamic volumes.
Please be aware of the following issues:
Drive Letters Assigned to Unsupported Partition Types
Dynamic volumes are not displayed accurately during Textmode Setup or Recovery Console
Windows 95 Drive letters may not migrate to Windows 2000 during upgrade
Setup Changes Drive Letters After a Partition Is Deleted
: If you are dual booting between Windows 2000 and MS-DOS or other versions of Windows, the drive letters assigned to partitions may not match.
For more information on how other operating system assign drive letters please reference the following Article:
Order in Which MS-DOS and Windows Assign Drive Letters
Based on all of the above information, all drive letters are displayed and assigned in the following order during a new installation of Windows 2000 or booting to the Recovery Console.
- Legacy FT-sets on basic disks.
- Dynamic hard-linked partitions as suggested (if free).
- Dynamic soft-Linked partitions as suggested (if free) (although not visible during text-mode setup).
- Basic disks, removable disks, and other dynamic disk partitions that could not be assigned previously.
- CD-ROM drives.