GRUB: Difference between revisions

From Q
Jump to navigation Jump to search
Tgurr (talk | contribs)
No edit summary
Tgurr (talk | contribs)
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
== GRUB 2 ==
== Packages ==
 
=== Packages ===


Exherbo: {{Package|sys-boot/grub}}
Exherbo: {{Package|sys-boot/grub}}
Line 12: Line 10:
</pre>
</pre>


=== Installation ===
== Installation ==
{{Root|mount /boot}}
=== EFI ===
 
{{Root|mount /boot/efi}}
 
{{Root|<nowiki>grub-install --boot-directory=/boot/efi/EFI --no-floppy --recheck</nowiki>}}
{{Root|efibootmgr --create --gpt --disk /dev/sda --part 1 --write-signature --label "Linux" --loader "\\EFI\\grub\\grub.efi"}}
 
{{Root|efibootmgr}}


{{Code|Assuming following GPT partition layout|
<pre>
<pre>
BootCurrent: 0001
/dev/sda1 200 MiB /boot/efi EF00 vfat EFI System Partition
BootOrder: 0004,0000,0001,0002,0003
/dev/sda2 500 MiB /boot 8300 ext4 Linux filesystem
Boot0000* EFI SCSI Hard Drive
/dev/sda3 512 MiB 8200 swap Linux swap
Boot0001* EFI IDE CD/DVD Drive
/dev/sda4 25  GiB / 8300 ext4 Linux filesystem
Boot0002* EFI Network
Boot0003* EFI Internal Shell (Unsupported option)
Boot0004* Linux
</pre>
</pre>
}}


== SET ACTIVE ==
{{Root|mount /boot}}


{{Root|efibootmgr -b 4 -a}}
{{Root|mount /boot/efi}}


== DELETE ==
{{Root|<nowiki>grub-install --efi-directory=/boot/efi --no-floppy --recheck</nowiki>}}


{{Root|efibootmgr -b 4 -B}}
==== efibootmgr ====


{{Root|efibootmgr}}
{{Root|efibootmgr}}
Line 49: Line 39:
Boot0002* EFI Network
Boot0002* EFI Network
Boot0003* EFI Internal Shell (Unsupported option)
Boot0003* EFI Internal Shell (Unsupported option)
Boot0004* exherbo
</pre>
</pre>


==== Standard, single drive GPT/MBR (SATA/IDE/SCSI) ====
===== SET ACTIVE =====
 
{{Root|grub-install --recheck --no-floppy /dev/sda}}


=== Configuration ===
{{Root|efibootmgr --bootnum 0004 --active}}


{{Note|Manual grub2 configuration should always happen in {{Path|/etc/default/grub}} and {{Path|/etc/grub.d/40_custom}}.}}
===== DELETE =====


{{File|/etc/default/grub|
{{Root|efibootmgr --bootnum 0004 --delete-bootnum}}
<pre>
GRUB_DISTRIBUTOR="Exherbo"
GRUB_DEFAULT="Exherbo GNU/Linux, current kernel"
</pre>
}}


==== Standard, single drive GPT (SATA/IDE/SCSI) ====
=== GPT/MBR ===


{{Code|Assuming following GPT partition layout|
{{Code|Assuming following GPT partition layout|
Line 77: Line 61:
}}
}}


==== Standard, single drive MBR (SATA/IDE/SCSI) ====
{{Root|mount /boot}}


{{Code|Assuming following MBR partition layout|
{{Root|grub-install --recheck --no-floppy /dev/sda}}
<pre>
/dev/sda1 32  MiB /boot ext2 Boot
/dev/sda2 512 MiB swap ext4 Swap
/dev/sda3 25  GiB / swap Root
</pre>
}}


=== Generate grub.cfg ===
== Generate grub.cfg ==


{{Warning|Running the following command will overwrite any changes in grub.cfg you manually made.}}
{{Warning|Running the following command will overwrite any changes in grub.cfg you manually made.}}


EFI:
{{Root|grub-mkconfig -o /boot/grub/grub.cfg}}
{{Root|grub-mkconfig -o /boot/efi/EFI/grub/grub.cfg}}


NON EFI:
== Configuration ==
{{Root|grub-mkconfig -o /boot/grub/grub.cfg}}


{{Root|umount /boot}}
{{Note|Manual grub2 configuration should always happen in {{Path|/etc/default/grub}} and/or {{Path|/etc/grub.d/40_custom}}.}}


=== Optional: Additional Kernel Parameters ===
=== Optional: Additional Kernel Parameters ===

Latest revision as of 12:16, 11 May 2017

Packages

Exherbo: sys-boot/grub

Gentoo: sys-boot/grub

/etc/portage/make.conf

GRUB_PLATFORMS="efi-64"

Installation

EFI

Code: Assuming following GPT partition layout
/dev/sda1	200 MiB	/boot/efi	EF00	vfat		EFI System Partition
/dev/sda2	500 MiB	/boot		8300	ext4		Linux filesystem
/dev/sda3	512 MiB			8200	swap		Linux swap
/dev/sda4	25  GiB	/		8300	ext4		Linux filesystem
# mount /boot
# mount /boot/efi
# grub-install --efi-directory=/boot/efi --no-floppy --recheck

efibootmgr

# efibootmgr
BootCurrent: 0001
BootOrder: 0004,0000,0001,0002,0003
Boot0000* EFI SCSI Hard Drive
Boot0001* EFI IDE CD/DVD Drive
Boot0002* EFI Network
Boot0003* EFI Internal Shell (Unsupported option)
Boot0004* exherbo
SET ACTIVE
# efibootmgr --bootnum 0004 --active
DELETE
# efibootmgr --bootnum 0004 --delete-bootnum

GPT/MBR

Code: Assuming following GPT partition layout
/dev/sda1	1   MiB		EF02	BIOS boot	BIOS boot partition
/dev/sda2	100 MiB	/boot	8300	ext4		Linux filesystem
/dev/sda3	512 MiB		8200	swap		Linux swap
/dev/sda4	25  GiB	/	8300	ext4		Linux filesystem
# mount /boot
# grub-install --recheck --no-floppy /dev/sda

Generate grub.cfg

Warning: Running the following command will overwrite any changes in grub.cfg you manually made.
# grub-mkconfig -o /boot/grub/grub.cfg

Configuration

Note: Manual grub2 configuration should always happen in /etc/default/grub and/or /etc/grub.d/40_custom.

Optional: Additional Kernel Parameters

File: /etc/default/grub
GRUB_CMDLINE_LINUX="acpi=off"

Regenerate your grub.cfg for the changes to take effect.

Optional: Theme

File: /etc/default/grub
GRUB_THEME=/boot/efi/EFI/grub/themes/starfield/theme.txt
GRUB_TERMINAL_OUTPUT=gfxterm

If your display resolutions isn't automatically detected you can manually force a specific resolution.

File: /etc/default/grub
GRUB_GFXMODE=1600x1200

Regenerate your grub.cfg for the changes to take effect.

Optional: Serial Console

File: /etc/default/grub
GRUB_TERMINAL=serial
GRUB_SERIAL=COMMAND="serial --unit=0 --speed=57600 --word=8 --parity=no --stop=1"
GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,57600"

Regenerate your grub.cfg for the changes to take effect.

If you want to be able to login to your system via the serial console you need to edit /etc/inittab.

File: /etc/inittab

Uncomment the s0 entry and change the speed to your needs.

# SERIAL CONSOLES
s0:12345:respawn:/sbin/agetty 57600 ttyS0 vt100
#s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100