You are not logged in.

#26 2026-10-09 19:27:54

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

those between GRUB (EFI BootNext) and snapshots.

Ok, those are completely irrelevant, you care about the Archlinux entries.

I have absolutely no idea how can I do that, as I mentioned before

You can just edit /boot/grub/grub.cfg, there you fix the bogus "root=UUID=ccb76741-0bb4-46f1-a84c-63c2c7fa2996" w/ what grub/linux actually kindly told you

cryptdevice-UUID-a9bBc3e0-b1de-4a03-83e1-0a6f a53947aa:root root=/dev/mapper/root

- except that's of course a bogus transcript and should read "cryptdevice=UUID=a9b0c3e0-b1de-4a03-83e1-0d6fd53947dd:root root=/dev/mapper/root"
https://wiki.archlinux.org/title/Dm-cry … oot_loader

I hope it at least starts to dawn on you that abusing archinstall as chectcode to install archlinux was kind of a mistake.

@Acor the OPs posts are ridden w/ transcription errors and the /boot partition seems to load according to the posted lsblk output and the immediate problem concerns the root partition.
But that would at least get you a warning from mount and also the dump and fsck behaviors would be wrong, https://man.archlinux.org/man/fstab.5#T … q%3C/i%3E).
@ZplenoX you certainly want to look into that regardless

Offline

#27 2026-10-09 20:00:58

ZplenoX
Member
Registered: 2024-12-13
Posts: 21

Re: "Failed to mount the real root device" after -Syu

yeah now I can actually boot my system with no further steps required.

I hope it at least starts to dawn on you that abusing archinstall as chectcode to install archlinux was kind of a mistake.

yeah, I actually started using arch 2 years ago, on my desktop. I used archinstall for my first installation,I updated my system couple times a week for almost a year , and never had any problems anytime, as I never had to dive deep into system configuration. Then bought this laptop and ever since I did, my system broke everytime I updated. First it was a lib package error where it had problems with git versions of hyprland and I had to manually downgrade it. Then it was nvidia driver change, suddenly hdmi output stopped working completely and I had to manually add kernel parameters. Later I had to move my /boot partition into a new one, and next time I ran -Syu and reboot the system could not find boot parititon, as I could not fix the problem and had to reinstall once again. This one is the latest one and probably isnt the last one and I am scared to update my system only to end up in black screen once again.

As a cyber security student I really should have learned more about linux itself, as I currently cannot go any further than basic terminal commands.

Anyways, as the problem solved I have a couple questions if only you have time for:

    -What are the chances of this repeating after next update?

    -What exactly caused this problem?

    -And anything further I should do before I update the next time?

Thanks for your time and aid.

Offline

#28 2026-10-09 21:28:37

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

What are the chances of this repeating after next update?

grub-mkconfig being run and not detecting the LUKS condition.
You could run grub-mkconfig manually and see whether it now acts correctly (you don't have to -o /boot/grub/grub.cfg, the default output is stdout)

What exactly caused this problem?

Primarily the failure of grub-mkconfig to automatically detect and configure the LUKS condition, did you ever post your /etc/default/grub ?

Offline

#29 2026-10-09 22:07:46

ZplenoX
Member
Registered: 2024-12-13
Posts: 21

Re: "Failed to mount the real root device" after -Syu

You could run grub-mkconfig manually and see whether it now acts correctly

the output reverted it back to what it was, probably gonna repeat afterwards

did you ever post your /etc/default/grub ?

here it is:

 # GRUB boot loader configuration

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1"
GRUB_CMDLINE_LINUX=""

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable booting from LUKS encrypted devices
GRUB_ENABLE_CRYPTODISK=y

# Set to 'countdown' or 'hidden' to change timeout behavior,
# press ESC key to display menu.
GRUB_TIMEOUT_STYLE=menu

# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console

# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `videoinfo'
GRUB_GFXMODE=auto

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper
# modes only.  Entries specified as foreground/background.
#GRUB_COLOR_NORMAL="light-blue/black"
#GRUB_COLOR_HIGHLIGHT="light-cyan/blue"

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/path/to/wallpaper"
#GRUB_THEME="/path/to/gfxtheme"

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"

# Uncomment to make GRUB remember the last selection. This requires
# setting 'GRUB_DEFAULT=saved' above.
#GRUB_SAVEDEFAULT=true

# Uncomment to disable submenus in boot menu
#GRUB_DISABLE_SUBMENU=y

# Probing for other operating systems is disabled for security reasons. Read
# documentation on GRUB_DISABLE_OS_PROBER, if still want to enable this
# functionality install os-prober and uncomment to detect and include other
# operating systems.
#GRUB_DISABLE_OS_PROBER=false  

Offline

#30 Yesterday 06:40:50

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

GRUB_ENABLE_CRYPTODISK=y

That's for https://wiki.archlinux.org/title/GRUB#Encrypted_/boot which I assume you don't use - not sure whether that throws the generation off

Offline

#31 Yesterday 07:28:04

ZplenoX
Member
Registered: 2024-12-13
Posts: 21

Re: "Failed to mount the real root device" after -Syu

That is a line I thought it may be related and uncommented. It did not change anything tho.

Offline

#32 Yesterday 11:47:28

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

You can trace the script by adding "set -x" to /etc/grub.d/10_linux, redirect stdout/-o to /dev/null or stderr into a file to split them for analysis.

Offline

#33 Yesterday 18:07:42

ZplenoX
Member
Registered: 2024-12-13
Posts: 21

Re: "Failed to mount the real root device" after -Syu

full log file here:

 Grub yapılandırma dosyası oluşturuluyor ...
+ prefix=/usr
+ exec_prefix=/usr
+ datarootdir=/usr/share
+ . /usr/share/grub/grub-mkconfig_lib
++ prefix=/usr
++ exec_prefix=/usr
++ datarootdir=/usr/share
++ datadir=/usr/share
++ bindir=/usr/bin
++ sbindir=/usr/bin
++ '[' x/usr/share/grub = x ']'
++ test x = x
++ grub_probe=/usr/bin/grub-probe
++ test x = x
++ grub_file=/usr/bin/grub-file
++ test x = x
++ grub_mkrelpath=/usr/bin/grub-mkrelpath
++ command -v gettext
++ :
++ grub_tab=$'\t'
+ export TEXTDOMAIN=grub
+ TEXTDOMAIN=grub
+ export TEXTDOMAINDIR=/usr/share/locale
+ TEXTDOMAINDIR=/usr/share/locale
+ CLASS='--class gnu-linux --class gnu --class os'
+ '[' xArch = x ']'
+ OS='Arch Linux'
++ echo Arch
++ tr A-Z a-z
++ cut '-d ' -f1
++ LC_ALL=C
++ sed 's,[^[:alnum:]_],_,g'
+ CLASS='--class arch --class gnu-linux --class gnu --class os'
+ case ${GRUB_DEVICE} in
+ : single
+ : true
+ '[' xccb76741-0bb4-46f1-a84c-63c2c7fa2996 = x ']'
+ '[' x = xtrue ']'
+ findfs UUID=ccb76741-0bb4-46f1-a84c-63c2c7fa2996
+ test -e /dev/mapper/root
+ uses_abstraction /dev/mapper/root lvm
+ device=/dev/mapper/root
+ old_ifs=$' \t\n'
+ IFS=$'\n'
++ /usr/bin/grub-probe --device /dev/mapper/root --target=abstraction
+ abstraction=$'cryptodisk\nluks2\ngcry_rijndael\ngcry_rijndael\ngcry_sha256'
+ for module in ${abstraction}
+ test xcryptodisk = xlvm
+ for module in ${abstraction}
+ test xluks2 = xlvm
+ for module in ${abstraction}
+ test xgcry_rijndael = xlvm
+ for module in ${abstraction}
+ test xgcry_rijndael = xlvm
+ for module in ${abstraction}
+ test xgcry_sha256 = xlvm
+ IFS=$' \t\n'
+ return 1
+ uses_abstraction /dev/mapper/root diskfilter
+ device=/dev/mapper/root
+ old_ifs=$' \t\n'
+ IFS=$'\n'
++ /usr/bin/grub-probe --device /dev/mapper/root --target=abstraction
+ abstraction=$'cryptodisk\nluks2\ngcry_rijndael\ngcry_rijndael\ngcry_sha256'
+ for module in ${abstraction}
+ test xcryptodisk = xdiskfilter
+ for module in ${abstraction}
+ test xluks2 = xdiskfilter
+ for module in ${abstraction}
+ test xgcry_rijndael = xdiskfilter
+ for module in ${abstraction}
+ test xgcry_rijndael = xdiskfilter
+ for module in ${abstraction}
+ test xgcry_sha256 = xdiskfilter
+ IFS=$' \t\n'
+ return 1
+ '[' xccb76741-0bb4-46f1-a84c-63c2c7fa2996 = x ']'
+ '[' x = xtrue ']'
+ LINUX_ROOT_DEVICE=UUID=ccb76741-0bb4-46f1-a84c-63c2c7fa2996
+ case x"$GRUB_FS" in
++ make_system_path_relative_to_its_root /
++ /usr/bin/grub-mkrelpath /
+ rootsubvol=/@
+ rootsubvol=@
+ '[' x@ '!=' x ']'
+ GRUB_CMDLINE_LINUX='rootflags=subvol=@ '
+ title_correction_code=
++ uname -m
+ machine=x86_64
+ case "x$machine" in
+ list=
+ for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-*
+ grub_file_is_not_garbage /boot/vmlinuz-linux
+ test -f /boot/vmlinuz-linux
+ case "$1" in
+ return 0
+ list=' /boot/vmlinuz-linux'
+ for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-*
+ grub_file_is_not_garbage /boot/vmlinuz-linux-lts
+ test -f /boot/vmlinuz-linux-lts
+ case "$1" in
+ return 0
+ list=' /boot/vmlinuz-linux /boot/vmlinuz-linux-lts'
+ for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-*
+ grub_file_is_not_garbage /boot/vmlinuz-linux-zen
+ test -f /boot/vmlinuz-linux-zen
+ case "$1" in
+ return 0
+ list=' /boot/vmlinuz-linux /boot/vmlinuz-linux-lts /boot/vmlinuz-linux-zen'
+ for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-*
+ grub_file_is_not_garbage '/vmlinuz-*'
+ test -f '/vmlinuz-*'
+ return 1
+ for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-*
+ grub_file_is_not_garbage '/boot/kernel-*'
+ test -f '/boot/kernel-*'
+ return 1
+ case "$machine" in
+ GENKERNEL_ARCH=x86_64
+ prepare_boot_cache=
+ prepare_root_cache=
+ boot_device_id=
+ title_correction_code=
+ submenu_indentation=
++ echo /boot/vmlinuz-linux /boot/vmlinuz-linux-lts /boot/vmlinuz-linux-zen
++ tr ' ' '\n'
++ sed -e 's/\.old$/ 1/; / 1$/! s/$/ 2/'
++ version_sort -r
++ case $version_sort_sort_has_v in
++ sort -V
++ sed -e 's/ 1$/.old/; s/ 2$//'
++ version_sort_sort_has_v=yes
++ LC_ALL=C
++ sort -V -r
+ reverse_sorted_list=$'/boot/vmlinuz-linux-zen\n/boot/vmlinuz-linux-lts\n/boot/vmlinuz-linux'
+ '[' x '!=' x ']'
+ is_top_level=true
+ for linux in ${reverse_sorted_list}
+ gettext_printf 'Found linux image: %s\n' /boot/vmlinuz-linux-zen
+ gettext_printf_format='Found linux image: %s\n'
+ shift
++ gettext 'Found linux image: %s\n'
+ printf 'Bulunan linux kalıbı: %s\n' /boot/vmlinuz-linux-zen
Bulunan linux kalıbı: /boot/vmlinuz-linux-zen
++ basename /boot/vmlinuz-linux-zen
+ basename=vmlinuz-linux-zen
++ dirname /boot/vmlinuz-linux-zen
+ dirname=/boot
++ make_system_path_relative_to_its_root /boot
++ /usr/bin/grub-mkrelpath /boot
+ rel_dirname=
++ echo vmlinuz-linux-zen
++ sed -e s,vmlinuz-,,g
+ version=linux-zen
++ echo linux-zen
++ sed -e 's,\.old$,,g'
+ alt_version=linux-zen
+ linux_root_device_thisversion=UUID=ccb76741-0bb4-46f1-a84c-63c2c7fa2996
+ initrd_early=
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/intel-uc.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/intel-ucode.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/amd-uc.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/amd-ucode.img
+ initrd_early=' amd-ucode.img'
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/early_ucode.cpio
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/microcode.cpio
+ initrd_real=
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd.img-linux-zen
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-zen.img
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-zen.img.old
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-zen.gz
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-zen.gz.old
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-zen
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initramfs-linux-zen.img
+ initrd_real=initramfs-linux-zen.img
+ break
+ initrd=
+ test -n ' amd-ucode.img'
+ initrd=' amd-ucode.img initramfs-linux-zen.img'
+ initrd_display=
+ for i in ${initrd}
+ initrd_display=' /boot/amd-ucode.img'
+ for i in ${initrd}
+ initrd_display=' /boot/amd-ucode.img /boot/initramfs-linux-zen.img'
++ echo /boot/amd-ucode.img /boot/initramfs-linux-zen.img
+ gettext_printf 'Found initrd image: %s\n' '/boot/amd-ucode.img /boot/initramfs-linux-zen.img'
+ gettext_printf_format='Found initrd image: %s\n'
+ shift
++ gettext 'Found initrd image: %s\n'
+ printf 'Bulunan initrd kalıbı: %s\n' '/boot/amd-ucode.img /boot/initramfs-linux-zen.img'
Bulunan initrd kalıbı: /boot/amd-ucode.img /boot/initramfs-linux-zen.img
+ config=
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /boot/config-linux-zen
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /boot/config-linux-zen
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /etc/kernels/kernel-config-linux-zen
+ initramfs=
+ test -n ''
+ test -z ''
+ test -z initramfs-linux-zen.img
+ '[' x = xyes ']'
+ '[' x = xy ']'
+ '[' xtrue = xtrue ']'
+ '[' x '!=' xtrue ']'
+ linux_entry 'Arch Linux' linux-zen simple 'rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ os='Arch Linux'
+ version=linux-zen
+ type=simple
+ args='rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ '[' -z '' ']'
++ grub_get_device_id /dev/mapper/root
++ old_ifs=$' \t\n'
++ IFS=$'\n'
++ device=/dev/mapper/root
++ '[' x '!=' xtrue ']'
+++ /usr/bin/grub-probe --device /dev/mapper/root --target=fs_uuid
++ fs_uuid=ccb76741-0bb4-46f1-a84c-63c2c7fa2996
++ echo ccb76741-0bb4-46f1-a84c-63c2c7fa2996
++ IFS=$' \t\n'
+ boot_device_id=ccb76741-0bb4-46f1-a84c-63c2c7fa2996
+ '[' xsimple '!=' xsimple ']'
++ grub_get_auth_user_list 0
++ ggaul_access_level=0
++ ggaul_user_list=
++ test 1 -le 0
++ test x '!=' x
+ allowed_user_list=
+ sed 's/^//'
++ echo 'Arch Linux'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ echo 'menuentry '\''Arch Linux'\'' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option '\''gnulinux-simple-ccb76741-0bb4-46f1-a84c-63c2c7fa2996'\'' {'
+ '[' xsimple '!=' xrecovery ']'
+ save_default_entry
+ '[' x = xtrue ']'
+ grub_add_tab
+ sed -e $'s/^/\t/'
+ '[' xkeep = x ']'
+ '[' xkeep '!=' xtext ']'
+ echo $'\tload_video'
+ sed 's/^//'
+ echo $'\tset gfxpayload=keep'
+ sed 's/^//'
+ echo $'\tinsmod gzio'
+ sed 's/^//'
+ '[' x/boot = x/ ']'
+ '[' -z '' ']'
++ prepare_grub_to_access_device /dev/nvme0n1p1
++ old_ifs=$' \t\n'
++ IFS=$'\n'
++ grub_add_tab
++ sed -e $'s/^/\t/'
+++ /usr/bin/grub-probe --device /dev/nvme0n1p1 --target=partmap
++ partmap=gpt
++ for module in ${partmap}
++ case "${module}" in
++ echo 'insmod part_gpt'
+++ /usr/bin/grub-probe --device /dev/nvme0n1p1 --target=abstraction
++ abstraction=
+++ /usr/bin/grub-probe --device /dev/nvme0n1p1 --target=fs
++ fs=fat
++ for module in ${fs}
++ echo 'insmod fat'
++ '[' xy = xy ']'
+++ /usr/bin/grub-probe --device /dev/nvme0n1p1 --target=cryptodisk_uuid
+++ /usr/bin/grub-probe --device /dev/nvme0n1p1 --target=compatibility_hint
++ fs_hint=
++ '[' x '!=' x ']'
++ '[' x '!=' xtrue ']'
+++ /usr/bin/grub-probe --device /dev/nvme0n1p1 --target=fs_uuid
++ fs_uuid=F918-5FDE
+++ /usr/bin/grub-probe --device /dev/nvme0n1p1 --target=hints_string
++ hints=
++ '[' x '!=' x ']'
++ echo 'search --no-floppy --fs-uuid --set=root F918-5FDE'
++ IFS=$' \t\n'
+ prepare_boot_cache=$'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE'
+ printf '%s\n' $'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE'
+ sed 's/^//'
++ gettext_printf 'Loading Linux %s ...' linux-zen
++ gettext_printf_format='Loading Linux %s ...'
++ shift
+++ gettext 'Loading Linux %s ...'
++ printf 'Linux %s yükleniyor ...' linux-zen
+ message='Linux linux-zen yükleniyor ...'
+ sed 's/^//'
++ echo 'Linux linux-zen yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ test -n ' amd-ucode.img initramfs-linux-zen.img'
++ gettext_printf 'Loading initial ramdisk ...'
++ gettext_printf_format='Loading initial ramdisk ...'
++ shift
+++ gettext 'Loading initial ramdisk ...'
++ printf 'Başlangıç ramdiski yükleniyor ...'
+ message='Başlangıç ramdiski yükleniyor ...'
+ initrd_path=
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img'
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img /initramfs-linux-zen.img'
+ sed 's/^//'
++ echo 'Başlangıç ramdiski yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
++ echo /amd-ucode.img /initramfs-linux-zen.img
+ sed 's/^//'
+ submenu_indentation=$'\t'
+ '[' -z ccb76741-0bb4-46f1-a84c-63c2c7fa2996 ']'
++ gettext_printf 'Advanced options for %s' 'Arch Linux'
++ gettext_printf_format='Advanced options for %s'
++ shift
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+++ gettext 'Advanced options for %s'
++ printf '%s için gelişmiş seçenekler' 'Arch Linux'
++ grub_echo_unrestricted_maybe
++ test x '!=' x
+ echo 'submenu '\''Arch Linux için gelişmiş seçenekler'\'' $menuentry_id_option '\''gnulinux-advanced-ccb76741-0bb4-46f1-a84c-63c2c7fa2996'\'' {'
+ is_top_level=false
+ linux_entry 'Arch Linux' linux-zen advanced 'rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ os='Arch Linux'
+ version=linux-zen
+ type=advanced
+ args='rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ '[' -z ccb76741-0bb4-46f1-a84c-63c2c7fa2996 ']'
+ '[' xadvanced '!=' xsimple ']'
+ case $type in
++ gettext_printf '%s, with Linux %s' 'Arch Linux' linux-zen
++ gettext_printf_format='%s, with Linux %s'
++ shift
+++ gettext '%s, with Linux %s'
++ printf '%s, with Linux %s' 'Arch Linux' linux-zen
+ title='Arch Linux, with Linux linux-zen'
++ grub_get_auth_user_list 0
++ ggaul_access_level=0
++ ggaul_user_list=
++ test 1 -le 0
++ test x '!=' x
+ allowed_user_list=
+ '[' 'xArch Linux, with Linux linux-zen' = x0 ']'
+ '[' 'xPrevious Linux versions>Arch Linux, with Linux linux-zen' = x0 ']'
+ sed $'s/^/\t/'
++ echo 'Arch Linux, with Linux linux-zen'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ echo 'menuentry '\''Arch Linux, with Linux linux-zen'\'' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option '\''gnulinux-linux-zen-advanced-ccb76741-0bb4-46f1-a84c-63c2c7fa2996'\'' {'
+ '[' xadvanced '!=' xrecovery ']'
+ save_default_entry
+ grub_add_tab
+ sed -e $'s/^/\t/'
+ '[' x = xtrue ']'
+ '[' xkeep = x ']'
+ '[' xkeep '!=' xtext ']'
+ echo $'\tload_video'
+ sed $'s/^/\t/'
+ sed $'s/^/\t/'
+ echo $'\tset gfxpayload=keep'
+ echo $'\tinsmod gzio'
+ sed $'s/^/\t/'
+ '[' x/boot = x/ ']'
+ '[' -z $'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE' ']'
+ sed $'s/^/\t/'
+ printf '%s\n' $'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE'
++ gettext_printf 'Loading Linux %s ...' linux-zen
++ gettext_printf_format='Loading Linux %s ...'
++ shift
+++ gettext 'Loading Linux %s ...'
++ printf 'Linux %s yükleniyor ...' linux-zen
+ message='Linux linux-zen yükleniyor ...'
+ sed $'s/^/\t/'
++ echo 'Linux linux-zen yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ test -n ' amd-ucode.img initramfs-linux-zen.img'
++ gettext_printf 'Loading initial ramdisk ...'
++ gettext_printf_format='Loading initial ramdisk ...'
++ shift
+++ gettext 'Loading initial ramdisk ...'
++ printf 'Başlangıç ramdiski yükleniyor ...'
+ message='Başlangıç ramdiski yükleniyor ...'
+ initrd_path=
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img'
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img /initramfs-linux-zen.img'
+ sed $'s/^/\t/'
++ echo 'Başlangıç ramdiski yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
++ echo /amd-ucode.img /initramfs-linux-zen.img
+ sed $'s/^/\t/'
+ test -e /boot/initramfs-linux-zen-fallback.img
+ test -e /boot/booster-linux-zen.img
+ '[' xtrue '!=' xtrue ']'
+ for linux in ${reverse_sorted_list}
+ gettext_printf 'Found linux image: %s\n' /boot/vmlinuz-linux-lts
+ gettext_printf_format='Found linux image: %s\n'
+ shift
++ gettext 'Found linux image: %s\n'
+ printf 'Bulunan linux kalıbı: %s\n' /boot/vmlinuz-linux-lts
Bulunan linux kalıbı: /boot/vmlinuz-linux-lts
++ basename /boot/vmlinuz-linux-lts
+ basename=vmlinuz-linux-lts
++ dirname /boot/vmlinuz-linux-lts
+ dirname=/boot
++ make_system_path_relative_to_its_root /boot
++ /usr/bin/grub-mkrelpath /boot
+ rel_dirname=
++ echo vmlinuz-linux-lts
++ sed -e s,vmlinuz-,,g
+ version=linux-lts
++ echo linux-lts
++ sed -e 's,\.old$,,g'
+ alt_version=linux-lts
+ linux_root_device_thisversion=UUID=ccb76741-0bb4-46f1-a84c-63c2c7fa2996
+ initrd_early=
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/intel-uc.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/intel-ucode.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/amd-uc.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/amd-ucode.img
+ initrd_early=' amd-ucode.img'
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/early_ucode.cpio
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/microcode.cpio
+ initrd_real=
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd.img-linux-lts
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-lts.img
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-lts.img.old
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-lts.gz
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-lts.gz.old
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux-lts
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initramfs-linux-lts.img
+ initrd_real=initramfs-linux-lts.img
+ break
+ initrd=
+ test -n ' amd-ucode.img'
+ initrd=' amd-ucode.img initramfs-linux-lts.img'
+ initrd_display=
+ for i in ${initrd}
+ initrd_display=' /boot/amd-ucode.img'
+ for i in ${initrd}
+ initrd_display=' /boot/amd-ucode.img /boot/initramfs-linux-lts.img'
++ echo /boot/amd-ucode.img /boot/initramfs-linux-lts.img
+ gettext_printf 'Found initrd image: %s\n' '/boot/amd-ucode.img /boot/initramfs-linux-lts.img'
+ gettext_printf_format='Found initrd image: %s\n'
+ shift
++ gettext 'Found initrd image: %s\n'
+ printf 'Bulunan initrd kalıbı: %s\n' '/boot/amd-ucode.img /boot/initramfs-linux-lts.img'
Bulunan initrd kalıbı: /boot/amd-ucode.img /boot/initramfs-linux-lts.img
+ config=
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /boot/config-linux-lts
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /boot/config-linux-lts
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /etc/kernels/kernel-config-linux-lts
+ initramfs=
+ test -n ''
+ test -z ''
+ test -z initramfs-linux-lts.img
+ '[' x = xyes ']'
+ '[' x = xy ']'
+ '[' xfalse = xtrue ']'
+ linux_entry 'Arch Linux' linux-lts advanced 'rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ os='Arch Linux'
+ version=linux-lts
+ type=advanced
+ args='rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ '[' -z ccb76741-0bb4-46f1-a84c-63c2c7fa2996 ']'
+ '[' xadvanced '!=' xsimple ']'
+ case $type in
++ gettext_printf '%s, with Linux %s' 'Arch Linux' linux-lts
++ gettext_printf_format='%s, with Linux %s'
++ shift
+++ gettext '%s, with Linux %s'
++ printf '%s, with Linux %s' 'Arch Linux' linux-lts
+ title='Arch Linux, with Linux linux-lts'
++ grub_get_auth_user_list 0
++ ggaul_access_level=0
++ ggaul_user_list=
++ test 1 -le 0
++ test x '!=' x
+ allowed_user_list=
+ '[' 'xArch Linux, with Linux linux-lts' = x0 ']'
+ '[' 'xPrevious Linux versions>Arch Linux, with Linux linux-lts' = x0 ']'
+ sed $'s/^/\t/'
++ echo 'Arch Linux, with Linux linux-lts'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ echo 'menuentry '\''Arch Linux, with Linux linux-lts'\'' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option '\''gnulinux-linux-lts-advanced-ccb76741-0bb4-46f1-a84c-63c2c7fa2996'\'' {'
+ '[' xadvanced '!=' xrecovery ']'
+ save_default_entry
+ '[' x = xtrue ']'
+ grub_add_tab
+ sed -e $'s/^/\t/'
+ '[' xkeep = x ']'
+ '[' xkeep '!=' xtext ']'
+ echo $'\tload_video'
+ sed $'s/^/\t/'
+ echo $'\tset gfxpayload=keep'
+ sed $'s/^/\t/'
+ sed $'s/^/\t/'
+ echo $'\tinsmod gzio'
+ '[' x/boot = x/ ']'
+ '[' -z $'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE' ']'
+ printf '%s\n' $'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE'
+ sed $'s/^/\t/'
++ gettext_printf 'Loading Linux %s ...' linux-lts
++ gettext_printf_format='Loading Linux %s ...'
++ shift
+++ gettext 'Loading Linux %s ...'
++ printf 'Linux %s yükleniyor ...' linux-lts
+ message='Linux linux-lts yükleniyor ...'
+ sed $'s/^/\t/'
++ echo 'Linux linux-lts yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ test -n ' amd-ucode.img initramfs-linux-lts.img'
++ gettext_printf 'Loading initial ramdisk ...'
++ gettext_printf_format='Loading initial ramdisk ...'
++ shift
+++ gettext 'Loading initial ramdisk ...'
++ printf 'Başlangıç ramdiski yükleniyor ...'
+ message='Başlangıç ramdiski yükleniyor ...'
+ initrd_path=
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img'
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img /initramfs-linux-lts.img'
+ sed $'s/^/\t/'
++ echo 'Başlangıç ramdiski yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
++ echo /amd-ucode.img /initramfs-linux-lts.img
+ sed $'s/^/\t/'
+ test -e /boot/initramfs-linux-lts-fallback.img
+ test -e /boot/booster-linux-lts.img
+ '[' xtrue '!=' xtrue ']'
+ for linux in ${reverse_sorted_list}
+ gettext_printf 'Found linux image: %s\n' /boot/vmlinuz-linux
+ gettext_printf_format='Found linux image: %s\n'
+ shift
++ gettext 'Found linux image: %s\n'
+ printf 'Bulunan linux kalıbı: %s\n' /boot/vmlinuz-linux
Bulunan linux kalıbı: /boot/vmlinuz-linux
++ basename /boot/vmlinuz-linux
+ basename=vmlinuz-linux
++ dirname /boot/vmlinuz-linux
+ dirname=/boot
++ make_system_path_relative_to_its_root /boot
++ /usr/bin/grub-mkrelpath /boot
+ rel_dirname=
++ echo vmlinuz-linux
++ sed -e s,vmlinuz-,,g
+ version=linux
++ echo linux
++ sed -e 's,\.old$,,g'
+ alt_version=linux
+ linux_root_device_thisversion=UUID=ccb76741-0bb4-46f1-a84c-63c2c7fa2996
+ initrd_early=
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/intel-uc.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/intel-ucode.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/amd-uc.img
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/amd-ucode.img
+ initrd_early=' amd-ucode.img'
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/early_ucode.cpio
+ for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} ${GRUB_EARLY_INITRD_LINUX_CUSTOM}
+ test -e /boot/microcode.cpio
+ initrd_real=
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd.img-linux
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux.img
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux.img.old
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux.gz
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux.gz.old
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initrd-linux
+ for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${alt_version}.img.old" "initrd-${version}.gz" "initrd-${alt_version}.gz.old" "initrd-${version}" "initramfs-${version}.img" "initramfs-${alt_version}.img.old" "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}"
+ test -e /boot/initramfs-linux.img
+ initrd_real=initramfs-linux.img
+ break
+ initrd=
+ test -n ' amd-ucode.img'
+ initrd=' amd-ucode.img initramfs-linux.img'
+ initrd_display=
+ for i in ${initrd}
+ initrd_display=' /boot/amd-ucode.img'
+ for i in ${initrd}
+ initrd_display=' /boot/amd-ucode.img /boot/initramfs-linux.img'
++ echo /boot/amd-ucode.img /boot/initramfs-linux.img
+ gettext_printf 'Found initrd image: %s\n' '/boot/amd-ucode.img /boot/initramfs-linux.img'
+ gettext_printf_format='Found initrd image: %s\n'
+ shift
++ gettext 'Found initrd image: %s\n'
+ printf 'Bulunan initrd kalıbı: %s\n' '/boot/amd-ucode.img /boot/initramfs-linux.img'
Bulunan initrd kalıbı: /boot/amd-ucode.img /boot/initramfs-linux.img
+ config=
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /boot/config-linux
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /boot/config-linux
+ for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}"
+ test -e /etc/kernels/kernel-config-linux
+ initramfs=
+ test -n ''
+ test -z ''
+ test -z initramfs-linux.img
+ '[' x = xyes ']'
+ '[' x = xy ']'
+ '[' xfalse = xtrue ']'
+ linux_entry 'Arch Linux' linux advanced 'rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ os='Arch Linux'
+ version=linux
+ type=advanced
+ args='rootflags=subvol=@  loglevel=3 quiet nvidia-drm.modeset=1 nvidia_drm.fbdev=1'
+ '[' -z ccb76741-0bb4-46f1-a84c-63c2c7fa2996 ']'
+ '[' xadvanced '!=' xsimple ']'
+ case $type in
++ gettext_printf '%s, with Linux %s' 'Arch Linux' linux
++ gettext_printf_format='%s, with Linux %s'
++ shift
+++ gettext '%s, with Linux %s'
++ printf '%s, with Linux %s' 'Arch Linux' linux
+ title='Arch Linux, with Linux linux'
++ grub_get_auth_user_list 0
++ ggaul_access_level=0
++ ggaul_user_list=
++ test 1 -le 0
++ test x '!=' x
+ allowed_user_list=
+ '[' 'xArch Linux, with Linux linux' = x0 ']'
+ '[' 'xPrevious Linux versions>Arch Linux, with Linux linux' = x0 ']'
+ sed $'s/^/\t/'
++ echo 'Arch Linux, with Linux linux'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ echo 'menuentry '\''Arch Linux, with Linux linux'\'' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option '\''gnulinux-linux-advanced-ccb76741-0bb4-46f1-a84c-63c2c7fa2996'\'' {'
+ '[' xadvanced '!=' xrecovery ']'
+ grub_add_tab
+ save_default_entry
+ sed -e $'s/^/\t/'
+ '[' x = xtrue ']'
+ '[' xkeep = x ']'
+ '[' xkeep '!=' xtext ']'
+ echo $'\tload_video'
+ sed $'s/^/\t/'
+ echo $'\tset gfxpayload=keep'
+ sed $'s/^/\t/'
+ echo $'\tinsmod gzio'
+ sed $'s/^/\t/'
+ '[' x/boot = x/ ']'
+ '[' -z $'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE' ']'
+ sed $'s/^/\t/'
+ printf '%s\n' $'\tinsmod part_gpt\n\tinsmod fat\n\tsearch --no-floppy --fs-uuid --set=root F918-5FDE'
++ gettext_printf 'Loading Linux %s ...' linux
++ gettext_printf_format='Loading Linux %s ...'
++ shift
+++ gettext 'Loading Linux %s ...'
++ printf 'Linux %s yükleniyor ...' linux
+ message='Linux linux yükleniyor ...'
+ sed $'s/^/\t/'
++ echo 'Linux linux yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
+ test -n ' amd-ucode.img initramfs-linux.img'
++ gettext_printf 'Loading initial ramdisk ...'
++ gettext_printf_format='Loading initial ramdisk ...'
++ shift
+++ gettext 'Loading initial ramdisk ...'
++ printf 'Başlangıç ramdiski yükleniyor ...'
+ message='Başlangıç ramdiski yükleniyor ...'
+ initrd_path=
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img'
+ for i in ${initrd}
+ initrd_path=' /amd-ucode.img /initramfs-linux.img'
+ sed $'s/^/\t/'
++ echo 'Başlangıç ramdiski yükleniyor ...'
++ grub_quote
++ sed 's/'\''/'\''\\'\'''\''/g'
++ echo /amd-ucode.img /initramfs-linux.img
+ sed $'s/^/\t/'
+ test -e /boot/initramfs-linux-fallback.img
+ test -e /boot/booster-linux.img
+ '[' xtrue '!=' xtrue ']'
+ '[' xfalse '!=' xtrue ']'
+ echo '}'
+ echo ''
Uyarı: os-prober, diğer açılabilir bölümleri algılamak için çalıştırılmayacak.
Diğer sistemler GRUB açılış yapılandırmasına eklenmeyecek.
Belgelerde GRUB_DISABLE_OS_PROBER ayarını kontrol edin.
UEFI Firmware Ayarları için açılış menüsü girişi ekleniyor...
Uyarı: os-prober is not installed; EFI BootNext entries will not be filtered against detected OSes, so non-OS entries (e.g. firmware updaters) may appear in the menu.
Adding boot menu entry for EFI BootNext: GRUB (Boot0000)
Adding boot menu entry for EFI BootNext: HDD0: 24144992C261-Micron_3500_MTFDKBA1T0TGD-1BK15ABYY (Boot0001)
Adding boot menu entry for EFI BootNext: EFI USB Device (Boot2001)
Adding boot menu entry for EFI BootNext: EFI DVD/CDROM (Boot2002)
Adding boot menu entry for EFI BootNext: EFI Network (Boot2003)
Detecting snapshots ...
Found snapshot: 2026-10-10 21:00:09 | @/.snapshots/218/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-10 20:02:47 | @/.snapshots/217/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-10 18:07:47 | @/.snapshots/216/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-10 15:00:06 | @/.snapshots/215/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-10 14:15:20 | @/.snapshots/214/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-10 12:00:13 | @/.snapshots/213/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-10 11:38:18 | @/.snapshots/212/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-10 01:00:02 | @/.snapshots/211/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-09 23:00:03 | @/.snapshots/210/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-09 22:01:21 | @/.snapshots/209/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-09 17:01:20 | @/.snapshots/208/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-09 00:00:06 | @/.snapshots/206/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-08 00:13:39 | @/.snapshots/201/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-07 15:09:42 | @/.snapshots/199/snapshot | post   | proton-mail-bin                                                          |
Found snapshot: 2026-10-07 15:09:41 | @/.snapshots/198/snapshot | pre    | pacman -U --config /etc/pacman.conf -- /home/zplenox/.cache/yay/proton-m |
Found snapshot: 2026-10-07 15:06:25 | @/.snapshots/197/snapshot | post   | 7zip adwaita-cursors adwaita-icon-theme alsa-card-profiles aom appstream |
Found snapshot: 2026-10-07 15:02:19 | @/.snapshots/196/snapshot | pre    | pacman -S -y -y -u --config /etc/pacman.conf --                          |
Found snapshot: 2026-10-07 10:17:42 | @/.snapshots/190/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-06 09:28:36 | @/.snapshots/182/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-05 12:43:01 | @/.snapshots/177/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-04 10:15:34 | @/.snapshots/174/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-03 11:38:46 | @/.snapshots/169/snapshot | single | timeline                                                                 |
Found snapshot: 2026-10-02 14:00:00 | @/.snapshots/162/snapshot | single | timeline                                                                 |
Found snapshot: 2026-09-27 00:59:28 | @/.snapshots/161/snapshot | post   | fastfetch yyjson                                                         |
Found snapshot: 2026-09-27 00:59:28 | @/.snapshots/160/snapshot | pre    | pacman -S --config /etc/pacman.conf -- extra/fastfetch                   |
Found snapshot: 2026-09-27 00:00:00 | @/.snapshots/159/snapshot | single | timeline                                                                 |
Found snapshot: 2026-09-21 12:15:31 | @/.snapshots/149/snapshot | post   | dotnet-host dotnet-runtime-8.0 gtksourceview4 opentabletdriver qpdf xour |
Found snapshot: 2026-09-21 12:14:59 | @/.snapshots/148/snapshot | pre    | pacman -S --config /etc/pacman.conf -- chaotic-aur/opentabletdriver extr |
Found snapshot: 2026-09-21 12:07:58 | @/.snapshots/147/snapshot | post   | amd-ucode aquamarine at-spi2-core bash electron42 electron43 fzf gcr-4 g |
Found snapshot: 2026-09-21 12:04:13 | @/.snapshots/146/snapshot | pre    | pacman -S -y -y -u --config /etc/pacman.conf --                          |
Found snapshot: 2026-09-13 13:44:16 | @/.snapshots/92/snapshot  | post   | btop                                                                     |
Found snapshot: 2026-09-13 13:44:16 | @/.snapshots/91/snapshot  | pre    | pacman -S --config /etc/pacman.conf -- extra/btop                        |
Found snapshot: 2026-09-12 16:35:15 | @/.snapshots/88/snapshot  | post   | 7zip                                                                     |
Found snapshot: 2026-09-12 16:35:15 | @/.snapshots/87/snapshot  | pre    | pacman -S --config /etc/pacman.conf -- extra/7zip                        |
Found snapshot: 2026-09-12 16:02:43 | @/.snapshots/86/snapshot  | post   | unzip                                                                    |
Found snapshot: 2026-09-12 16:02:43 | @/.snapshots/85/snapshot  | pre    | pacman -S --config /etc/pacman.conf -- extra/unzip                       |
Found snapshot: 2026-09-12 13:58:49 | @/.snapshots/81/snapshot  | post   | proton-mail-bin                                                          |
Found snapshot: 2026-09-12 13:58:49 | @/.snapshots/80/snapshot  | pre    | pacman -U --config /etc/pacman.conf -- /home/zplenox/.cache/yay/proton-m |
Found snapshot: 2026-09-12 13:58:36 | @/.snapshots/79/snapshot  | post   | amd-ucode archlinux-keyring attica aurorae breeze breeze-cursors breeze- |
Found snapshot: 2026-09-12 13:54:30 | @/.snapshots/78/snapshot  | pre    | pacman -S -y -y -u --config /etc/pacman.conf -- extra/electron42         |
Found snapshot: 2026-09-06 18:34:56 | @/.snapshots/71/snapshot  | post   | cairomm-1.16 glibmm-2.68 gtkmm-4.0 libsigc++-3.0 pangomm-2.48 pavucontro |
Found snapshot: 2026-09-06 18:34:55 | @/.snapshots/70/snapshot  | pre    | pacman -S --config /etc/pacman.conf -- extra/pavucontrol                 |
Found snapshot: 2026-09-06 18:22:58 | @/.snapshots/69/snapshot  | post   | proton-drive-cli-bin                                                     |
Found snapshot: 2026-09-06 18:22:58 | @/.snapshots/68/snapshot  | pre    | pacman -R --config /etc/pacman.conf -- proton-drive-cli-bin              |
Found snapshot: 2026-09-06 18:22:01 | @/.snapshots/67/snapshot  | post   | proton-drive-cli-bin                                                     |
Found snapshot: 2026-09-06 18:22:01 | @/.snapshots/66/snapshot  | pre    | pacman -U --config /etc/pacman.conf -- /home/zplenox/.cache/yay/proton-d |
Found snapshot: 2026-09-06 18:12:22 | @/.snapshots/65/snapshot  | post   | kcontacts kdeconnect kpeople libfakekey libmm-glib mobile-broadband-prov |
Found snapshot: 2026-09-06 18:12:20 | @/.snapshots/64/snapshot  | pre    | pacman -S --config /etc/pacman.conf -- extra/kdeconnect                  |
Found snapshot: 2026-09-06 18:09:22 | @/.snapshots/63/snapshot  | post   | chaotic-mirrorlist                                                       |
Found snapshot: 2026-09-06 18:09:22 | @/.snapshots/62/snapshot  | pre    | pacman -Syu                                                              |
Found 50 snapshot(s)
Unmount /tmp/grub-btrfs.q909EI5qYv .. Success
bitti 

Offline

#34 Yesterday 19:39:31

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

Looks like it's checking the mapper but doesn't think this is an encrypted device???

LC_ALL=C sudo cryptsetup status root

(Sidebar, please use LC_ALL=C for all future commands)

Offline

#35 Yesterday 19:56:03

ZplenoX
Member
Registered: 2024-12-13
Posts: 21

Re: "Failed to mount the real root device" after -Syu

 /dev/mapper/root is active and is in use.
  type:    LUKS2
  cipher:  aes-xts-plain64
  keysize: 512 [bits]
  key location: keyring
  device:  /dev/nvme0n1p2
  sector size:  512 [bytes]
  offset:  32768 [512-byte units] (16777216 [bytes])
  size:    1991983104 [512-byte units] (1019895349248 [bytes])
  mode:    read/write 

Offline

#36 Yesterday 22:14:58

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

Hummm, https://wiki.archlinux.org/index.php?ti … 29334#root predates LUKS2 so it might simply not be true for that.

Question would be why this seems a regression for you - do the UKI kernels currently boot?
(They clearly have the correct kernel commandline)

Are the non-UKI entries maybe recent additions only?

Offline

#37 Today 07:10:26

Acor
Member
Registered: 2026-10-02
Posts: 11

Re: "Failed to mount the real root device" after -Syu

seth wrote:

You can just edit /boot/grub/grub.cfg, there you fix the bogus "root=UUID=ccb76741-0bb4-46f1-a84c-63c2c7fa2996" w/ what grub/linux actually kindly told you

cryptdevice-UUID-a9bBc3e0-b1de-4a03-83e1-0a6f a53947aa:root root=/dev/mapper/root

- except that's of course a bogus transcript and should read "cryptdevice=UUID=a9b0c3e0-b1de-4a03-83e1-0d6fd53947dd:root root=/dev/mapper/root"
https://wiki.archlinux.org/title/Dm-cry … oot_loader

Although I don't use encryption, I'm following this post with interest. Since the modification of grub.cfg helped temporarily, I wonder if it can be added to GRUB_CMDLINE_LINUX= (according to scheme "cryptdevice=UUID=...."?)  in /etc/default/grub as a workaround to make it persistent. Whereas "GRUB_ENABLE_CRYPTODISK=y" seems to me to be intended more for encrypting /boot, but not /root.

Offline

#38 Today 08:10:25

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

The root= entry is added unconditionally and based off the GRUB_DEVICE setting
You could try to set that and add cryptdevice=UUID=… to GRUB_CMDLINE_LINUX and see whether the reverse order is accepted, but it's probably much easier and more reliable to not use grub-mkconfig at all

Offline

#39 Today 09:29:50

ZplenoX
Member
Registered: 2024-12-13
Posts: 21

Re: "Failed to mount the real root device" after -Syu

do the UKI kernels currently boot?

yeah every kernel option boots fine now.

Are the non-UKI entries maybe recent additions only?

I am unsure what should I answer but as I said I didnt touch anything about the grub except the adding snapshots and some nvidia parameters. So whatever archinstall did.

Offline

#40 Today 12:50:14

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,237

Re: "Failed to mount the real root device" after -Syu

archinstall would remove the executable bit from /etc/grub.d/10_linux so you'd only get the UKIs - maybe some grub update restored the executable bit?

Offline

#41 Today 17:32:53

ZplenoX
Member
Registered: 2024-12-13
Posts: 21

Re: "Failed to mount the real root device" after -Syu

here is the 10_linux file then:

 #! /bin/sh
set -e

# grub-mkconfig helper script.
# Copyright (C) 2006,2007,2008,2009,2010,2026  Free Software Foundation, Inc.
#
# GRUB is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# GRUB is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GRUB.  If not, see <http://www.gnu.org/licenses/>.

prefix="/usr"
exec_prefix="/usr"
datarootdir="/usr/share"

. "$pkgdatadir/grub-mkconfig_lib"

export TEXTDOMAIN=grub
export TEXTDOMAINDIR="${datarootdir}/locale"

CLASS="--class gnu-linux --class gnu --class os"

if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
  OS=Linux
else
  OS="${GRUB_DISTRIBUTOR} Linux"
  CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}"
fi

# loop-AES arranges things so that /dev/loop/X can be our root device, but
# the initrds that Linux uses don't like that.
case ${GRUB_DEVICE} in
  /dev/loop/*|/dev/loop[0-9])
    GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"`
  ;;
esac

: ${GRUB_CMDLINE_LINUX_RECOVERY:=single}

# Default to disabling partition uuid support to maintian compatibility with
# older kernels.
: ${GRUB_DISABLE_LINUX_PARTUUID=true}

# btrfs may reside on multiple devices. We cannot pass them as value of root= parameter
# and mounting btrfs requires user space scanning, so force UUID in this case.
if ( [ "x${GRUB_DEVICE_UUID}" = "x" ] && [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] ) \
    || ( [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \
	&& [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ] ) \
    || ( ! findfs UUID="${GRUB_DEVICE_UUID}" > /dev/null 2>&1 \
	&& ! findfs PARTUUID="${GRUB_DEVICE_PARTUUID}" > /dev/null 2>&1 ) \
    || ( test -e "${GRUB_DEVICE}" && ( uses_abstraction "${GRUB_DEVICE}" lvm || uses_abstraction "${GRUB_DEVICE}" diskfilter ) ); then
  LINUX_ROOT_DEVICE=${GRUB_DEVICE}
elif [ "x${GRUB_DEVICE_UUID}" = "x" ] \
    || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ]; then
  LINUX_ROOT_DEVICE=PARTUUID=${GRUB_DEVICE_PARTUUID}
else
  LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
fi

case x"$GRUB_FS" in
    xbtrfs)
	rootsubvol="`make_system_path_relative_to_its_root /`"
	rootsubvol="${rootsubvol#/}"
	if [ "x${rootsubvol}" != x ]; then
	    GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}"
	fi;;
    xzfs)
	rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || zdb -l ${GRUB_DEVICE} | awk -F \' '/ name/ { print $2 }'`
	bootfs="`make_system_path_relative_to_its_root / | sed -e "s,@$,,"`"
	# grub-probe fails on encrypted zfs pools, use zfs list as fallback
	if [ -n "$rpool" ] && [ -n "$bootfs" ]; then
	    LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs%/}"
	else
	    root_dataset=`zfs list -Ho mountpoint,name | grep '^/[[:space:]]' | tail -n1 | cut -f 2 2>/dev/null || true`
	    LINUX_ROOT_DEVICE="ZFS=${root_dataset}"
	fi
	;;
esac

title_correction_code=

linux_entry ()
{
  os="$1"
  version="$2"
  type="$3"
  args="$4"

  if [ -z "$boot_device_id" ]; then
      boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
  fi
  if [ x$type != xsimple ] ; then
      case $type in
	  booster)
	      title="$(gettext_printf "%s, with Linux %s (booster initramfs)" "${os}" "${version}")" ;;
	  fallback)
	      title="$(gettext_printf "%s, with Linux %s (fallback initramfs)" "${os}" "${version}")" ;;
	  recovery)
	      title="$(gettext_printf "%s, with Linux %s (recovery mode)" "${os}" "${version}")"
	      allowed_user_list="$(grub_get_auth_user_list $GRUB_RECOVERY_ACCESS_LEVEL)"
	      ;;
	  *)
	      title="$(gettext_printf "%s, with Linux %s" "${os}" "${version}")"
	      allowed_user_list="$(grub_get_auth_user_list $GRUB_ADVANCED_ACCESS_LEVEL)"
	      ;;
      esac
      if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ] || [ x"Previous Linux versions>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then
	  replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')"
	  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 'gnulinux-$version-$type-$boot_device_id' ${allowed_user_list}{" | sed "s/^/$submenu_indentation/"
  else
      allowed_user_list="$(grub_get_auth_user_list $GRUB_SIMPLE_ACCESS_LEVEL)"
      echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' ${allowed_user_list}{" | sed "s/^/$submenu_indentation/"
  fi      
  if [ x$type != xrecovery ] ; then
      save_default_entry | grub_add_tab
  fi

  # Use ELILO's generic "efifb" when it's known to be available.
  # FIXME: We need an interface to select vesafb in case efifb can't be used.
  if [ "x$GRUB_GFXPAYLOAD_LINUX" = x ]; then
      echo "	load_video" | sed "s/^/$submenu_indentation/"
      if grep -qx "CONFIG_FB_EFI=y" "${config}" 2> /dev/null \
	  && grep -qx "CONFIG_VT_HW_CONSOLE_BINDING=y" "${config}" 2> /dev/null; then
	  echo '	if [ "x$grub_platform" = xefi ]; then' | sed "s/^/$submenu_indentation/"
	  echo "		set gfxpayload=keep" | sed "s/^/$submenu_indentation/"
	  echo '	fi' | sed "s/^/$submenu_indentation/"
      fi
  else
      if [ "x$GRUB_GFXPAYLOAD_LINUX" != xtext ]; then
	  echo "	load_video" | sed "s/^/$submenu_indentation/"
      fi
      echo "	set gfxpayload=$GRUB_GFXPAYLOAD_LINUX" | sed "s/^/$submenu_indentation/"
  fi

  echo "	insmod gzio" | sed "s/^/$submenu_indentation/"

  if [ x$dirname = x/ ]; then
    if [ -z "${prepare_root_cache}" ]; then
      prepare_root_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE} | grub_add_tab)"
    fi
    printf '%s\n' "${prepare_root_cache}" | sed "s/^/$submenu_indentation/"
  else
    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/"
  fi
  message="$(gettext_printf "Loading Linux %s ..." ${version})"
  sed "s/^/$submenu_indentation/" << EOF
	echo	'$(echo "$message" | grub_quote)'
	linux	${rel_dirname}/${basename} root=${linux_root_device_thisversion} rw ${args}
EOF
  if test -n "${initrd}" ; then
    # TRANSLATORS: ramdisk isn't identifier. Should be translated.
    message="$(gettext_printf "Loading initial ramdisk ...")"
    initrd_path=
    for i in ${initrd}; do
      initrd_path="${initrd_path} ${rel_dirname}/${i}"
    done
    sed "s/^/$submenu_indentation/" << EOF
	echo	'$(echo "$message" | grub_quote)'
	initrd	$(echo $initrd_path)
EOF
  fi
  sed "s/^/$submenu_indentation/" << EOF
}
EOF
}

machine=`uname -m`
case "x$machine" in
    xi?86 | xx86_64)
	list=
	for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
	    if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi
	done ;;
    *) 
	list=
	for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
                  if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi
	done ;;
esac

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

prepare_boot_cache=
prepare_root_cache=
boot_device_id=
title_correction_code=

# 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=""

# Perform a reverse version sort on the entire list.
# Temporarily replace the '.old' suffix by ' 1' and append ' 2' for all
# other files to order the '.old' files after their non-old counterpart
# in reverse-sorted order.

reverse_sorted_list=$(echo $list | tr ' ' '\n' | sed -e 's/\.old$/ 1/; / 1$/! s/$/ 2/' | version_sort -r | sed -e 's/ 1$/.old/; s/ 2$//')

if [ "x$GRUB_TOP_LEVEL" != x ]; then
  reverse_sorted_list=$(grub_move_to_front "$GRUB_TOP_LEVEL" ${reverse_sorted_list})
fi

is_top_level=true
for linux in ${reverse_sorted_list}; do
  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,vmlinuz-,,g"`
  alt_version=`echo $version | sed -e "s,\.old$,,g"`
  linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"

  initrd_early=
  for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} \
	   ${GRUB_EARLY_INITRD_LINUX_CUSTOM}; do
    if test -e "${dirname}/${i}" ; then
      initrd_early="${initrd_early} ${i}"
    fi
  done

  initrd_real=
  for i in "initrd.img-${version}" "initrd-${version}.img" \
	   "initrd-${alt_version}.img.old" "initrd-${version}.gz" \
	   "initrd-${alt_version}.gz.old" "initrd-${version}" \
	   "initramfs-${version}.img" "initramfs-${alt_version}.img.old" \
	   "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_real="${i}"
      break
    fi
  done

  initrd=
  if test -n "${initrd_early}" || test -n "${initrd_real}"; then
    initrd="${initrd_early} ${initrd_real}"

    initrd_display=
    for i in ${initrd}; do
      initrd_display="${initrd_display} ${dirname}/${i}"
    done
    gettext_printf "Found initrd image: %s\n" "$(echo $initrd_display)" >&2
  fi

  config=
  for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do
    if test -e "${i}" ; then
      config="${i}"
      break
    fi
  done

  initramfs=
  if test -n "${config}" ; then
      initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"`
  fi

  if test -z "${initramfs}" && test -z "${initrd_real}" ; then
    # "UUID=" and "ZFS=" magic is parsed by initrd or initramfs.  Since there's
    # no initrd or builtin initramfs, 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

  # The GRUB_DISABLE_SUBMENU option used to be different than others since it was
  # mentioned in the documentation that has to be set to 'y' instead of 'true' to
  # enable it. This caused a lot of confusion to users that set the option to 'y',
  # 'yes' or 'true'. This was fixed but all of these values must be supported now.
  if [ "x${GRUB_DISABLE_SUBMENU}" = xyes ] || [ "x${GRUB_DISABLE_SUBMENU}" = xy ]; then
    GRUB_DISABLE_SUBMENU="true"
  fi

  if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xtrue ]; then
    linux_entry "${OS}" "${version}" simple \
    "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"

    submenu_indentation="$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" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' $(grub_echo_unrestricted_maybe){"
    is_top_level=false
  fi

  linux_entry "${OS}" "${version}" advanced \
              "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"

  if test -e "${dirname}/initramfs-${version}-fallback.img" ; then
    initrd="${initrd_early} initramfs-${version}-fallback.img"

    if test -n "${initrd}" ; then
      gettext_printf "Found fallback initrd image(s) in %s:%s\n" "${dirname}" "${initrd_extra} ${initrd}" >&2
    fi

    linux_entry "${OS}" "${version}" fallback \
                "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
  fi

  if test -e "${dirname}/booster-${version}.img" ; then
    initrd="${initrd_early} booster-${version}.img"

    if test -n "${initrd}" ; then
      gettext_printf "Found booster initrd image(s) in %s:%s\n" "${dirname}" "${initrd_extra} ${initrd}" >&2
    fi

    linux_entry "${OS}" "${version}" booster \
                "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
  fi

  if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
    linux_entry "${OS}" "${version}" recovery \
                "${GRUB_CMDLINE_LINUX_RECOVERY} ${GRUB_CMDLINE_LINUX}"
  fi
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"  

Offline

Board footer

Powered by FluxBB