bug-grub
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #46763] allow multibooting of windows-xp 32bit or lower on >2TB dis


From: Piotr Sawuk
Subject: [bug #46763] allow multibooting of windows-xp 32bit or lower on >2TB discs
Date: Sun, 27 Dec 2015 15:10:25 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0

URL:
  <http://savannah.gnu.org/bugs/?46763>

                 Summary: allow multibooting of windows-xp 32bit or lower on
>2TB discs
                 Project: GNU GRUB
            Submitted by: piotr5
            Submitted on: So 27 Dez 2015 15:10:25 GMT
                Category: Disk &amp; Partition
                Severity: Major
                Priority: 5 - Normal
              Item Group: Feature Request
                  Status: None
                 Privacy: Public
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 
                 Release: other
         Reproducibility: Every Time
         Planned Release: None

    _______________________________________________________

Details:

well, duh, the single feature many people were looking for needs to be
mentioned in the feature-requests for grub too. officially the answer is that
it isn't possible to run windows-xp 32bit or lower on such drives, and that's
correct. however, when multibooting, you can put another os on the part which
isn't accessible by mbr. in windows you'll see much less than 3TB and
additionally maybe many boot-partitions visible in gpt will be invisible in
mbr as they are hidden under the protective partition. in a way this provides
some sort of safety since those parts of another OS wont be easily accessible
form malware.

I should mention my situation: old amd-athlon-xp 32bit, with bios and no efi.
after partitioning the 3TB disc I installed windows-xp. all these old windows
versions and the linux boot partition must end before sector 80769024 or bios
will refuse to boot, so  that's the exact sector where my mbr extended
partition starts. it ends at 1565550314 since this is 1023/63/254 in C/H/S. I
suppose with the right bios config I could have given more space to windows
than those 750GB, but I really don't want some mess-up in bios to make the
system unbootable. linux is installed after that. I found these values through
experimentation, for your bios and disc and partition-table they might
differ.

what I did to successfully create multiboot between gpt and mbr is altering
the sourcecode of grub. linux is gentoo with sys-boot/grub-2.02_beta2-r7 and I
put the following 3 patches in /etc/portage/patches/sys-boot/grub/

msdos.patch allows for part_msdos to detect the mbr even when a protective
partition indicates gpt presence.

gpt.patch I need to read the boot-partition grub is installed in even when
there is no protective partition in mbr. in linux I have installed /boot/ on a
gpt partition hidden under the protective mbr-entry. haven't tested yet how
grub will react when there is a disc without any gpt installed, with only mbr
partitions. TODO: compare gpt with its copy at the end of the disc if it
exists...

gpt-hybrid.patch I need to use the grub-install and similar tools for writing
core.img since with above changes grub believes there are 2 partition tables,
mbr and gpt. so I use gpt by default. although I'm not sure: does the pointer
to mbr then need to be saved or is it stored elsewhere already? for future
compability I'm rescuing it anyway...

after applying these patches and re-compiling and installing of the new grub
on my boot partition, I also altered the grub.cfg file. at every linux
menuentry I added:

insmod part_msdos
parttool (hd0,msdos1) type=0xee

and in windows-xp menuentry I do the same with "type=0x6e". (I suppose hiding
and unhiding would work too.) beware that on a flash disc you'd probably
better save the wear-off by actually checking if this will perform any change
at all...



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: So 27 Dez 2015 15:10:25 GMT  Name: msdos.patch  Size: 1kB   By: piotr5

<http://savannah.gnu.org/bugs/download.php?file_id=35864>
-------------------------------------------------------
Date: So 27 Dez 2015 15:10:25 GMT  Name: gpt.patch  Size: 834B   By: piotr5

<http://savannah.gnu.org/bugs/download.php?file_id=35865>
-------------------------------------------------------
Date: So 27 Dez 2015 15:10:25 GMT  Name: gpt-hybrid.patch  Size: 962B   By:
piotr5

<http://savannah.gnu.org/bugs/download.php?file_id=35866>

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?46763>

_______________________________________________
  Nachricht gesendet von/durch Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]