Difference between revisions of "Install/Bootloader/en"

From Funtoo
Jump to navigation Jump to search
(Updating to match new version of source page)
(Updating to match new version of source page)
Line 8: Line 8:
These install instructions show you how to use GRUB to boot using BIOS (legacy) or UEFI.
These install instructions show you how to use GRUB to boot using BIOS (legacy) or UEFI.


Boot-update ({{c|ego boot}}) is installed by default, but GRUB is not, as it is not required for all Funtoo Linux systems (such as containers, for example.) But for booting on bare metal, it is the recommended and best-supported boot loader, so you will need to emerge it:
ego boot update ({{c|ego boot}}) is installed by default, but GRUB is not, as it is not required for all Funtoo Linux systems (such as containers, for example.) But for booting on bare metal, it is the recommended and best-supported boot loader, so you will need to emerge it:


{{console|body=
{{console|body=
Line 21: Line 21:
boot {
boot {
generate grub
generate grub
default "Funtoo Linux genkernel"  
default "Funtoo Linux"  
timeout 3  
timeout 3  
}
}
Line 32: Line 32:
kernel kernel[-v]
kernel kernel[-v]
initrd initramfs[-v]
initrd initramfs[-v]
params += real_root=auto  
params += real_root=auto rootfstype=auto
}  
}


"Funtoo Linux better-initramfs" {
kernel vmlinuz[-v]
initrd /initramfs.cpio.gz
}
}}
}}


Line 49: Line 45:
{{console|body=
{{console|body=
(chroot) # ##i##grub-install --target=i386-pc --no-floppy /dev/sda
(chroot) # ##i##grub-install --target=i386-pc --no-floppy /dev/sda
(chroot) # ##i##boot-update
(chroot) # ##i##ego boot update
}}
}}


Line 59: Line 55:


{{console|body=
{{console|body=
(chroot) # ##i##mount -o remount,rw /sys/firmware/efi/efivars
(chroot) # ##i##grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ##i##grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ##i##boot-update
(chroot) # ##i##ego boot update
}}
}}


Line 66: Line 63:


{{console|body=
{{console|body=
(chroot) # ##i##mount -o remount,rw /sys/firmware/efi/efivars
(chroot) # ##i##grub-install --target=i386-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ##i##grub-install --target=i386-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ##i##boot-update
(chroot) # ##i##ego boot update
}}
}}


Line 74: Line 72:
OK -- you are almost ready to boot!  
OK -- you are almost ready to boot!  


You only need to run <code>grub-install</code> when you first install Funtoo Linux, but you need to re-run <code>boot-update</code> every time you modify your <code>/etc/boot.conf</code> file or add new kernels to your system. This will regenerate {{c|/boot/grub/grub.cfg}} so that you will have new kernels available in your GRUB boot menu, the next time you reboot.
You only need to run <code>grub-install</code> when you first install Funtoo Linux, but you need to re-run <code>ego boot update</code> every time you modify your <code>/etc/boot.conf</code> file or add new kernels to your system. This will regenerate {{c|/boot/grub/grub.cfg}} so that you will have new kernels available in your GRUB boot menu, the next time you reboot.

Revision as of 03:53, March 21, 2019

Other languages:

Install Guide: Bootloader

Install Guide, Chapter 14 < Prev Next >

These install instructions show you how to use GRUB to boot using BIOS (legacy) or UEFI.

ego boot update (ego boot) is installed by default, but GRUB is not, as it is not required for all Funtoo Linux systems (such as containers, for example.) But for booting on bare metal, it is the recommended and best-supported boot loader, so you will need to emerge it:

(chroot) # emerge -av grub

Next, edit /etc/boot.conf using nano and specify "Funtoo Linux genkernel" as the default setting at the top of the file, replacing "Funtoo Linux". Also, if you're not using memtest86+ remove the entry in boot.conf to avoid errors.

/etc/boot.conf should now look like this:

   /etc/boot.conf
boot {
	generate grub
	default "Funtoo Linux" 
	timeout 3 
}

"Funtoo Linux" {
	kernel bzImage[-v]
}

"Funtoo Linux genkernel" {
	kernel kernel[-v]
	initrd initramfs[-v]
	params += real_root=auto rootfstype=auto
}

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) # ego 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) # mount -o remount,rw /sys/firmware/efi/efivars
(chroot) # grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ego boot update

For x86-32bit systems:

(chroot) # mount -o remount,rw /sys/firmware/efi/efivars
(chroot) # grub-install --target=i386-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ego boot update

First Boot, and in the future...

OK -- you are almost ready to boot!

You only need to run grub-install when you first install Funtoo Linux, but you need to re-run ego 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.