Warning: Don't install linux on a Windows Dynamic disk
Posted: Sun Nov 11, 2012 1:13 am
This is a warning against trying to install Mint (or probably any linux distro) as dual boot on a dynamic disk.
Sorry for the long post. Once you understand the issue, just jump to "Workaround".
The following is my understanding after getting bitten by this problem trying to install linux as dual boot with Windows7 and subsequent hours of checking and googling.
OK, what's a dynamic disk?
It's microsoft's proprietary version of Logical volumes (LVM) and it is NOT compatible with linux. It's been around since XP and it seems that Windows7 now switches to it by default when it modifies partitioning.
What's the problem?
A dynamic disk is completely under the control of one operating system – it cannot be used for multibooting. Apparently not even with two instances of windows (regardless of which version of windows). This in itself is just a limitation. The real problem for linux users is that today's linux installation routines don't detect that the disk is dynamic (volumes) and incorrectly reads the disk as if it's partitioned. That means linux doesn't detect the volumes correctly and will likely end up loosing all of your existing data.
The Story
I recently ran into this problem when I was helping a new user install mint on a windows7 laptop as dual boot. The machine is a HP Dv6. Before we started the install he had shrunk down the C: partition using the built in windows7 disk management, and created a new partition using most of the free space. No problem I thought, windows should know how to handle NTFS partitions fine.
Just so we wouldn't have any doubt as to which partition to put linux in, we took a snapshot of how windows saw the drive. http://img703.imageshack.us/img703/862/dynamicdisk.jpg
When we went to install mint, after the step, Installation type - "Something else", it displayed the wrong partitioning – it just showed 4 ntfs partitions and didn't show the free space nor the FAT partition. Not all of the NTFS partitions were shown as the correct size. Not showing the FAT partition rang alarm bells, so we cancelled the installation and had a look at gparted. Gparted, fdisk and cfdisk all reported the same disk layout as the installation routine had.
Other linux distributions (ubuntu and parted magic) acted just the same as mint, which makes me think the installation routines of those distros is the same or very similar. (We didn't try it with an rpm based distribution, but I've read about there being similar problems).
Fortunately my friend remembered that when he shrunk the C: and created the new 'partition', he had seen a message pop up and, being very diligent, had saved a screen shot. It was a message that windows was converting the disk to dynamic. What that did was it changed the partitions on the disk to volumes! Subsequently, linux was interpreting the volume table as a partition table and getting the wrong disk layout.
Ouch!
Workaround
The linux installation routines don't check for dynamic disks and don't prevent you from trying to install a dual boot on such a disk. Consequently, you yourself need to verify that the windows disk isn't dynamic. It may have been done unintentionally, as in this case or, I've read of some cases where it came that way from the manufacturer.
To verify that you DON'T have a dynamic disk, look at how windows partition manager reports the drive – I don't know any way to check this in Linux. Look at http://img703.imageshack.us/img703/862/dynamicdisk.jpg; note the two columns “Layout” and “Type”. Ours showed 'Simple' and 'Dynamic' - that tells you, you can't dual boot with that disk. You need the type to be 'Basic'.
Microsoft says that a Dynamic disk cannot be converted back to Basic and says you should delete the volumes. http://technet.microsoft.com/en-us/libr ... 55238.aspx
However, there are four ways I've found that may save you having to do that. (I'd make sure my data was backed up, but it may save you having to do a reinstall/recover). First two methods are Partition Wizard or ErasUS partition master. This post gives good info http://www.sevenforums.com/tutorials/26 ... -disk.html. Other methods are Testdisk or direct editing of the partition table – see http://mypkb.wordpress.com/2007/03/28/h ... sic-disks/
I suspect some of these methods may only work if the volume type is Simple, rather than one of the RAID types, but that's just a guess.
One strange thing was that the liveCD could read the files on the windows C:, despite gparted showing a caution flag against that partition. Possibly because that was at the front of the disk and was not moved, just shrunk. Anyway, just be aware that even if the liveCD can access the NTFS volumes, dont assume that it's reading the drive correctly.
PS There's a bug report filed against mint for this https://bugs.launchpad.net/linuxmint/+bug/909202
PPS The screenshot was taken after the new user had shrunk and split the C: (and windows had converted to dynamic). Originally there were 4 partitions, system, C:, recovery and HP_tools
Sorry for the long post. Once you understand the issue, just jump to "Workaround".
The following is my understanding after getting bitten by this problem trying to install linux as dual boot with Windows7 and subsequent hours of checking and googling.
OK, what's a dynamic disk?
It's microsoft's proprietary version of Logical volumes (LVM) and it is NOT compatible with linux. It's been around since XP and it seems that Windows7 now switches to it by default when it modifies partitioning.
What's the problem?
A dynamic disk is completely under the control of one operating system – it cannot be used for multibooting. Apparently not even with two instances of windows (regardless of which version of windows). This in itself is just a limitation. The real problem for linux users is that today's linux installation routines don't detect that the disk is dynamic (volumes) and incorrectly reads the disk as if it's partitioned. That means linux doesn't detect the volumes correctly and will likely end up loosing all of your existing data.
The Story
I recently ran into this problem when I was helping a new user install mint on a windows7 laptop as dual boot. The machine is a HP Dv6. Before we started the install he had shrunk down the C: partition using the built in windows7 disk management, and created a new partition using most of the free space. No problem I thought, windows should know how to handle NTFS partitions fine.
Just so we wouldn't have any doubt as to which partition to put linux in, we took a snapshot of how windows saw the drive. http://img703.imageshack.us/img703/862/dynamicdisk.jpg
When we went to install mint, after the step, Installation type - "Something else", it displayed the wrong partitioning – it just showed 4 ntfs partitions and didn't show the free space nor the FAT partition. Not all of the NTFS partitions were shown as the correct size. Not showing the FAT partition rang alarm bells, so we cancelled the installation and had a look at gparted. Gparted, fdisk and cfdisk all reported the same disk layout as the installation routine had.
Other linux distributions (ubuntu and parted magic) acted just the same as mint, which makes me think the installation routines of those distros is the same or very similar. (We didn't try it with an rpm based distribution, but I've read about there being similar problems).
Fortunately my friend remembered that when he shrunk the C: and created the new 'partition', he had seen a message pop up and, being very diligent, had saved a screen shot. It was a message that windows was converting the disk to dynamic. What that did was it changed the partitions on the disk to volumes! Subsequently, linux was interpreting the volume table as a partition table and getting the wrong disk layout.
Ouch!
Workaround
The linux installation routines don't check for dynamic disks and don't prevent you from trying to install a dual boot on such a disk. Consequently, you yourself need to verify that the windows disk isn't dynamic. It may have been done unintentionally, as in this case or, I've read of some cases where it came that way from the manufacturer.
To verify that you DON'T have a dynamic disk, look at how windows partition manager reports the drive – I don't know any way to check this in Linux. Look at http://img703.imageshack.us/img703/862/dynamicdisk.jpg; note the two columns “Layout” and “Type”. Ours showed 'Simple' and 'Dynamic' - that tells you, you can't dual boot with that disk. You need the type to be 'Basic'.
Microsoft says that a Dynamic disk cannot be converted back to Basic and says you should delete the volumes. http://technet.microsoft.com/en-us/libr ... 55238.aspx
However, there are four ways I've found that may save you having to do that. (I'd make sure my data was backed up, but it may save you having to do a reinstall/recover). First two methods are Partition Wizard or ErasUS partition master. This post gives good info http://www.sevenforums.com/tutorials/26 ... -disk.html. Other methods are Testdisk or direct editing of the partition table – see http://mypkb.wordpress.com/2007/03/28/h ... sic-disks/
I suspect some of these methods may only work if the volume type is Simple, rather than one of the RAID types, but that's just a guess.
One strange thing was that the liveCD could read the files on the windows C:, despite gparted showing a caution flag against that partition. Possibly because that was at the front of the disk and was not moved, just shrunk. Anyway, just be aware that even if the liveCD can access the NTFS volumes, dont assume that it's reading the drive correctly.
PS There's a bug report filed against mint for this https://bugs.launchpad.net/linuxmint/+bug/909202
PPS The screenshot was taken after the new user had shrunk and split the C: (and windows had converted to dynamic). Originally there were 4 partitions, system, C:, recovery and HP_tools