SYMPTOMS
If the master boot record (MBR) of a disk is damaged or if
it is improperly altered, the disk may appear as "Dynamic Unreadable" in the
Disk Management snap-in. You can right-click the disk, and then click
Revert to Basic Disk to change the disk to a basic disk to
facilitate recovery. If you do so, you receive the following message:
Data on the this disk will be lost if you convert the disk to Basic, do you wish to continue ?
If you click
Yes, a hour glass appears briefly,
and then it goes away. The disk still appears as "Dynamic Unreadable" in Disk
Management, and you cannot use the disk to create any new volumes.
If
you try to use the Diskpart.exe utility to convert the disk to a basic disk,
you receive a "DiskPart successfully converted the selected disk to basic
format" message. However, if you perform a rescan operation, the partitions are
still intact and the disk still appears as "Dynamic Unreadable" in Disk
Management.
RESOLUTION
To resolve this issue, you must first use the Diskmap.exe
utility or the Dmdiag.exe utility in verbose mode to confirm that invalid
system IDs are causing this problem.
Note: To start the Dmdiag.exe utility in verbose mode, type
dmdiag -v at a command prompt.
These utilities
are available in the Windows 2000 Resource Kit that is located on the following
Microsoft Web site:
Note: By default, DMdiag.exe is installed on Windows Server 2003.
Both utilities output MBR information that contains the system ID
or partition type in hexadecimal format. The following sections contain
examples of output from these utilities.
Example 1: Output from the Diskmap Command
If you run the
diskmap /d1 command from a command prompt, you receive the following
output.
Note: Some of the data from the output has been removed.
MBR:
Starting Ending System Relative Total
Cylinder Head Sector Cylinder Head Sector ID Sector Sectors
* 0 1 1 509 254 63 0x0B 63 8193087
510 0 1 891 254 63 0x42 8193150 6136830
892 0 1 1006 254 63 0x42 14329980 1847475
1007 0 1 1023 254 63 0x0F 16177456 1590435
In this example, there is a mix of 0x0B (FAT32), 0x42 (dynamic),
and 0x0F (extended-LBA) partition types. The partition table entry that causes
the issue that is described in this article is the 0x0B (FAT32) partition.
Example 2: Output from Dmdiag Command
If you run the
dmdiag -v command from a command prompt, you receive the following
output.
Note: Some of the data from the output has been removed.
---------- Partition Table Info Disk 1 ----------
Starting Partition Hidden Total Partition Partition
Offset (bytes) Length (bytes) Sectors Sectors Number Type (HEX)
32,256 4,194,860,544 63 8,193,087 0 0x42
4,194,892,800 3,142,056,960 8,193,150 6,136,830 1 0x42
7,336,949,760 945,907,200 14,329,980 1,847,475 2 0x42
8,282,857,472 814,302,720 16,177,456 1,590,435 3 0x0F
8,282,889,728 814,269,952 63 1,590,371 4 0x07
0 0 0 0 5 0x00
0 0 0 0 6 0x00
0 0 0 0 7 0x00
In this example, there are several 0x42 (dynamic) partition types
and an 0x0F (extended-LBA) partition type in the MBR. However, the extended
partition includes an 0x07 (NTFS) partition table entry in the EBR, which
causes the issue that is described in this article.
You can use
Dskprobe.exe to make sure that all of the partition table types are either
supported or are of type 0x42 (which indicates a dynamic volume). You can also
use the
clean command with Dskprobe.exe or Diskpart.exe to remove all
partitions on the disk.
To use Dskprobe.exe to change the System-ID
value to type 0x42:
- Log on to the computer as an administrator, and then start
Dskprobe.exe.
- Click physical drive on the
Drives menu, and then double-click the physical drive that you
want to repair.
- Click to clear the read-only check box for
handle zero, click set active, and then click
OK.
- Click Read on the Sectors
menu, click Read to read sector-0 for one sector.
The partition tables in the MBR appear. The partition table is a 64-byte data
structure that is located in the same sector as the MBR at cylinder 0, side 0,
sector 1 or physical sector 0 of the physical disk that is using Dskprobe.exe.
The partition table conforms to a standard layout that is independent of the
operating system. Each partition table entry is 16 bytes long, which makes a
maximum of four partitions available. Each entry contains Cylinder, Head,
Sector (CHS), and System-ID (XX) information. Each entry starts at a
predetermined offset from the beginning of the sector. The following data is an
example of the partition table in hexadecimal format:
000001A0: .....
000001B0: 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 80 01
000001C0: 01 00 XX 10 7D ED 3D 00 - 00 00 D9 D0 07 00 00 00
000001D0: 00 00 XX 00 00 00 00 00 - 00 00 00 00 00 00 00 00
000001E0: 00 00 XX 00 00 00 00 00 - 00 00 00 00 00 00 00 00
000001F0: 00 00 XX 00 00 00 00 00 - 00 00 00 00 00 00 55 AA
Partition-1 starts at 0x01BE - SYSTEM-ID Byte is at 0x01C2
Partition-2 starts at 0x01CE - SYSTEM-ID Byte is at 0x01D2
Partition-3 starts at 0x01DE - SYSTEM-ID Byte is at 0x01E2
Partition-4 starts at 0x01EE - SYSTEM-ID Byte is at 0x01F2
- Find the partition table entry whose system ID byte is not
one of the supported types, and then change it back to "0x42".
Note: If a logical drive in an extended partition is not one of the
supported types, you must browse to the EBR to change this entry.
The following list describes the supported types:
- Value: 0x05
File system: Extended partition (which holds the logical drives). - Value: 0x0F
File system: Same as 0x05 and uses Logical Block Address Int 0x13
extensions. - Value: 0x12
File system: Compaq OEM partition. - Value: 0xFE
File system: IBM OEM Partition.
Note: If you use this partition, you must apply Windows 2000 Service Pack 3 (SP3). - Value: 0xDE
File system: Dell OEM Partition. - Value: 0x42
File system: LDM Dynamic Disk Partition.
- After you manually change the System ID byte to 0x42, click
Write on the Sectors menu, and then press
Write It to save the changes.
- Quit Dskprobe.exe, shut down the computer, and then restart
it.
- Log on as an administrator, start Disk Management, and then
confirm that the disk that appeared as "Dynamic Unreadable" is online.
- Revert the disk to a basic disk.
Use the following procedure to use the Diskpart.exe utility to
clean the disk.
Note: If you use Windows XP or Windows Server 2003, the Diskpart.exe
utility is already installed. If you are using Windows 2000, install the
Diskpart.exe utility for Windows 2000. To download the Diskpart.exe utility,
visit the following Microsoft Web site:
- From a command prompt, type
diskpart, and then press ENTER.
- Type select disk
number (where disk number
is the physical disk number that you want to clean), and then press
ENTER.
- Type clean, and then press
ENTER.
- Type exit, and then press
ENTER.
The disk becomes a basic disk that contains unallocated space.
You must allow Disk Management to write a new disk signature before you can use
this disk.