Windows 7 Dual Boot Issue

I am in the process of trying to dual boot OpenSuse 12.1 with Windows 7. I am initially dual booting because I need to make sure I can get certain Remote Applications to run via a Citrix Web Client before I make the full switch. This is needed due to my current school software requirements. During the process of install when I get to the partition step the installer can’t seem to find my partitions. It is giving errors about needing mount points and that no operations can be done on said partitions. This is really awkward and every distro I have tried is giving similar results. For instance the Fedora installer blurts no partitions can be found and all data will be lost etc…

I fired up the live disk and ran a fdisk -lu hoping the information can help you guys out in solving this problem. It appears the issue has to do with the disk using GPT tables but I am not positive.

Here is the output from my terminal

linux:/home/linux # fdisk -lu

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4b9d16c7

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848  1953519615   976656384    7  HPFS/NTFS/exFAT

Well it appears I can run the Citrix Reciever client on my netbook with Fedora 16 without a hitch. The real issue that arises is that currently I can’t even do a full Linux install on my desktop due to this installer partition issue. The only thing I can possibly think of doing is a full zero out of the hard disk which would easily take most of the day on a 1TB hard disk. Anyone know of a way to do a full wipe of everything to work around this issue.

EDIT:

Note we need to fully blow out the GPT tables as well.

You don’t need to zero out the whole drive just the GPT table. Where that is you will need to google.

This is a known problem because OpenSUSE still used the old Grub and it does not support GPT.

It is not a GUID partition table. fdisk is lying. It’s a normal MBR partition table.
Compare the following examples (same hard disk, same BIOS, same Windows7 DVD):

  • Windows7 installed in Legacy BIOS (BIOS set to Legacy or you booted the non UEFI device):
# fdisk -l 
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x89d5285f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   976771071   488282112    7  HPFS/NTFS/exFAT

  • Windows7 installed in UEFI BIOS (BIOS set to UEFI or you booted the UEFI device):
# fdisk -l
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 500.1 GB, 500107862016 bytes
256 heads, 63 sectors/track, 60563 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x89d5285f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  4294967295  2147483647+ ** ee  GPT**

  • Another example, the hybrid MBR used on Macs:
# fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00002652

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1      409639      204819+  **ee  GPT**
/dev/sda2          409640   352469031   176029696   af  HFS / HFS+
/dev/sda3   *   352731176   488134983    67701904   83  Linux

1 is normal MBR.
2 is protective MBR (you see only one big GPT - there’s nothing you can do with it).
3 is hybrid MBR (you see the GPT, but you can also have up to 3 primary partitions).

openSUSE does support booting from GPT. You have to install from DVD (not live CD!). It will use ELILO by default. You can install Grub2 later. I will post a tutorial and a script that installs Grub2 on UEFI systems (and BIOS systems as well, as a side effect).

  • Actually I’m waiting for OBS to finish publishing the latest version of updategrub in my repo … and I don’t have influence on how many days it will take.