Re: Followup: How do I generate grub for legacy?

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

 



On 5/1/19 2:48 PM, ToddAndMargo via users wrote:
Hi All,

I have a Fedora 30 flash drive set up for dual booting
from Legacy or UEFI.  It boots beautifully from UEFI.
(It also have a bios_grub partition).

It booted perfectly from both under Fedora 29.

Now when booting from legacy, it go into "System Setup".
If you press system Setup, I get a "/grub/core-system"
type error


Remaking grub.cfg, I get

    # grub2-mkconfig -o /boot/grub2/grub.cfg
    Generating grub configuration file ...
    Adding boot menu entry for EFI firmware configuration
    done

Uhhhhh.. I wanted legacy, not EFI.

What am I missing?

Many thanks,
-T


My procedure:

UEFI.BIOS.Dual.Boot.txt:

References that stink:
     https://forums.linuxmint.com/viewtopic.php?t=223015
     https://bl.ocks.org/gdamjan/05b799162e4b3e97a30d37a89fed0fa8

https://forum.level1techs.com/t/configure-grub-to-boot-legacy-and-uefi/129382


Requirements:
    Fedora 29

    Before installing, gparted:
       Wipe the target disk

       create a partition table as GPT

       create a first partition as
           1 Meg
           unformatted
           set the partition flag to "bios_grub"

    Install Fedora 29 from a UEFI machine:
       "/home" was removed at installation and moved into "/"

--->>>   PRESUMED !!!   <<<---
       The machine was install and booted from UEFI
       The machine is mounted as /dev/sda


Install the legacy BIOS boot loader:

Boot into fedora on UEFI

only installs 3 files
# dnf reinstall grub2-pc

create the BIOS .cfg file
# grub2-mkconfig -o /boot/grub2/grub.cfg

Note: if this complains, you forgot to create the partition above
# grub2-install --removable --recheck --target=i386-pc --boot-directory=/boot /dev/sda

Hi All,

Follow up:

I FINALLY got some time to work on this!

Thanks to everyone who helped me with this and a
special thanks for Ja who got me on the right path.

-T

Here are my notes.

Fedora 30+: how to create a minimal legacy boot on a previously set up EUFI drive:

Note: this requires that you created the first partition as
          1 Meg
          unformatted
          set the partition flag to "bios_grub"
If not, you have to go back and recreate the entire installation


Background: as of Fedora 30, grub calls entries in /etc/grug.d, so
you have to create a minimal grug.cfg file of your own and you
have to do this for every new kernel you install.

The following presumes that you are booted EUFI.

Create a grub2 partition and files for legacy to boot off of:
Note: you must have that 1 Meg partition mentioned above

   1) find the device name of your flash drive and substitute it for sdx:

   2) install grub2pc:
         # dnf [re]install grub2-pc

   3) install grub on the MBR.  Triple check the USB stick sdx !!!!
        # grub2-install --target=i386-pc /dev/sdx


You need three pieces of information:

    1) the UUID (not PARTUUID) of the /boot drive
    2) the UUID (not PARTUUID) of the / (root) drive
    3) the vmlinuz and matching initramfs image you will be booting
       off (both are found in /boot)

To get get the UUID of of / and /boot, find their device names
using "df":

    # df -kPT / /boot
    Filesystem     Type 1024-blocks    Used Available Capacity Mounted on
    /dev/sda4      ext4    58041356 7878524  47184784      15% /
    /dev/sda3      ext4      999320  184696    745812      20% /boot

Then find their UUIDs (not PARTUUID) using "ll".  Note: "ll" must be
run as root:

    # blkid -c /dev/null | grep "sda3\|sda4"
/dev/sda3: UUID="cd4da110-2353-43d0-8fbf-e82d6d795dfb" TYPE="ext4" PARTUUID="55db0eaa-68a3-4fb5-8cfc-ac843f0cb65a" /dev/sda4: LABEL="DeadStick" UUID="b8616ae1-39ee-45dd-bfc6-b2cb5f22921f" TYPE="ext4" PARTUUID="ad3be15f-a803-4056-a3f7-21d72ca174dd"

In this instance:
    /     UUID is cd4da110-2353-43d0-8fbf-e82d6d795d
    /boot UUID is b8616ae1-39ee-45dd-bfc6-b2cb5f22921f

To find vmlinuz and matching initramfs:

   # ls /boot/vmlinuz*
   /boot/vmlinuz-5.2.11-200.fc30.x86_64

   # ls /boot/initramfs*
   /boot/initramfs-5.2.11-200.fc30.x86_64.img


Create a /boot/grub2/grub.cfg file for booting from a legacy BIOS.

    1) subsitute /boot's UUID in the "search" line
    2) subsitute /'s (root's) UUID in the "linux" line
    3) subsitute your vmlinuz in the "vmlinuz" line
    4) subsitute the matching initramfs in the "initrd16" line

~~~~~~~~
set pager=1
terminal_output console
set timeout=5
    menuentry 'Fedora 30 (Thirty) Legacy Boot' {
        insmod part_gpt
        insmod ext2
search --no-floppy --fs-uuid --set=root cd4da110-2353-43d0-8fbf-e82d6d795dfb linux /vmlinuz-5.2.11-200.fc30.x86_64 root=UUID=b8616ae1-39ee-45dd-bfc6-b2cb5f22921f
        initrd16 /initramfs-5.2.11-200.fc30.x86_64.img
    }
~~~~~~~~

reboot on a legacy system to double check. Qemu-kvm work wonders!





_______________________________________________
users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx



[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux