Unix & Linux Stack Exchange
Q&A for users of Linux, FreeBSD and other Unix-like operating systems
Latest Questions
1
votes
1
answers
1917
views
grub-mkconfig - one Linux kernel, multiple boot entries with different kernel options
GRUB version: 2.04-20 One Linux kernel only; I need to have two GRUB entries to boot the kernel with different set of kernel options. For the time being, after each `grub-mkconfig` or `update-grub2` which produces one entry with `GRUB_CMDLINE_LINUX_DEFAULT` options, I manually add another one with t...
GRUB version: 2.04-20
One Linux kernel only; I need to have two GRUB entries to boot the kernel with different set of kernel options. For the time being, after each
grub-mkconfig
or update-grub2
which produces one entry with GRUB_CMDLINE_LINUX_DEFAULT
options, I manually add another one with the different set.
Is there any way to get two entries of the same kernel with different kernel options (one respecting GRUB_CMDLINE_LINUX_DEFAULT
plus another one) after running grub-mkconfig
or update-grub2
? I suppose some custom script in /etc/grub.d
?
Added bonus, proper way to disable os-prober
? For the time being, I've renamed os-prober
script so that it's not found.
Krackout
(2887 rep)
Jan 27, 2022, 08:43 PM
• Last activity: Jun 29, 2025, 03:05 PM
0
votes
1
answers
199
views
Rocky 9.5 cannot update grub kernel parameters
I've freshly installed Rocky 9.5 as a VM hosted by UTM/qemu on MacOs. It boots and can connect to the network. However, I cannot seem to modify the grub2 configuration to modify kernel parameters. After updating the config, reinstalling grub completely, checking the EFI boot manager, etc, it seems t...
I've freshly installed Rocky 9.5 as a VM hosted by UTM/qemu on MacOs.
It boots and can connect to the network.
However, I cannot seem to modify the grub2 configuration to modify kernel parameters.
After updating the config, reinstalling grub completely, checking the EFI boot manager, etc, it seems that it is just not reading the file at
/boot/efi/EFI/rocky/grub.cfg
I want to have net.ifnames=0 biosdevname=0
permanently added to the default kernel params. After the process below, the params are there but rebooting the machine, they are not shown in /proc/cmdline
.
Any ideas what's going on and how to fix?
--
Process I did:
I started by modifying /etc/default/grub
:
# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rl-swap rd.lvm.lv=rl/root rd.lvm.lv=rl/swap net.ifnames=0 biosdevname=0 rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
Then update the boot partition: grub2-mkconfig -o /boot/grub2/grub.cfg
Confirmed that the changes are put into /boot/efi/EFI/rocky/grub.cfg
:
# grep quiet /boot/efi/EFI/rocky/grub.cfg
set kernelopts="root=/dev/mapper/rl-root ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rl-swap rd.lvm.lv=rl/root rd.lvm.lv=rl/swap net.ifnames=0 biosdevname=0 rhgb quiet "
I also confirmed that the system will boot from the correct partition:
# efibootmgr -v
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0001,0004,0002,0000,0003
Boot0000* UiApp FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(462caa21-7614-4503-836e-8ab6f4662331)
Boot0001* UEFI QEMU DVD-ROM QM00001 PciRoot(0x0)/Pci(0x1f,0x2)/Sata(0,65535,0)N.....YM....R,Y.
Boot0002* UEFI QEMU HARDDISK QM00003 PciRoot(0x0)/Pci(0x1f,0x2)/Sata(1,65535,0)N.....YM....R,Y.
Boot0003* EFI Internal Shell FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1)
Boot0004* rocky HD(1,GPT,b97500fe-6a36-4d95-8d78-7703261cf0f7,0x800,0x12c000)/File(\EFI\rocky\grubx64.efi)
Danny
(653 rep)
Mar 13, 2025, 02:29 PM
• Last activity: Jun 9, 2025, 07:42 AM
1
votes
1
answers
2763
views
/usr/bin/grub-probe: error: failed to get canonical path of `/'
I'm trying to install GRUB from a live USB onto a different drive. While `grub-install` works fine, `grub-mkconfig -o /mnt/boot/grub/grub.cfg` (`/mnt` being the mount-point of the drive I'm installing to) keeps returning an error: ``` /usr/bin/grub-probe: error: failed to get canonical path of `/'....
I'm trying to install GRUB from a live USB onto a different drive. While
grub-install
works fine, grub-mkconfig -o /mnt/boot/grub/grub.cfg
(/mnt
being the mount-point of the drive I'm installing to) keeps returning an error:
/usr/bin/grub-probe: error: failed to get canonical path of `/'.
The advice I found online suggested running update-grub
in a chroot might help, but the same error appears.
My question is twofold:
- How do I resolve this error? Seriously, I need to get this working
- (more importantly) *Why* does this solution fix the issue?
That second part is important because it would be useful for debugging if someone here explained the mechanics of what causes this issue, thus allowing more meaningful debugging in cases where the well-known solutions don't work.
On the off chance that it's somehow meaningful to my issue, the system I'm installing from is a live ISO of Void Musl, and the system I'm installing to is Void Musl with /
encrypted using LUKS, and encrypted /boot
.
NobodySpecial
(11 rep)
Jun 26, 2021, 07:10 AM
• Last activity: May 17, 2025, 08:05 PM
3
votes
1
answers
2677
views
CentOS 7 stuck at grub prompt after upgrading Kernel
I tried to upgrade the Kernel using YUM and when I ran [root@AFIBAMBOO bin]# grub2-mkconfig -o /boot/grub2/grub.cfg No path or device is specified. Usage: grub2-probe [OPTION...] [OPTION]... [PATH|DEVICE] Try 'grub2-probe --help' or 'grub2-probe --usage' for more information. No path or device is sp...
I tried to upgrade the Kernel using YUM and when I ran
[root@AFIBAMBOO bin]# grub2-mkconfig -o /boot/grub2/grub.cfg
No path or device is specified.
Usage: grub2-probe [OPTION...] [OPTION]... [PATH|DEVICE]
Try 'grub2-probe --help' or 'grub2-probe --usage' for more information.
No path or device is specified. Usage: grub2-probe [OPTION...] [OPTION]... [PATH|DEVICE]
Try 'grub2-probe --help' or 'grub2-probe --usage' for more information.
No path or device is specified. Usage: grub2-probe [OPTION...] [OPTION]... [PATH|DEVICE]
Try 'grub2-probe --help' or 'grub2-probe --usage' for more information.
anwar ul hasan
(31 rep)
May 16, 2019, 07:28 PM
• Last activity: Apr 19, 2025, 07:04 PM
0
votes
2
answers
178
views
Changing the screen resolution of GRUB on a VMware virtual machine
I installed Arch Linux on a VMware virtual machine. To launch I use GRUB bootloader. I need to set the resolution for GRUB 16:9: 1366x768 or higher. Using `vbeinfo` (in GRUB) I can see the list of available resolutions. [![vbeinfo list][1]][1] [1]: https://i.sstatic.net/82PmILLT.png When setting the...
I installed Arch Linux on a VMware virtual machine. To launch I use GRUB bootloader.
I need to set the resolution for GRUB 16:9: 1366x768 or higher.
Using
When setting the resolution from the list, everything works fine. But if I set, for example, 1366x768, then when loading GRAB the resolution will be 800x600.
p.s.
I change the resolution of GRUB by adding the parameter
vbeinfo
(in GRUB) I can see the list of available resolutions.

GRUB_GFXMODE=1366x768x32
to config file.
testovich
(49 rep)
Feb 18, 2025, 02:49 PM
• Last activity: Mar 8, 2025, 12:48 PM
1
votes
0
answers
165
views
Kernel options not loaded after updating grub.cfg
[edit: problem solved at the bottom, although I'm still not sure why it happens this way] Distro is Alma Linux 9.5 and kernel is 5.14.0-503.15.1.el9_5.x86_64. This is my first time making edits to the grub configuration so I can add two boot options: transparent_hugepage=never nvme_core.default_ps_m...
[edit: problem solved at the bottom, although I'm still not sure why it happens this way]
Distro is Alma Linux 9.5 and kernel is 5.14.0-503.15.1.el9_5.x86_64. This is my first time making edits to the grub configuration so I can add two boot options: transparent_hugepage=never nvme_core.default_ps_max_latency_us=0.
I added them to /etc/defaults/grub:
GRUB_CMDLINE_LINUX="crashkernel=auto spectre_v2=retpoline rhgb quiet transparent_hugepage=never rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvme_core.default_ps_max_latency_us=0"
and then updated the config:
# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Adding boot menu entry for UEFI Firmware Settings ...
done
and double check the grub.cfg file, where I see these lines (looks good to me):
#
# The kernelopts variable in the grubenv file can be modified using the grubby tool or by
# executing the grub2-mkconfig tool. For the latter, the values of the GRUB_CMDLINE_LINUX
# and GRUB_CMDLINE_LINUX_DEFAULT options from /etc/default/grub file are used to set both
# the kernelopts variable in the grubenv file and the fallback kernelopts variable.
if [ -z "${kernelopts}" ]; then
set kernelopts="root=UUID=8ca827c0-7538-4f54-8acd-0a8306afb937 ro crashkernel=auto spectre_v2=retpoline rhgb quiet transparent_hugepage=never rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvme_core.default_ps_max_latency_us=0 "
fi
But after reboot, I see that transparent hugepages are still enabled (set to always):
# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
so I check the current boot command line and see that the new options were not passed:
# cat /proc/cmdline
BOOT_IMAGE=(hd0,msdos1)/vmlinuz-5.14.0-503.15.1.el9_5.x86_64 root=UUID=8ca827c0-7538-4f54-8acd-0a8306afb937 ro spectre_v2=retpoline rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M
The comment in the grub.cfg file above mentions that grub2-mkconfig will update the grubenv file, I assume it means /boot/grub2/grubenv, but it doesn't include my changes:
# cat /boot/grub2/grubenv
# GRUB Environment Block
kernelopts=root=UUID=8ca827c0-7538-4f54-8acd-0a8306afb937 ro crashkernel=auto spectre_v2=retpoline rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau
boot_success=1
boot_indeterminate=0
saved_entry=ee28a0c339ce4ee4b63e2afc3f9ce1ac-5.14.0-503.15.1.el9_5.x86_64
####################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################
So I tried adding the options with grub2-editenv (not sure if this is a good idea):
# grub2-editenv - set "kernelopts=root=UUID=8ca827c0-7538-4f54-8acd-0a8306afb937 ro crashkernel=auto spectre_v2=retpoline rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau transparent_hugepage=never nvme_core.default_ps_max_latency_us=0"
# grub2-editenv - list
kernelopts=root=UUID=8ca827c0-7538-4f54-8acd-0a8306afb937 ro crashkernel=auto spectre_v2=retpoline rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau transparent_hugepage=never nvme_core.default_ps_max_latency_us=0
boot_success=1
boot_indeterminate=0
saved_entry=ee28a0c339ce4ee4b63e2afc3f9ce1ac-5.14.0-503.15.1.el9_5.x86_64
But the contents of /proc/cmdline are the same as before.
The last thing I notice, but am not sure what to do about it, is the contents of the boot loader entry file is also missing the new options:
# cat /boot/loader/entries/ee28a0c339ce4ee4b63e2afc3f9ce1ac-5.14.0-503.15.1.el9_5.x86_64.conf
title AlmaLinux (5.14.0-503.15.1.el9_5.x86_64) 9.5 (Teal Serval)
version 5.14.0-503.15.1.el9_5.x86_64
linux /vmlinuz-5.14.0-503.15.1.el9_5.x86_64
initrd /initramfs-5.14.0-503.15.1.el9_5.x86_64.img $tuned_initrd
options root=UUID=8ca827c0-7538-4f54-8acd-0a8306afb937 ro spectre_v2=retpoline rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M $tuned_params
grub_users $grub_users
grub_arg --unrestricted
grub_class almalinux
So I'm out of ideas. Any advice on how to successfully update boot options or spotting a mistake I've made will be much appreciated.
Added later:
Well, I was so close. I updated the loader file with
# grubby --update-kernel=DEFAULT --args 'transparent_hugepage=never nvme_core.default_ps_max_latency_us=0'
rebooted, and everything seems to work. Still not sure why that final step was necessary though.
KevinJ
(11 rep)
Jan 31, 2025, 01:51 AM
• Last activity: Jan 31, 2025, 04:24 AM
0
votes
0
answers
114
views
Can GRUB2 be scaled? If so, how? If not, why not?
##### **Rationale** The XOrg 11 and KWin Wayland compositors are able to scale their outputs using 1:1 (integer — an example is 100%) and non-integer (125%) scales. However, I see *no* information online about how to scale GRUB. Instead, all I see are examples of workarounds utilizing the `GRUB_GFXM...
##### **Rationale**
The XOrg 11 and KWin Wayland compositors are able to scale their outputs using 1:1 (integer — an example is 100%) and non-integer (125%) scales. However, I see *no* information online about how to scale GRUB.
Instead, all I see are examples of workarounds utilizing the
GRUB_GFXMODE="$RESOLUTION"
variable to input a lower resolution value than its output device is capable of.
##### **Question**
Consequently, can GRUB2's output be scaled? If so, how (I presume that the relevant variable is undocumented)? If not, why not (I presume that the functionality is merely absent)?
##### **Duplicates**
I have asked for information specific to my OS/distribution (Fedora) at [discussion.fedoraproject.org/t/138655
](https://discussion.fedoraproject.org/t/can-grub2-be-scaled-if-so-how/138655/1#p-363681-rationale-1) . However, because [reddit.com/r/EndeavourOS/comments/ysx08r
](https://www.reddit.com/r/EndeavourOS/comments/ysx08r/is_there_a_way_to_make_grub_scale_to_2x200/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button) hasn't yet been answered, I'm not expecting any useful responses there.
SE is my last port of call.
RokeJulianLockhart
(541 rep)
Nov 28, 2024, 11:49 PM
2
votes
1
answers
2104
views
The grub2-mkconfig does not propagate renamed root logical volume on RHEL 9
On the RHEL 9.3 I have renamed the logical volume (LV) `/dev/lvm01/root` to `/dev/lvm01/root.vol`. I did everything to make the new name correctly recognized: - changed `/etc/fstab` entry - reloaded systemd configuration - remounted / And I also modified the `/etc/default/grub` entry: GRUB_CMDLINE_L...
On the RHEL 9.3 I have renamed the logical volume (LV)
/dev/lvm01/root
to /dev/lvm01/root.vol
. I did everything to make the new name correctly recognized:
- changed /etc/fstab
entry
- reloaded systemd configuration
- remounted /
And I also modified the /etc/default/grub
entry:
GRUB_CMDLINE_LINUX="root=/dev/mapper/lvm01-root.vol ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/lvm01-swap.vol rd.lvm.lv=lvm01/root.vol rd.lvm.lv=lvm01/swap.vol"
Then I expected the grub2-mkconfig -o /boot/grub2/grub.cfg
to do the rest of the job and rebooted. But the system ended up with dracut message that the root partition is not found (or something like that).
After short investigation, I realized the kernel parameters had not been modified as expected. The manual change helped to get the OS booted. Interesting that the /boot/grub2/grub.cfg
was updated. But what was not updated was the /boot/loader/entries/*
files. And it was the issue.
Jaroslav Kucera
(10882 rep)
Nov 29, 2023, 07:04 PM
• Last activity: Jun 24, 2024, 12:39 PM
0
votes
0
answers
878
views
grub2: which /boot/efi/EFI/*/grub.cfg does it read?
I have a dualboot linux, fedora and almalinux. After installing almalinux, I couldn't see the fedora's kernel versions, just multiple entries of Fedora. Most of the links I found are wrong. * https://docs.fedoraproject.org/en-US/quick-docs/grub2-bootloader/#_setting_default_entry_for_grub2 They tell...
I have a dualboot linux, fedora and almalinux.
After installing almalinux, I couldn't see the fedora's kernel versions, just multiple entries of Fedora.
Most of the links I found are wrong.
* https://docs.fedoraproject.org/en-US/quick-docs/grub2-bootloader/#_setting_default_entry_for_grub2
They tell me to use
/boot/grub2/grub.cfg
but this entry is only for BIOS-based boot, not EFI.
* https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-working_with_the_grub_2_boot_loader#sec-Introduction_to_GRUB_2
Tells clearly we should use /boot/efi/EFI/*/grub.cfg
.
Which one should I use in the case where I have multi linux? /boot/efi/EFI/almalinux/grub.cfg
or /boot/efi/EFI/fedora/grub.cfg
?
What if I have multiple instances of fedora?
無名前
(729 rep)
Apr 8, 2024, 02:05 AM
1
votes
1
answers
419
views
Moving /boot, how to update grub to find new location /boot/grub2/i386-pc/{core,boot}.img
Grub2 systems hard-code the location of stage2 files. This info is stored in the bootloader partition. I understand that grub-install will write this and more. My question is how does grub2-install figure out where the /boot directory (it's own partition) happens to be. grub-mkconfig can figure this...
Grub2 systems hard-code the location of stage2 files. This info is stored in the bootloader partition. I understand that grub-install will write this and more.
My question is how does grub2-install figure out where the /boot directory (it's own partition) happens to be. grub-mkconfig can figure this out, however, it does not appear that grub-install invokes grub-mkconfig.
I'd really like an in-depth explanation of how this is figured out.
Bottom line question is: "What is proper way to update the bootloader code in the mbr/bios-boot partition when location of /boot changes"?
Pointers to official documentation or wikis would be appreciated.
Steve H
(15 rep)
Apr 5, 2024, 01:38 AM
• Last activity: Apr 6, 2024, 02:18 AM
2
votes
0
answers
2577
views
Updated GRUB on Arch Linux, tried fix but GRUB gives error: Symbol grub_debug_malloc not found
I posted this same post on r/archlinux but have not gotten much results. I updated Arch Linux (vanilla), but now GRUB boots into firmware.  (I am sure a lot of you guys have known this issue, and I did know about this prior to updating, but when I updated it, the fix didn't work in my...
I posted this same post on r/archlinux but have not gotten much results.
I updated Arch Linux (vanilla), but now GRUB boots into firmware.
(I am sure a lot of you guys have known this issue,
and I did know about this prior to updating,
but when I updated it, the fix didn't work in my environment.)
I am currently posting this inside of the EndeavourOS Live environment.
I have chrooted:
sudo mount /mnt
sudo mount /mnt/boot/efi
sudo arch-chroot /mnt
(Replaced `` with my root partition
and `` with my EFI partition
because, obviously, I am running UEFI.)
and I have reinstalled GRUB thanks to this post by sradjoker
on the EndeavourOS Forum.
grub-install
grub-mkconfig -o /boot/grub/grub.cfg
and GRUB gives this error:
error: symbol grub_debug_malloc not found
GRUB then puts me in GRUB rescue.
As I understand it, some files are missing.
I tried this same process multiple times, but it still did not work.
Is there a fix? Do I need to reinstall Arch Linux?
"The latest grub package update needs some manual intervention"
user541458
(21 rep)
Sep 14, 2022, 11:25 PM
• Last activity: Apr 4, 2024, 08:24 PM
1
votes
1
answers
1130
views
modprobe: FATAL: Module dm_mod not found in directory /lib/modules/6.6.16
I have built a custom kernel and given a CONFIG_LOCALVERSION of `-grant-nvme` during compilation. However, when I try to boot into it, no matter what I do, grub seems to look for `/lib/modules/6.6.16` and I cannot for the life of me figure out where it is pulling 6.6.16 from. It should be looking in...
I have built a custom kernel and given a CONFIG_LOCALVERSION of
-grant-nvme
during compilation. However, when I try to boot into it, no matter what I do, grub seems to look for /lib/modules/6.6.16
and I cannot for the life of me figure out where it is pulling 6.6.16 from. It should be looking in 6.6.16-grant-nvme
. I have checked a dozen times that CONFIG_LOCALVERSION is set correctly during compilation, the boot entries for GRUB have it set correctly, the correct name exists both in /lib/modules and /boot/vmlinuz-6.6.16-grant-nvme yet for some reason GRUB persists in booting to the folder 6.6.16 vanilla.
Where is it pulling that from? How do I direct it to the correct folder?
Full error is:
[ 6.174579] systemd: Failed to start Load Kernel Modules.
[FAILED] Failed to start Load Kernel Modules.
[ 6.494351] dracut-pre-udev: modprobe: FATAL: Module dm_mod not found in directory /lib/modules/6.6.16
Sure enough, when I drop to dracut, I see:
dracut:/# ls /lib/modules
6.6.16-grant-nvme
## Update
I also tried dracut --force --kver 6.6.16-grant-nvme /boot/initramfs-6.6.16-grant-nvme.img
## Update 2
Came back to this with fresh eyes today and ran strings on vmlinuz
. Here is what is odd to me; the kernel build string is 6.6.16 (root@nvme.lan) (gcc (GCC) 11.4.1 20230605 (Red Hat 11.4.1-2), GNU ld version 2.35.2-42.el9) #2 SMP PREEMPT_DYNAMIC Thu Feb 15 08:10:42 EST 2024
This clearly does not have my CONFIG_LOCALVERSION
. I am going to go back through the kernel build process again and see if somehow it didn't take. The thing is, the folder names in /boot are correct which I can only imagine happens if it is reading CONFIG_LOCALVERSION
Grant Curell
(769 rep)
Feb 23, 2024, 08:57 PM
• Last activity: Feb 26, 2024, 02:41 PM
1
votes
3
answers
2488
views
How do I start a Windows 10 partition on a MBR partitioned disk on a system that otherwise uses GPT/UEFI GRUB?
Okay, let me explain. This is a UEFI computer. It has two disks. The primary disk is partitioned with GPT and boots via GRUB2 to an Arch Linux partition. The secondary disk is partitioned with MBR and only boots if I disable the primary disk in the UEFI setup utility. The secondary disk has a partit...
Okay, let me explain. This is a UEFI computer. It has two disks. The primary disk is partitioned with GPT and boots via GRUB2 to an Arch Linux partition. The secondary disk is partitioned with MBR and only boots if I disable the primary disk in the UEFI setup utility. The secondary disk has a partition with Windows 10. My question is how do I add a menu entry to the primary GRUB2 configuration that boots the Windows 10 partition on the secondary disk?
I tried
-mkconfig
with -prober
and it was unable to find the Windows 10 install. There's apparently nothing wrong with the Windows 10 install, since it boots just fine on its own.
I then tried manually adding various menu entries to the grub.cfg but they didn't work. Below are some of the entries that I tried.
menuentry "Windows 10 (loader) (on /dev/sda3)" {
insmod part_msdos
insmod ntfs
insmod ntldr
ntldr (hd0,msdos3)/bootmgr
}
menuentry "windows 10 (loader) (on /dev/sda3) 2" {
insmod part_msdos
insmod ntfs
chainloader (hd0,msdos3)+1
}
menuentry "Windows 10 (loader) (on /dev/sda3) 3" {
insmod part_msdos
insmod ntfs
chainloader (hd0,msdos3)/Windows/Boot/EFI/bootmgfw.efi
}
The most successful one is the last one which apparently boots to the EFI FW program but gives a BCD error (which is not present when booting normally.)
Anthony
(111 rep)
Nov 6, 2020, 08:53 PM
• Last activity: Feb 25, 2024, 01:16 PM
2
votes
1
answers
1711
views
Repair Fedora GRUB after grub2-mkconfig gone wrong
I was trying to enable fractional scaling in Fedora 39 using ChatGPT and he recommended the following: # NVIDIA's proprietary driver requires DRM KMS to be disabled for Wayland to work. # Edit the file /etc/default/grub and ensure the parameter nvidia-drm.modeset=1 is not set. # If it is, change it...
I was trying to enable fractional scaling in Fedora 39 using ChatGPT and he recommended the following:
# NVIDIA's proprietary driver requires DRM KMS to be disabled for Wayland to work.
# Edit the file /etc/default/grub and ensure the parameter nvidia-drm.modeset=1 is not set.
# If it is, change it to nvidia-drm.modeset=0 or remove it. Then update the grub configuration with:
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
I did so and ran the command, only to find my GRUB Menu only showing me the Windows Boot Manager. I can boot into Windows without problems, but now GRUB cannot find Fedora.
**Solution I am trying**
I created a USB bootable drive with Fedora and, after doing a quick Google search (and more ChatGPT, besides being the culprit), I stumbled upon the following plausible solution (with my
/dev
partitions already inputted):
# Mount the root filesystem
sudo mount /dev/nvme0n1p7 /mnt/root
# Mount the EFI partition
sudo mount /dev/nvme0n1p6 /mnt/root/boot/efi
# Bind-mount the virtual filesystems
for dir in /dev /proc /sys /run; do
sudo mount --bind $dir /mnt/root$dir
done
With that /mnt
set up, I run sudo chroot /mnt
, which worked as intented. I edited my /etc/default/grub
file back to how it originally was, and then I tried to re-generate my grub.cfg
file again with the command: grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
. Nevertheless, I keep getting the following error: /usr/sbin/grub2-probe: error: cannot find a device for / (is /dev mounted?).
. I have tried several combinations of the mounting procedure without success, such as this one:
sudo mount --bind /dev /mnt/root/dev
sudo mount --bind /dev/pts /mnt/root/dev/pts
sudo mount --bind /dev/shm /mnt/root/dev/shm
sudo mount --bind /dev/disk /mnt/root/dev/disk
sudo mount --bind /proc /mnt/root/proc
sudo mount --bind /sys /mnt/root/sys
sudo mount --bind /run /mnt/root/run
I also tried to follow this guide , which attempts to solve a similar problem, and there, the command works. I don't know what I could be doing wrong. Any help is appreciated!
**Output of lsblk**
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 845151 843104 411.7M EFI System
/dev/nvme0n1p2 845824 878591 32768 16M Microsoft reserved
/dev/nvme0n1p3 878592 783736831 782858240 373.3G Microsoft basic data
/dev/nvme0n1p4 994082816 997033681 2950866 1.4G Windows recovery environmen
/dev/nvme0n1p5 997033984 1000214527 3180544 1.5G Windows recovery environmen
/dev/nvme0n1p6 783736832 785833983 2097152 1G EFI System
/dev/nvme0n1p7 785833984 977303551 191469568 91.3G Linux filesystem
/dev/nvme0n1p8 977303552 994080767 16777216 8G Linux swap
Camilo Martínez M.
(141 rep)
Jan 15, 2024, 03:00 AM
• Last activity: Jan 15, 2024, 10:47 PM
1
votes
1
answers
1675
views
update-grub ignoring GRUB_GFXMODE only
I uncommented `/etc/default/grub` and changed to following: ``` GRUB_GFXMODE=2560x1440x32 ``` Then, ran `sudo update-grub` without issues. Now, the `/boot/grub/grub.cfg` still contains: ``` ... if loadfont $font ; then set gfxmode=1280x720,1280x800,auto load_video ... ``` As expected, the resolution...
I uncommented
/etc/default/grub
and changed to following:
GRUB_GFXMODE=2560x1440x32
Then, ran sudo update-grub
without issues.
Now, the /boot/grub/grub.cfg
still contains:
...
if loadfont $font ; then
set gfxmode=1280x720,1280x800,auto
load_video
...
As expected, the resolution was 1280x720.
Before someone asks:
1. I didn't touch /boot/grub/grub.cfg
so far. Only cat
ed it.
2. Modifying any other variable like GRUB_TIMEOUT
in works correctly.
3. 2560x1440 instead of 2560x1440x32 didn't work either.
4. Adding GRUB_GFXPAYLOAD_LINUX=keep
in /etc/default/grub
got updated in /boot/grub/grub.cfg
didn't help.
5. 2560x1440 is my native resolution as confirmed by xrandr and works fine. grub also is fine with it as evident below.
The only thing that currently works is modifying /boot/grub/grub.cfg
on previously mentioned line:
...
if loadfont $font ; then
set gfxmode=2560x1440x32,auto
load_video
...
**TLDR:** update-grub ignores GRUB_GFXMODE when it's updating /boot/grub/grub.cfg
.
Is there a way to get verbose output when running update-grub
?
I am on kali-linux/Debian dual booted with Windows 11.
Anutrix
(441 rep)
Jan 5, 2023, 04:17 AM
• Last activity: Jan 5, 2023, 04:35 AM
1
votes
0
answers
193
views
Use device tree or Kconfig to load a driver
I would like to add and enable a new device in an embedded Linux image. Is it enough to just specify the information in a device tree file and then the driver for the device will get loaded based on the information? Or must I also use Kconfig to enable this?
I would like to add and enable a new device in an embedded Linux image.
Is it enough to just specify the information in a device tree file and then the driver for the device will get loaded based on the information?
Or must I also use Kconfig to enable this?
Engineer999
(1233 rep)
Nov 20, 2022, 05:29 PM
1
votes
1
answers
1884
views
Low resolution grub arch nvidia
This is not a big deal but this has been frustrating for a while now. My graphic card is an RTX 3070 When I boot with grub I am stuck with a very low resolution, probably 1024. I checked the command `videoinfo` in grub prompt and it returns two possible resolutions, 860x480 or 1024x768 But when I bo...
This is not a big deal but this has been frustrating for a while now.
My graphic card is an RTX 3070
When I boot with grub I am stuck with a very low resolution, probably 1024.
I checked the command
videoinfo
in grub prompt and it returns two possible resolutions, 860x480 or 1024x768
But when I boot from a ubuntu live CD though, the resolution is fine (let's say high enough).
I compared parameters passed to the kernel and tried to imitate in arch the one in ubuntu but without any success.
I have tried different combination but ATM my parameters are such as:
GRUB_DISABLE_OS_PROBER=false
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX="nvidia-drm.modeset=1 quiet splash"
GRUB_PRELOAD_MODULES="part_gpt part_msdos"
GRUB_TERMINAL_INPUT=console
GRUB_TERMINAL_OUTPUT=gfxterm
GRUB_GFXMODE=1024x768
GRUB_GFXPAYLOAD_LINUX=keep
GRUB_COLOR_NORMAL="light-blue/black"
GRUB_COLOR_HIGHLIGHT="light-cyan/blue"
GRUB_BACKGROUND="/boot/grub/arch.png"
GRUB_THEME="/usr/share/grub/themes/Vimix/theme.txt"
**EDIT:** I tried to set GRUB_GFXMODE
with higher resolutions, auto
and to specify the depth (width x height x depth
) it had no effect
**EDIT2:** I used videoinfo
not vbeinfo
zakrapovic
(466 rep)
Oct 21, 2022, 09:32 PM
• Last activity: Oct 22, 2022, 03:39 PM
0
votes
1
answers
189
views
Booting into Xen with grub2-mkconfig 2.03 on centos8 x86_64
``` Linux localhost.localdomain 4.18.0-394.el8.x86_64 #1 SMP Tue May 31 16:19:11 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux grub2-mkconfig (GRUB) 2.03 ``` On my centos8, I have installed `centos-release-openstack-xena.noarch` But I cannot boot into Xen, please help. Theoretically, after installing Xen,...
Linux localhost.localdomain 4.18.0-394.el8.x86_64 #1 SMP Tue May 31 16:19:11 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
grub2-mkconfig (GRUB) 2.03
On my centos8, I have installed centos-release-openstack-xena.noarch
But I cannot boot into Xen, please help.
Theoretically, after installing Xen, I should only run
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
As my /etc/grub.d
has a linux_xen file and antoher large number of files hanging there:
[root@localhost ~]# ls /etc/grub.d/
00_header 01_users 10_linux 11_linux_xen 20_linux_xen 30_os-prober 35_fwupd 41_custom
00_tuned 08_fallback_counting 10_reset_boot_success 12_menu_auto_hide 20_ppc_terminfo 30_uefi-firmware 40_custom README
(11_linux_xen
is a symlink I created pointing to 20_linux_xen
)
Unfortunately, grub.cfg
will have nothing in the linux_xen
section.
I added `echo .
cat /dev/null || true`
bootfs="make_system_path_relative_to_its_root / | sed -e "s,@$,,"
"
LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs}"
;;
esac
title_correction_code=
linux_entry ()
{
os="$1"
version="$2"
xen_version="$3"
type="$4"
args="$5"
xen_args="$6"
if [ -z "$boot_device_id" ]; then
boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
fi
if [ x$type != xsimple ] ; then
if [ x$type = xrecovery ] ; then
title="$(gettext_printf "%s, with Xen %s and Linux %s (recovery mode)" "${os}" "${xen_version}" "${version}")"
else
title="$(gettext_printf "%s, with Xen %s and Linux %s" "${os}" "${xen_version}" "${version}")"
fi
replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')"
if [ x"Xen ${xen_version}>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then
quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)"
title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;"
grub_warn "$(gettext_printf "Please don't use old title \%s' for GRUB_DEFAULT, use \
%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")"
fi
echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'xen-gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
else
title="$(gettext_printf "%s, with Xen hypervisor" "${os}")"
echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'xen-gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
fi
if [ x$type != xrecovery ] ; then
save_default_entry | grub_add_tab | sed "s/^/$submenu_indentation/"
fi
if [ -z "${prepare_boot_cache}" ]; then
prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)"
fi
printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/"
xmessage="$(gettext_printf "Loading Xen %s ..." ${xen_version})"
lmessage="$(gettext_printf "Loading Linux %s ..." ${version})"
sed "s/^/$submenu_indentation/" /dev/null || grep -qx "CONFIG_XEN_PRIVILEGED_GUEST=y" "${config}" 2> /dev/null); then linux_list="$linux_list $i" ; fi
fi
done
if [ "x${linux_list}" = "x" ] ; then
exit 0
fi
file_is_not_sym () {
case "$1" in
*/xen-syms-*)
return 1;;
*)
return 0;;
esac
}
xen_list=
for i in /boot/xen*; do
if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" ; then xen_list="$xen_list $i" ; fi
done
prepare_boot_cache=
boot_device_id=
title_correction_code=
machine=uname -m
case "$machine" in
i?86) GENKERNEL_ARCH="x86" ;;
mips|mips64) GENKERNEL_ARCH="mips" ;;
mipsel|mips64el) GENKERNEL_ARCH="mipsel" ;;
arm*) GENKERNEL_ARCH="arm" ;;
*) GENKERNEL_ARCH="$machine" ;;
esac
# Extra indentation to add to menu entries in a submenu. We're not in a submenu
# yet, so it's empty. In a submenu it will be equal to '\t' (one tab).
submenu_indentation=""
is_top_level=true
while [ "x${xen_list}" != "x" ] ; do
list="${linux_list}"
current_xen=version_find_latest $xen_list
xen_basename=basename ${current_xen}
xen_dirname=dirname ${current_xen}
rel_xen_dirname=make_system_path_relative_to_its_root $xen_dirname
xen_version=echo $xen_basename | sed -e "s,.gz$,,g;s,^xen-,,g"
if [ -z "$boot_device_id" ]; then
boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
fi
if [ "x$is_top_level" != xtrue ]; then
echo " submenu '$(gettext_printf "Xen hypervisor, version %s" "${xen_version}" | grub_quote)' \$menuentry_id_option 'xen-hypervisor-$xen_version-$boot_device_id' {"
fi
if ($grub_file --is-arm64-efi $current_xen); then
xen_loader="xen_hypervisor"
module_loader="xen_module"
else
if ($grub_file --is-x86-multiboot2 $current_xen); then
xen_loader="multiboot2"
module_loader="module2"
else
xen_loader="multiboot"
module_loader="module"
fi
fi
while [ "x$list" != "x" ] ; do
linux=version_find_latest $list
gettext_printf "Found linux image: %s\n" "$linux" >&2
basename=basename $linux
dirname=dirname $linux
rel_dirname=make_system_path_relative_to_its_root $dirname
version=echo $basename | sed -e "s,^[^0-9]*-,,g"
alt_version=echo $version | sed -e "s,\.old$,,g"
linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
initrd=
for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${version}.gz" \
"initrd-${version}" "initramfs-${version}.img" \
"initrd.img-${alt_version}" "initrd-${alt_version}.img" \
"initrd-${alt_version}" "initramfs-${alt_version}.img" \
"initramfs-genkernel-${version}" \
"initramfs-genkernel-${alt_version}" \
"initramfs-genkernel-${GENKERNEL_ARCH}-${version}" \
"initramfs-genkernel-${GENKERNEL_ARCH}-${alt_version}" ; do
if test -e "${dirname}/${i}" ; then
initrd="$i"
break
fi
done
if test -n "${initrd}" ; then
gettext_printf "Found initrd image: %s\n" "${dirname}/${initrd}" >&2
else
# "UUID=" magic is parsed by initrds. Since there's no initrd, it can't work here.
if [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] \
|| [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ]; then
linux_root_device_thisversion=${GRUB_DEVICE}
else
linux_root_device_thisversion=PARTUUID=${GRUB_DEVICE_PARTUUID}
fi
fi
if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then
linux_entry "${OS}" "${version}" "${xen_version}" simple \
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}"
submenu_indentation="$grub_tab$grub_tab"
if [ -z "$boot_device_id" ]; then
boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
fi
# TRANSLATORS: %s is replaced with an OS name
echo "submenu '$(gettext_printf "Advanced options for %s (with Xen hypervisor)" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' {"
echo " submenu '$(gettext_printf "Xen hypervisor, version %s" "${xen_version}" | grub_quote)' \$menuentry_id_option 'xen-hypervisor-$xen_version-$boot_device_id' {"
is_top_level=false
fi
linux_entry "${OS}" "${version}" "${xen_version}" advanced \
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}"
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
linux_entry "${OS}" "${version}" "${xen_version}" recovery \
"single ${GRUB_CMDLINE_LINUX}" "${GRUB_CMDLINE_XEN}"
fi
list=echo $list | tr ' ' '\n' | fgrep -vx "$linux" | tr '\n' ' '
done
if [ x"$is_top_level" != xtrue ]; then
echo ' }'
fi
xen_list=echo $xen_list | tr ' ' '\n' | fgrep -vx "$current_xen" | tr '\n' ' '
done
# If at least one kernel was found, then we need to
# add a closing '}' for the submenu command.
if [ x"$is_top_level" != xtrue ]; then
echo '}'
fi
echo "$title_correction_code"
EOF
Error message generated when running grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
:
[root@localhost ~]# grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
Generating grub configuration file ...
losetup: /dev/nvme0n1p3: failed to use device: No such device
/etc/grub.d/11_linux_xen: line 20: make_system_path_relative_to_its_root: command not found
/etc/grub.d/11_linux_xen: line 20: make_system_path_relative_to_its_root: command not found
/etc/grub.d/11_linux_xen: line 20: grub_get_device_id: command not found
/etc/grub.d/11_linux_xen: line 20: gettext_printf: command not found
/etc/grub.d/11_linux_xen: line 20: gettext_printf: command not found
/etc/grub.d/11_linux_xen: line 20: grub_quote: command not found
/etc/grub.d/11_linux_xen: line 20: grub_quote: command not found
/etc/grub.d/11_linux_xen: line 20: gettext_printf: command not found
/etc/grub.d/11_linux_xen: line 20: grub_quote: command not found
/etc/grub.d/11_linux_xen: line 20: gettext_printf: command not found
/etc/grub.d/11_linux_xen: line 20: grub_quote: command not found
/etc/grub.d/11_linux_xen: line 20: prepare_grub_to_access_device: command not found
/etc/grub.d/11_linux_xen: line 20: grub_add_tab: command not found
/etc/grub.d/11_linux_xen: line 20: gettext_printf: command not found
/etc/grub.d/11_linux_xen: line 20: gettext_printf: command not found
/etc/grub.d/11_linux_xen: line 20: grub_quote: command not found
/etc/grub.d/11_linux_xen: line 20: grub_quote: command not found
/etc/grub.d/11_linux_xen: line 158: syntax error near unexpected token `}'
```
This question was also published at: https://xcp-ng.org/forum/topic/6113/booting-into-xen-with-grub2-mkconfig-2-03-on-centos8-x86_64
And: https://forums.centos.org/viewforum.php?f=54
Bruno Schroeder
(25 rep)
Jul 18, 2022, 12:46 PM
• Last activity: Jul 18, 2022, 02:03 PM
0
votes
0
answers
2772
views
System fails to boot new kernel after CentOS 9 Stream migration
I have performed a migration from `CentOS 8 Stream` to `Centos 9 Stream` on a VPS server of mine with directions I found [on Github][1] which have worked, except grub still boots the old kernel from when the system ran CentOS 8 Stream. I have tried reinstalling the kernel package which should update...
I have performed a migration from
CentOS 8 Stream
to Centos 9 Stream
on a VPS server of mine with directions I found on Github which have worked, except grub still boots the old kernel from when the system ran CentOS 8 Stream. I have tried reinstalling the kernel package which should update grub itself and I have also tried upgrading grub.
I tried the kernel reinstall with this command...
# dnf reinstall kernel
I also tried to update the grub configuration file, which normally will list the kernels in /boot
that it puts in the configuration...
# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Adding boot menu entry for UEFI Firmware Settings ...
done
I also tried the above with grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
but the output was the same.
Here is the generated grub.cfg
file from this, which clearly has no kernels listed in it: https://dpaste.com/ATGL8C523
These are the vmlinuz files in /boot and show the new kernel is there, and there are other files in this directory as well such as initramfs, etc...
/boot/vmlinuz-0-rescue-a5ff5996dcd8490680008260ff7a2d2f
/boot/vmlinuz-0-rescue-f6af4a0f32be46729879177156b19b96
/boot/vmlinuz-4.18.0-240.1.1.el8_3.x86_64
/boot/vmlinuz-4.18.0-394.el8.x86_64
/boot/vmlinuz-5.14.0-109.el9.x86_64
The system has booted with the old kernel from CentOS 8 as shown in the output for uname -sr
...
4.18.0-240.1.1.el8_3.x86_64
Here is the configuration for /etc/default/grub
on the system...
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"
The server is a VPS I lease which runs KVM using Proxmox as the hypervisor.
John Tate
(2040 rep)
Jun 18, 2022, 02:10 PM
• Last activity: Jun 18, 2022, 02:15 PM
1
votes
0
answers
794
views
Fix grub to boot correctly into CentOS
I had a dual-boot computer with windows and CentOS 8 [A] on it, each one in different partitions. I created a new partition and successfully installed CentOS Stream [B] on it, but now I'm unable to boot into [A]. How can I fix it? **Further details** Disk partitions: /dev/nvm...p1: /boot /dev/nvm......
I had a dual-boot computer with windows and CentOS 8 [A] on it, each one in different partitions. I created a new partition and successfully installed CentOS Stream [B] on it, but now I'm unable to boot into [A].
How can I fix it?
**Further details**
Disk partitions:
/dev/nvm...p1: /boot
/dev/nvm...p2 to /dev/nvm...p4: not relevant
/dev/nvm...p5: /home partition of [A]
/dev/nvm...p6: swap
/dev/nvm...p7: xfs
/dev/nvm...p8: Logival volume with three subpartitions(?).
- /dev/cl/root: /root of [A]
- /dev/cl/home: Not in use.
- /dev/cl/swap: swap created when installing [A]
/dev/nvm...p9: xfs
/dev/nvm...p10: Logival volume with two subpartitions(?).
- /dev/cs/root: [B]
- /dev/cs/swap: swap created when installing [B]
What have I tried?:
After booting into [B], I first substituted all references to
cs/root
with cl/root
in the file /etc/default/grub
. After that I executed grub2-mkconfig -o "$(readlink -e /etc/grub.cfg)"
, as I had read in this question .
After rebooting, four entries with CentOS 8 appear in the grub menu. However, when I try to boot into anyone of them, the system enters an emergency mode and shows the following error: [Failed] Failed to start Switch Root.
Running systemctl status initrd-switch-root.service
, as proposed here , results in the error description Failed to switch root: Specified switch root path '/sysroot' does not seem to be an OS tree. os-release file is missing.
. I've tried the solution proposed there (remounting /sysroot
and creating an etc/os-release
file inside of it), but it doesn't work. Under the main tree there is already an existing /etc/os-release
file in it. At this point, /dev/cl/home
is mounted in /sysroot
.
What else can I do? Many thanks!
Gypaets
(427 rep)
Mar 28, 2022, 12:50 AM
• Last activity: Mar 28, 2022, 06:59 AM
Showing page 1 of 20 total questions