EFI main GPT overwritten everytime (when windows 7 runs) - structure of EFI
I have came across some weird behavior.
I have Ubuntu 12.04 64 bit cloned from another disk to my main SSD disk.
efi - ext2
ext4 - RAID0 - created from four partitions.
Ubuntu OS is not booting from this RAID but from different disk.
Every time when I start windows 7 64 bit and switch back to Ubuntu I have got into problem that my first partition of the RAID0 array is damaged.
I have to always run gdisk - expert option -> and copy backup GPT to main GPT.
After that it works properly again - but It annoyed me to do it every time I start linux after have been in windows 7. (maybe time to delete windows forever :-)
I have binary compared before and after those changes and have found differences in it:
---before (when windows 7 made damage):
I would like to more investigate but I did not find much documentation about gpt , efi structure of partition. (MBR documentation I have)
Is somewhere detailed [documentation/s|URLs|books] about the GPT/EFI structure and functionality (very detailed for developers would be nice) ?
Windows first checks block 0 for MBR. If it finds that it assumes it is dos partition table and boots with that. If it does not, it will use GPT or fail depending on Windows version and level. GPT starts at block 1 to avoid clobbering or being clobbered by MBR-using programs like Windows. In your case you probably have both MBR and GPT. If your Windows is ok with GPT, then just clear block 0.
than why windows 7 even touching/changing that disk/partitions if boots up from different disk than Linux is ?
Linux disk/RAID0 is on different disk - efi/ext2/ext4 partitions ( and is not possible to even boot from it - as Windows as Linux )
(I do not even have to have efi on Linux disk/partition - I have it there for future experiment/s - at this moment it is completely not in use) ?
Windows 7 is on MBR.
Linux is on GPT (but boots up from different disk ~ MBR).
I can convert disk where is Windows from MBR to GPT (I did it for many other disks) but it is not necessary.
|All times are GMT -5. The time now is 07:03 AM.|