Because you didn’t install Win7 in EFI mode. You just intended to and probably did everything correctly: blank the MBR, set the right priority, so that it boots the UEFI device and not the legacy one, booted Windows install DVD, launched the setup … and when it was done, noticed that it created a MBR and installed accordingly, instead of a GPT. It is not supposed to do that of course, but it does … or it might. At least it did a couple times for me.
Now you could try again = reinstall Windows in UEFI mode over this MBR installation. The setup will refuse to install in this mode because of the MBR. At this point, you can tell it to delete the entire disk, and this time it will create a GPT an install in EFI mode.
I’m not sure why. I cannot say that I could reproduce this behaviour every time, but it happened surely more than once. Maybe, when the disk is blank and you boot in UEFI mode, Windows stupidely creates a MBR - while it should create a GPT- and this probably not on everyone’s machine.
You should do things in this order:
Install Windows - if necessary more than once, until you get it installed in UEFI mode (you get a GPT disk and an EFI partition)
Fix the size of the unique partition in protective MBR, as explained in the link provided earlier by @arvidjaar
Install openSUSE (make sure you boot the 64 bit install DVD in UEFI mode) and use/mount the ESP created by Windows.
It requires some work, but is is doable.
Later you might have to manually add a boot entry for Windows in Grub menu, but that’s the easy part.
I fully agree with you, and install grub item manually is not a problem now.
I do not understand how can I tell if win 7 is using gpt.
If I lunch win7 install with efi modo he create 3 partition (efi boot, systema reserv, system), while if I lunch win7 install whitout efi mode he create 2 partition system reserve e system, but in both cases he create mbr not gpt. Why??
The article you read and mentioned in your first post contains pictures of diskpart and Windows disk manager, which clearly show the differences.
You just answered your first question. It seems to me that you understood the difference between Windows UEFI and legacy installation. That’s it! I allowed myself to highlight your quote in bold in order to show others your important discovery.
As for your second question, It creates a (protective) MBR for compatibility reasons with older programs (such as fdisk for example) which are not able to read GPT. It can also alternatively use this MBR to boot legacy system, in which case, it uses an “hybrid” MBR, with 4 partition entries instead of one - but we don’t like to see this in Linux/Windows dual boot (but it’s pretty common on Apple hardware to multiboot OSX with Windows or legacy Linux).
You missed a step*. Read @arvidjaar’s post following a link he provided earlier and show us the output of
# fdisk -l
If your protective MBR has turned into an hybrid MBR - after openSUSE setup - , you have the answer why Windows doesn’t boot anymore. The link @arvidjaar provided describes the solution.
Notice that this step might be (unfortunately) required because you installed Windows and Linux on the SAME HDD. This is not the case in my article, which describes the installation of Windows7 and openSUSE (actually 12.1) on 2 different HDDs.
Although fdisk doesn’t support GPT, it is still very useful to tell if the MBR is “protective” or “hybrid”.