The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Difference between revisions of "Package:Boot-Update"
Line 19: | Line 19: | ||
* boot.conf(5) | * boot.conf(5) | ||
{{:Install/BootLoader}} | |||
=== GRUB 0.97 (grub-legacy) Quick Start === | |||
= GRUB 0.97 (grub-legacy) Quick Start = | |||
If using <code>sys-boot/grub-legacy-0.97</code>, perform the following steps: | If using <code>sys-boot/grub-legacy-0.97</code>, perform the following steps: |
Revision as of 18:18, January 11, 2015
Boot-Update
We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.
Funtoo boot-update provides a unified mechanism for configuring the GRUB 1.9x (No results) and GRUB 0.97 (No results) boot loaders. It is the recommended, official way to configure Funtoo Linux systems for booting.
Current Version
Man Pages
Consult the following man pages for detailed, up-to-date information on configuration file settings and command-line arguments:
- boot-update(8)
- boot.conf(5)
Installing a Bootloader
These install instructions show you how to use GRUB to boot using BIOS (old-school) or UEFI (new-school). As of boot-update-1.7.2, now in Portage, the steps are very similar.
First, emerge boot-update
. This will also cause grub-2
and efibootmgr
to be merged, since they are dependencies:
(chroot) # emerge boot-update
Then, edit /etc/boot.conf
using nano
and specify "Funtoo Linux genkernel
" as the default
setting at the top of the file, replacing "Funtoo Linux"
.
/etc/boot.conf
should now look like this:
/etc/boot.conf
boot {
generate grub
default "Funtoo Linux genkernel"
timeout 3
}
"Funtoo Linux" {
kernel bzImage[-v]
}
"Funtoo Linux genkernel" {
kernel kernel[-v]
initrd initramfs[-v]
params += real_root=auto
}
"Funtoo Linux better-initramfs" {
kernel vmlinuz[-v]
initrd /initramfs.cpio.gz
}
If you are booting a custom or non-default kernel, please read man boot.conf
for information on the various options available to you.
Old School (BIOS) MBR
When using "old school" BIOS booting, run the following command to install GRUB to your MBR, and generate the /boot/grub/grub.cfg
configuration file that GRUB will use for booting:
(chroot) # grub-install --target=i386-pc --no-floppy /dev/sda (chroot) # boot-update
New School (UEFI) Boot Entry
If you're using "new school" UEFI booting, run of the following sets of commands, depending on whether you are installing a 64-bit or 32-bit system. This will add GRUB as a UEFI boot entry.
For x86-64bit systems:
(chroot) # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda (chroot) # boot-update
For x86-32bit systems:
(chroot) # grub-install --target=i386-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda (chroot) # boot-update
First Boot, and in the future...
OK -- you are ready to boot!
You only need to run grub-install
when you first install Funtoo Linux, but you need to re-run boot-update
every time you modify your /etc/boot.conf
file or add new kernels to your system. This will regenerate /boot/grub/grub.cfg
so that you will have new kernels available in your GRUB boot menu, the next time you reboot.
GRUB 0.97 (grub-legacy) Quick Start
If using sys-boot/grub-legacy-0.97
, perform the following steps:
- Partition disk using MBR partitions (GPT not supported)
- Install kernel/initrd to
/boot
root # emerge sys-boot/boot-update root # emerge ">=sys-boot/grub-legacy-0.97-r11" root # grub-install-legacy /dev/sda
Due to an issue with grub-legacy
, you may see the following message:
root # grub-install-legacy /dev/sda The file /boot/grub-legacy/stage1 not read correctly.
Should you receive this message, you will have to install grub-legacy
from the grub shell.
Assuming /boot
is the partition /dev/sda1
and you want to install grub to the MBR, you would run the following:
root # grub-legacy root (hd0,0) setup (hd0) quit
When adjusting to fit your setup, remember 'root' is the location of your boot partition, 'setup' is where you want to install grub, and don't forget about grub's unique naming conventions for hard drives / partitions. For more information run:
root # info grub-legacy
Ensure that /etc/fstab
is correct, and edit /etc/boot.conf
to reflect your installation.
Ensure a generate grub-legacy
setting in the boot
section. Then run:
root # boot-update
This will auto-generate the /boot/grub-legacy/grub.conf
required for booting. Note that grub-legacy-0.97-r11
and later stores grub.conf
in the /boot/grub-legacy
directory.
Re-run boot-update
every time your available kernels / initrds or /etc/boot.conf
configuration changes.