You are not logged in.

#1 2024-02-22 16:30:29

FuturisticFume
Member
Registered: 2018-04-12
Posts: 10

[SOLVED] grub_rescue after 2nd Arch install

After installing Arch Linux on a second hard drive from an existing install through the wiki, I was at step 2.1 where it told me to follow the regular installation guide. From there, I finished installing the essential packages and was able to `arch-chroot` into the new install.

From the GRUB wiki page, I installed `os-prober`, ran `grub-mkconfig -o /boot/grub/grub.cfg`, and it was able to detect the new Arch install in the logs.

Then, I rebooted and was able to see the new install in the GRUB menu. However, upon restarting again, I was put into the error screen with `grub_calloc not found` and given the `grub_rescue` console.

From booting from a Arch installation USB, I can post the following information:

> fdisk -l
Disk /dev/sda: 223.6 GiB, 240057409536 bytes, 468862128 sectors
Disk model: KINGSTON SA400S3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x24c99faf

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1            2048 104859647 104857600    50G 83 Linux
/dev/sda2       104859648 138414079  33554432    16G 83 Linux
/dev/sda3       138414080 468862127 330448048 157.6G 83 Linux


Disk /dev/sdb: 223.6 GiB, 240057409536 bytes, 468862128 sectors
Disk model: KINGSTON SA400S3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: C9F905D1-9A58-4E1E-8114-E7446C863C95

Device       Start       End   Sectors  Size Type
/dev/sdb1     2048   1023999   1021952  499M Windows recovery environment
/dev/sdb2  1024000   1228799    204800  100M EFI System
/dev/sdb3  1228800   1261567     32768   16M Microsoft reserved
/dev/sdb4  1261568 468860927 467599360  223G Microsoft basic data

Disk /dev/sdc: 447.1 GiB, 480103981056 bytes, 937703088 sectors
Disk model: KINGSTON SA400S3
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xed8d6cb0

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sdc1            2048 314574847 314572800   150G 83 Linux
/dev/sdc2       314574848 381683711  67108864    32G 83 Linux
/dev/sdc3       381683712 937703087 556019376 265.1G 83 Linux

`/dev/sda` is where my original Arch installation is, and `/dev/sdc1` is where my new installation is. `sdx1` is where `/mnt` is located.

This is the newly generated `grub.cfg` with the new Arch install.

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
else
  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_input console
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=10
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux, with Linux linux-nzxt' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-nzxt-advanced-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-nzxt ...'
	linux	/boot/vmlinuz-linux-nzxt root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-nzxt.img
}
menuentry 'Arch Linux, with Linux linux-nzxt (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-nzxt-fallback-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-nzxt ...'
	linux	/boot/vmlinuz-linux-nzxt root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-nzxt-fallback.img
}
menuentry 'Arch Linux, with Linux linux-lts' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-lts-advanced-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-lts ...'
	linux	/boot/vmlinuz-linux-lts root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-lts.img
}
menuentry 'Arch Linux, with Linux linux-lts (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-lts-fallback-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-lts ...'
	linux	/boot/vmlinuz-linux-lts root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-lts-fallback.img
}
menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux ...'
	linux	/boot/vmlinuz-linux root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux.img
}
menuentry 'Arch Linux, with Linux linux (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux ...'
	linux	/boot/vmlinuz-linux root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-fallback.img
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
  insmod bli
fi
### END /etc/grub.d/25_bli ###

### BEGIN /etc/grub.d/30_os-prober ###
	menuentry 'Arch Linux (on /dev/sdc1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux-lts--35cf6588-879a-44c9-a971-2b113ddf3f3a' {
		savedefault
		insmod part_msdos
		insmod ext2
		set root='hd2,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd2,msdos1 --hint-efi=hd2,msdos1 --hint-baremetal=ahci2,msdos1  35cf6588-879a-44c9-a971-2b113ddf3f3a
		else
		  search --no-floppy --fs-uuid --set=root 35cf6588-879a-44c9-a971-2b113ddf3f3a
		fi
		linux /boot/vmlinuz-linux-lts root=UUID=35cf6588-879a-44c9-a971-2b113ddf3f3a rw loglevel=3 quiet
		initrd /boot/initramfs-linux-lts.img
	}
	menuentry 'Arch Linux, with Linux linux-lts (on /dev/sdc1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux-lts--35cf6588-879a-44c9-a971-2b113ddf3f3a' {
		savedefault
		insmod part_msdos
		insmod ext2
		set root='hd2,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd2,msdos1 --hint-efi=hd2,msdos1 --hint-baremetal=ahci2,msdos1  35cf6588-879a-44c9-a971-2b113ddf3f3a
		else
		  search --no-floppy --fs-uuid --set=root 35cf6588-879a-44c9-a971-2b113ddf3f3a
		fi
		linux /boot/vmlinuz-linux-lts root=UUID=35cf6588-879a-44c9-a971-2b113ddf3f3a rw loglevel=3 quiet
		initrd /boot/initramfs-linux-lts.img
	}
	menuentry 'Arch Linux, with Linux linux-lts (fallback initramfs) (on /dev/sdc1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux-lts--35cf6588-879a-44c9-a971-2b113ddf3f3a' {
		savedefault
		insmod part_msdos
		insmod ext2
		set root='hd2,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd2,msdos1 --hint-efi=hd2,msdos1 --hint-baremetal=ahci2,msdos1  35cf6588-879a-44c9-a971-2b113ddf3f3a
		else
		  search --no-floppy --fs-uuid --set=root 35cf6588-879a-44c9-a971-2b113ddf3f3a
		fi
		linux /boot/vmlinuz-linux-lts root=UUID=35cf6588-879a-44c9-a971-2b113ddf3f3a rw loglevel=3 quiet
		initrd /boot/initramfs-linux-lts-fallback.img
	}
	menuentry 'Arch Linux, with Linux linux (on /dev/sdc1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--35cf6588-879a-44c9-a971-2b113ddf3f3a' {
		savedefault
		insmod part_msdos
		insmod ext2
		set root='hd2,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd2,msdos1 --hint-efi=hd2,msdos1 --hint-baremetal=ahci2,msdos1  35cf6588-879a-44c9-a971-2b113ddf3f3a
		else
		  search --no-floppy --fs-uuid --set=root 35cf6588-879a-44c9-a971-2b113ddf3f3a
		fi
		linux /boot/vmlinuz-linux root=UUID=35cf6588-879a-44c9-a971-2b113ddf3f3a rw loglevel=3 quiet
		initrd /boot/initramfs-linux.img
	}
	menuentry 'Arch Linux, with Linux linux (fallback initramfs) (on /dev/sdc1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--35cf6588-879a-44c9-a971-2b113ddf3f3a' {
		savedefault
		insmod part_msdos
		insmod ext2
		set root='hd2,msdos1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,msdos1' --hint-bios=hd2,msdos1 --hint-efi=hd2,msdos1 --hint-baremetal=ahci2,msdos1  35cf6588-879a-44c9-a971-2b113ddf3f3a
		else
		  search --no-floppy --fs-uuid --set=root 35cf6588-879a-44c9-a971-2b113ddf3f3a
		fi
		linux /boot/vmlinuz-linux root=UUID=35cf6588-879a-44c9-a971-2b113ddf3f3a rw loglevel=3 quiet
		initrd /boot/initramfs-linux-fallback.img
	}

### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
	fwsetup --is-supported
	if [ "$?" = 0 ]; then
		menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
			fwsetup
		}
	fi
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

I tried reverting back to the `grub.cfg` before it detected the new Arch install, but that didn't work either.

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="${saved_entry}"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
else
  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_input console
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=0
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=0
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux, with Linux linux-nzxt' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-nzxt-advanced-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-nzxt ...'
	linux	/boot/vmlinuz-linux-nzxt root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-nzxt.img
}
menuentry 'Arch Linux, with Linux linux-nzxt (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-nzxt-fallback-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-nzxt ...'
	linux	/boot/vmlinuz-linux-nzxt root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-nzxt-fallback.img
}
menuentry 'Arch Linux, with Linux linux-lts' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-lts-advanced-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-lts ...'
	linux	/boot/vmlinuz-linux-lts root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-lts.img
}
menuentry 'Arch Linux, with Linux linux-lts (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-lts-fallback-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux-lts ...'
	linux	/boot/vmlinuz-linux-lts root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-lts-fallback.img
}
menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux ...'
	linux	/boot/vmlinuz-linux root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux.img
}
menuentry 'Arch Linux, with Linux linux (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-82c7a2ef-a680-4300-b9b3-67a9df9c5e5e' {
	savedefault
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	else
	  search --no-floppy --fs-uuid --set=root 82c7a2ef-a680-4300-b9b3-67a9df9c5e5e
	fi
	echo	'Loading Linux linux ...'
	linux	/boot/vmlinuz-linux root=UUID=82c7a2ef-a680-4300-b9b3-67a9df9c5e5e rw cgroup_memory=1 cgroup_enable=memory swapaccount=1 quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux-fallback.img
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

I also tried `grub-install --removable` as per this forum comment, but that results in `install device isn't specified`.

Does anyone know how to resolve this issue?

Last edited by FuturisticFume (2024-02-22 18:17:23)

Offline

#2 2024-02-22 18:01:42

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,892

Re: [SOLVED] grub_rescue after 2nd Arch install

You need to install the updated GRUB payload again. I.e. the logical equivalent of what you did when running: https://wiki.archlinux.org/title/GRUB#BIOS_systems (assuming by the DOS partition table that GRUB is a BIOS install)

So from the info we have, chroot into your main/original linux install and run

grub-install --target=i386-pc /dev/sda

... you're basically running into https://archlinux.org/news/grub-bootloa … ibilities/ two years later

Offline

#3 2024-02-22 18:19:05

FuturisticFume
Member
Registered: 2018-04-12
Posts: 10

Re: [SOLVED] grub_rescue after 2nd Arch install

V1del wrote:
grub-install --target=i386-pc /dev/sda

This solved it. Thank you so much! Marked as solved.

Last edited by FuturisticFume (2024-02-22 18:19:43)

Offline

Board footer

Powered by FluxBB