Difference between pages "Form:Subarch" and "Package:Boot-Update"

(Difference between pages)
 
 
Line 1: Line 1:
<noinclude>
+
{{Ebuild
This is the 'Subarch' form.
+
|Summary=Funtoo Core Boot Framework for global boot loader configuration
To add a page with this form, enter the page name below;
+
|CatPkg=sys-boot/boot-update
if a page with that name already exists, you will be sent to a form to edit that page.
+
|Maintainer=Drobbins
 +
|Repository=Funtoo Overlay
 +
|Organization=Funtoo Technologies
 +
|Overlay=Funtoo
 +
}}
 +
Funtoo boot-update provides a unified mechanism for configuring the GRUB 1.9x ({{Package|sys-boot/grub}}) and GRUB 0.97 ({{Package|sys-boot/grub-legacy}}) boot loaders. It is the recommended, official way to configure Funtoo Linux systems for booting.
  
{{#forminput:Subarch}}
+
== Current Version ==
  
</noinclude><includeonly>
+
* {{Package|sys-boot/boot-update}}
  
__NOTITLE__
+
== Man Pages ==
 +
Consult the following man pages for detailed, up-to-date information on configuration file settings and command-line arguments:
  
{{{for template|Subarch}}}
+
* boot-update(8)
 +
* boot.conf(5)
  
{{TableStart}}
+
{{:Install/BootLoader}}
<tr><td>subarch</td><td>{{{field|subarch|mandatory}}}</td></tr>
+
<tr><td>CHOST</td><td>{{{field|CHOST|mandatory}}}</td></tr>
+
<tr><td>CFLAGS</td><td>{{{field|CFLAGS|mandatory}}}</td></tr>
+
<tr><td>USE</td><td>{{{field|USE|list}}}</td></tr>
+
<tr><td>CPU Features</td><td>{{{field|property=CPU Features|input type=checkboxes|default=low-power}}}</td></tr>
+
<tr><td>Description</td><td>{{{field|Description|input type=textarea}}}</td></tr>
+
{{TableEnd}}
+
  
{{{end template}}}
+
=== GRUB 0.97 (grub-legacy) Quick Start ===
  
{{{standard input|free text|rows=20}}}
+
If using <code>sys-boot/grub-legacy-0.97</code>, perform the following steps:
  
{{{standard input|summary}}}
+
* Partition disk using MBR partitions '''(GPT not supported)'''
 +
* Install kernel/initrd to <code>/boot</code>
  
{{{standard input|minor edit}}} {{{standard input|watch}}}
+
<console>
 +
###i## emerge sys-boot/boot-update
 +
###i## emerge ">=sys-boot/grub-legacy-0.97-r11"
 +
###i## grub-install-legacy /dev/sda
 +
</console>
 +
Due to an issue with <code>grub-legacy</code>, you may see the following message:
 +
<console>
 +
###i## grub-install-legacy /dev/sda
 +
The file /boot/grub-legacy/stage1 not read correctly.
 +
</console>
 +
Should you receive this message, you will have to install <code>grub-legacy</code> from the grub shell.
 +
Assuming <code>/boot</code> is the partition <code>/dev/sda1</code> and you want to install grub to the MBR, you would run the following:
 +
<console>
 +
###i## grub-legacy
 +
root (hd0,0)
 +
setup (hd0)
 +
quit
 +
</console>
 +
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:
 +
<console>
 +
###i## info grub-legacy
 +
</console>
  
{{{standard input|save}}} {{{standard input|preview}}} {{{standard input|changes}}} {{{standard input|cancel}}}
+
Ensure that <code>/etc/fstab</code> is correct, and edit <code>/etc/boot.conf</code> to reflect your installation.
</includeonly>
+
Ensure a <code>generate grub-legacy</code> setting in the <code>boot</code> section. Then run:
 +
 
 +
<console>
 +
###i## boot-update
 +
</console>
 +
This will auto-generate the <code>/boot/grub-legacy/grub.conf</code> required for booting. Note that <code>grub-legacy-0.97-r11</code> and later stores <code>grub.conf</code> in the <code>/boot/grub-legacy</code> directory.
 +
 
 +
Re-run <code>boot-update</code> every time your available kernels / initrds or <code>/etc/boot.conf</code> configuration changes.
 +
 
 +
[[Category:Projects]]
 +
[[Category:Funtoo features]]
 +
{{EbuildFooter}}

Revision as of 18:18, January 11, 2015

sys-boot/boot-update


Current Maintainer(s):Daniel Robbins
Source Repository:Funtoo Overlay

Summary: Funtoo Core Boot Framework for global boot loader configuration


News

Drobbins

RSS/Atom Support

You can now follow this news feed at http://www.funtoo.org/news/atom.xml .
10 February 2015 by Drobbins
Drobbins

Creating a Friendly Funtoo Culture

This news item details some recent steps that have been taken to help ensure that Funtoo is a friendly and welcoming place for our users.
2 February 2015 by Drobbins
Mgorny

CPU FLAGS X86

CPU_FLAGS_X86 are being introduced to group together USE flags managing CPU instruction sets.
31 January 2015 by Mgorny
View More News...

Boot-Update

Tip

This is a wiki page. To edit it, 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 (sys-boot/grub (package not on wiki - please add)) and GRUB 0.97 (sys-boot/grub-legacy (package not on wiki - please add)) 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:

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
# emerge sys-boot/boot-update
# emerge ">=sys-boot/grub-legacy-0.97-r11"
# grub-install-legacy /dev/sda

Due to an issue with grub-legacy, you may see the following message:

# 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:

# 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:

# 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:

# 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.