On Jan 5, 2014, at 11:27 PM, Jean François Martinez <jfm...@free.fr> wrote:

> This is not the problem.  THe problem is:  a user of another distribution 
> will not want to touch Fedora with a ten foot pole pnce he discovers Fedora 
> messe up with his booter setup.  And the parttitionner is equally bad.  These 
> are two areas a distribution not only in the area of bugs but in the are of 
> design.  And Fedora hasn't. 

Yes. Well, the unfriendliness of linux distributions toward other linux 
distributions in multiboot context is not unique to Fedora. By default they all 
pretty much will try to eat each other for lunch. It's distinctly unfriendly 
compared to the default behavior of installing two copies of Windows, or two 
copies of OS X on the same drive. It annoys me, but also there's a kind of 
irony so I'm also amused.

Anyway, some distros try to get around the problem, while it's still not at all 
friendly, by forcing the installation of boot.img and block list into the first 
two sectors of the /boot partition. Literally it requires grub-install --force, 
otherwise it fails. The Fedora installer since F18 doesn't support --force 
anymore. Other distros take the ensuing risk.

You can do one of three things post install, starting with do not install a 
boot loader when installing Fedora:

1. grub2-install --force /dev/sdXY and then grub2-mkconfig -o 
/boot/grub2/grub.cfg. Does not require --force for Btrfs. Does not work in any 
case with XFS. Unfortunately when the bootloader isn't installed by anaconda, 
it also doesn't create /etc/default/grub which could be a drag to create 
manually but that's the deal. There has been an RFE on this for two releases or 
so, no progress or patches to help the progress. This is a bit clunky but can 
be chainloaded from grub legacy or other non-grub2 bootloaders, and it's 
probably what you're used to even though it's really inelegant.

2. grub2-install --grub-setup=/bin/true /dev/sda will do everything except 
obliterate the MBR gap boot loader code, leaving the existing boot loader 
working. Also run grub2-mkconfig as above. No code goes in the /boot partition 
VBR in this case, so you need to have your non-grub2 main bootloader directly 
load the grub2 core.img; or if it is grub2 then you should edit the main distro 
/etc/grub.d/40_custom with an entry using configfile pointed to the Fedora 
grub.cfg and update its grub.cfg. Still lacks /etc/default/grub.

3. Use extlinux as a boot parameter for the install media. This will use 
extlinux which by design installs to rootfs for unified layouts, or /boot if 
separate. Currently boot code already in the MBR is not replaced. (On blank 
disks, parted writes some basic jump code in the MBR so new installs do boot 
with no extra work.) There's an RFE asking for extlinux installs to overwrite 
the MBR, FYI, so this behavior could change. In this case there's boot code in 
the Fedora boot partition VBR, so you just have the main bootloader chainload 
extlinux by  pointing it to the boot partition. Anaconda creates a 
extlinux.conf for you. So I think this is the best option.



Chris Murphy

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Reply via email to