Difference between pages "Template:ArticleFooter" and "Install/BootLoader"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
<includeonly>{{#vardefine:Next|{{#show:{{FULLPAGENAME}}|?Next in Series|link=none}}}}
<noinclude>
{{#if:{{#var:Next|}}|
{{InstallPart|boot loader configuration}}
=== Next >>> ===
</noinclude>
'''Read the next article in this series: [[{{#var:Next}}]]'''
=== 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.
{{Tip|[[Support Funtoo]] and help us grow! '''Donate $15 per month and get a free SSD-based [[Funtoo Hosting|Funtoo Virtual Container]].'''}}
 
</div><div class="col-xs-12 col-md-3">{{#vardefine:Summary|{{#show:{{FULLPAGENAME}}|?Summary}}}}{{#vardefine:Author|{{#show:{{FULLPAGENAME}}|?Author|link=none}}}}{{#vardefine:Icon|{{#show:{{FULLPAGENAME}}|?Icon}}}}{{#if:{{#var:Author|}}|{{#widget:ArticleBio|body={{#show: {{#var:Author}} | ?Bio }}|user={{#var:Author|}}|icon_url={{#if:{{#var:Icon|}}|{{filepath:{{#sub:{{#var:Icon}}|5}}|80}}|http://www.gravatar.com/avatar/{{#show: {{FULLPAGENAME}} | ?Gravatar MD5}}/?s=80&d=retro&r=g}}}}}}
First, emerge <code>boot-update</code>. This will also cause <code>grub-2</code> and {{c|efibootmgr}} to be merged, since they are dependencies:
<div class="bs-head" style="text-decoration: underline; margin-bottom: 15px;">Got Funtoo?</div>
 
Have you installed Funtoo Linux yet? Discover the power of a from-source meta-distribution optimized for your hardware! See our [[Funtoo Linux Installation|installation instructions]] and [[Subarches|browse our CPU-optimized builds]].
<console>
<div class="bs-head" style="text-decoration: underline; margin-bottom: 15px;">More Articles</div>
(chroot) # ##i##emerge boot-update
Browse all our Linux-related articles, below:
</console>
{{#ask:[[Category:Articles]]
 
|format=category
Then, edit <code>/etc/boot.conf</code> using {{c|nano}} and specify "<code>Funtoo Linux genkernel</code>" as the <code>default</code> setting at the top of the file, replacing <code>"Funtoo Linux"</code>.
|link=all
 
|headers=show
<code>/etc/boot.conf</code> should now look like this:
|searchlabel=... further results
 
|columns=1
<pre>
}}
boot {
__NOEDITSECTION__
generate grub
</div></div></div>
default "Funtoo Linux genkernel"
[[Category:Articles]]</includeonly>
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
}
</pre>
 
If you are booting a custom or non-default kernel, please read <code>man boot.conf</code> 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 {{c|/boot/grub/grub.cfg}} configuration file that GRUB will use for booting:
 
<console>
(chroot) # ##i##grub-install --target=i386-pc --no-floppy /dev/sda
(chroot) # ##i##boot-update
</console>
 
==== New School (UEFI) Boot Entry ====
 
If you're using "new school" UEFI booting, one 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:
 
<console>
(chroot) # ##i##grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ##i##boot-update
</console>
 
For x86-32bit systems:
 
<console>
(chroot) # ##i##grub-install --target=i386-efi --efi-directory=/boot --bootloader-id="Funtoo Linux [GRUB]" --recheck /dev/sda
(chroot) # ##i##boot-update
</console>
 
==== In the future... ====
 
OK -- you are 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 when you  reboot.

Revision as of 04:01, January 3, 2015


   Note

This is a template that is used as part of the Installation instructions which covers: boot loader configuration. Templates are being used to allow multiple variant install guides that use most of the same re-usable parts.


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, one 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

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 when you reboot.