mirror of
https://pagure.io/fedora-docs/quick-docs.git
synced 2024-11-28 14:56:35 +00:00
125 lines
3.2 KiB
Text
125 lines
3.2 KiB
Text
= Using the GRUB2 boot prompt
|
|
[[using-the-grub-2-boot-prompt]]
|
|
|
|
If improperly configured, *GRUB2* may fail to load and subsequently drop
|
|
to a boot prompt. To boot into the system, proceed as follows:
|
|
|
|
. List the drives which *GRUB2* sees:
|
|
+
|
|
----
|
|
grub2> ls
|
|
----
|
|
|
|
. Examine the output to understand the partition table of the `/dev/sda` device. The following example shows a DOS partition table with three partitions:
|
|
+
|
|
----
|
|
(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1)
|
|
----
|
|
+
|
|
A GPT partition table of the `/dev/sda` device with four partitions could look like this:
|
|
+
|
|
----
|
|
(hd0) (hd0,gpt4) (hd0,gpt3) (hd0,gpt2) (hd0,gpt1)
|
|
----
|
|
|
|
. Probe each partition of the drive and locate your `vmlinuz` and `initramfs` files.
|
|
+
|
|
----
|
|
ls (hd0,1)/
|
|
----
|
|
+
|
|
The outcome of the previous command will list the files on `/dev/sda1`. The partition that contains the `/boot` directory is the correct one. There you will search for the full names of the `vmlinuz` and `initramfs` files.
|
|
|
|
. Pre-boot procedure for BTRFS filesystems.
|
|
+
|
|
* On BIOS systems:
|
|
+
|
|
Set *GRUB2* root to your boot partition. If your boot partition is `(hd0,msdos1)`, the command will be:
|
|
+
|
|
----
|
|
set root=(hd0,msdos1)
|
|
----
|
|
Next, select the desired kernel. Set the root partition (e.g. `/dev/sda2`):
|
|
+
|
|
----
|
|
linux /vmlinuz-5.14.10-300.fc35.x86_64 root=/dev/sda2 ro rootflags=subvol=root
|
|
----
|
|
+
|
|
|
|
* On UEFI systems:
|
|
+
|
|
Set *GRUB2* root to your EFI system partition. If your EFI partition is `(hd0,gpt1)`, the command will be:
|
|
+
|
|
----
|
|
set root=(hd0,gpt1)
|
|
----
|
|
Next, select the desired kernel. Find the path to `vmlinuz` and set the root partition (e.g. `/dev/sda3`):
|
|
+
|
|
----
|
|
linux (hd0,gpt2)/vmlinuz-5.14.10-300.fc35.x86_64 root=/dev/sda3 ro rootflags=subvol=root
|
|
----
|
|
+
|
|
Select the RAM filesystem that will be loaded:
|
|
+
|
|
----
|
|
initrd (hd0,gpt2)/initramfs-5.14.10-300.fc35.x86_64.img
|
|
----
|
|
+
|
|
|
|
. Pre-boot procedure for LVM filesystems.
|
|
+
|
|
Load the `xfs` and `lvm` modules if they are not already loaded (check this with `lsmod`):
|
|
+
|
|
----
|
|
insmod xfs
|
|
insmod lvm
|
|
----
|
|
+
|
|
|
|
* On BIOS systems:
|
|
+
|
|
Set *GRUB2* root to your boot partition. If your boot partition is `(hd0,msdos1)`, the command will be:
|
|
+
|
|
----
|
|
set root=(hd0,msdos1)
|
|
----
|
|
Next, select the desired kernel. Set `root` to the `lvm` corresponding to the root directory:
|
|
+
|
|
----
|
|
linux /vmlinuz-3.0.0-1.fc16.i686 root=/dev/mapper/fedora_localhost--live-root
|
|
----
|
|
+
|
|
Select the RAM filesystem that will be loaded:
|
|
+
|
|
----
|
|
initrd /initramfs-3.0.0-1.fc16.i686.img
|
|
----
|
|
+
|
|
|
|
* On UEFI systems:
|
|
+
|
|
Set *GRUB2* root to your EFI system partition. If your EFI partition is `(hd0,gpt1)`, the command will be:
|
|
+
|
|
----
|
|
set root=(hd0,gpt1)
|
|
----
|
|
Next, select the desired kernel. Find the path to `vmlinuz` and set `root` to the `lvm` corresponding to the root directory:
|
|
+
|
|
----
|
|
linux (hd0,gpt2)/vmlinuz-3.0.0-1.fc16.i686 root=/dev/mapper/fedora_localhost--live-root
|
|
----
|
|
+
|
|
Select the RAM filesystem that will be loaded:
|
|
+
|
|
----
|
|
initrd (hd0,gpt2)/initramfs-3.0.0-1.fc16.i686.img
|
|
----
|
|
+
|
|
|
|
. Boot with the selected settings.
|
|
+
|
|
----
|
|
grub> boot
|
|
----
|
|
|
|
. To restore the bootloader's functionality, regenerate the *GRUB2* configuration file and reinstall the bootloader into the MBR, as described in xref:adding-other-operating-systems-grub2[Adding other operating systems to the *GRUB2* menu].
|