You are not logged in.

#1 2019-10-14 12:18:15

ludog
Member
Registered: 2019-03-19
Posts: 41

Can only load Arch kernel with Ubuntu grub

I currently have Arch, Ubuntu and Windows installed.

>>sudo lsblk -l

Disk /dev/nvme0n1: 476.96 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: PM981 NVMe Samsung 512GB                
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: 0F5E0E65-3F15-464E-99D1-380AFFAB96B0

Device             Start       End   Sectors   Size Type
/dev/nvme0n1p1      2048   1050623   1048576   512M EFI System
/dev/nvme0n1p2   1050624 536020991 534970368 255.1G Linux root (x86-64)
/dev/nvme0n1p3 536023040 589705215  53682176  25.6G Linux filesystem
/dev/nvme0n1p4 589705216 589737983     32768    16M Microsoft reserved
/dev/nvme0n1p5 589737984 794505215 204767232  97.7G Microsoft basic data

If I try to boot Arch directly (either by setting its precedence to 1 in the BIOS settings or through the one-time grub menu), it fails. Screen stays black, fan whizzes a bit and then the computer shuts down. If, however, I boot Ubuntu and select Arch from Ubuntu's grub menu, then I first get

error: file '/boot/vmlinuz-linux' not found.
error: you need to load the kernel first

and then after few seconds Arch boots without any problems.

The error makes sense, because I am running the LTS kernel:

>> uname -a
Linux Umber 4.19.78-2-lts #1 SMP Wed Oct 9 16:25:33 CEST 2019 x86_64 GNU/Linux

so indeed there is no file '/boot/vimlinuz-linux'

>> ls /boot
grub  initramfs-linux-lts-fallback.img  initramfs-linux-lts.img  vmlinuz-linux-lts

and the path specified in the Ubuntu grub.cfg file is to the non-LTS kernel:

(with Ubuntu mounted at /mnt)

>> sudo cat /mnt/boot/grub/grub.cfg

#
# 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 ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  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 recordfail {
  set recordfail=1
  if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; 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_gpt
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root  cd9754d2-aafb-4622-a8a2-003c7ddb7852
else
  search --no-floppy --fs-uuid --set=root cd9754d2-aafb-4622-a8a2-003c7ddb7852
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_GB
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=30
else
  if [ x$feature_timeout_style = xy ] ; then
    set timeout_style=hidden
    set timeout=10
  # Fallback hidden-timeout code in case the timeout_style feature is
  # unavailable.
  elif sleep --interruptible 10 ; then
    set timeout=0
  fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
if background_color 44,0,30,0; then
  clear
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
	set gfxpayload="${1}"
	if [ "${1}" = "keep" ]; then
		set vt_handoff=vt.handoff=1
	else
		set vt_handoff=
	fi
}
if [ "${recordfail}" != 1 ]; then
  if [ -e ${prefix}/gfxblacklist.txt ]; then
    if hwmatch ${prefix}/gfxblacklist.txt 3; then
      if [ ${match} = 0 ]; then
        set linux_gfx_mode=keep
      else
        set linux_gfx_mode=text
      fi
    else
      set linux_gfx_mode=text
    fi
  else
    set linux_gfx_mode=keep
  fi
else
  set linux_gfx_mode=text
fi
export linux_gfx_mode

menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-d267405d-054e-46fb-967f-f2bde1a6fbed'
 {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_gpt
        insmod ext2
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
        else
          search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
        fi
        echo    'Loading Linux linux-lts ...'
        linux   /boot/vmlinuz-linux-lts root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initramfs-linux-lts.img
}



menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-cd9754d2-aafb-4622-a8a2-003c7ddb7852' {
	recordfail
	load_video
	gfxmode $linux_gfx_mode
	insmod gzio
	if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
	insmod part_gpt
	insmod ext2
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root  cd9754d2-aafb-4622-a8a2-003c7ddb7852
	else
	  search --no-floppy --fs-uuid --set=root cd9754d2-aafb-4622-a8a2-003c7ddb7852
	fi
        linux	/boot/vmlinuz-4.18.0-15-generic root=UUID=cd9754d2-aafb-4622-a8a2-003c7ddb7852 ro  quiet splash $vt_handoff
	initrd	/boot/initrd.img-4.18.0-15-generic
}
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-cd9754d2-aafb-4622-a8a2-003c7ddb7852' {
	menuentry 'Ubuntu, with Linux 4.18.0-15-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.18.0-15-generic-advanced-cd9754d2-aafb-4622-a8a2-003c7ddb7852' {
		recordfail
		load_video
		gfxmode $linux_gfx_mode
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root  cd9754d2-aafb-4622-a8a2-003c7ddb7852
		else
		  search --no-floppy --fs-uuid --set=root cd9754d2-aafb-4622-a8a2-003c7ddb7852
		fi
		echo	'Loading Linux 4.18.0-15-generic ...'
	        linux	/boot/vmlinuz-4.18.0-15-generic root=UUID=cd9754d2-aafb-4622-a8a2-003c7ddb7852 ro  quiet splash $vt_handoff
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-4.18.0-15-generic
	}
	menuentry 'Ubuntu, with Linux 4.18.0-15-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.18.0-15-generic-recovery-cd9754d2-aafb-4622-a8a2-003c7ddb7852' {
		recordfail
		load_video
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root  cd9754d2-aafb-4622-a8a2-003c7ddb7852
		else
		  search --no-floppy --fs-uuid --set=root cd9754d2-aafb-4622-a8a2-003c7ddb7852
		fi
		echo	'Loading Linux 4.18.0-15-generic ...'
	        linux	/boot/vmlinuz-4.18.0-15-generic root=UUID=cd9754d2-aafb-4622-a8a2-003c7ddb7852 ro recovery nomodeset 
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-4.18.0-15-generic
	}
}

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

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

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

### BEGIN /etc/grub.d/20_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Arch Linux (on /dev/nvme0n1p3)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-d267405d-054e-46fb-967f-f2bde1a6fbed' {
	insmod part_gpt
	insmod ext2
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
	else
	  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
	fi
	linux /boot/vmlinuz-linux root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw quiet
	initrd /boot/initramfs-linux.img
}
submenu 'Advanced options for Arch Linux (on /dev/nvme0n1p3)' $menuentry_id_option 'osprober-gnulinux-advanced-d267405d-054e-46fb-967f-f2bde1a6fbed' {
	menuentry 'Arch Linux (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--d267405d-054e-46fb-967f-f2bde1a6fbed' {
		insmod part_gpt
		insmod ext2
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
		else
		  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
		fi
		linux /boot/vmlinuz-linux root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw quiet
		initrd /boot/initramfs-linux.img
	}
	menuentry 'Arch Linux, with Linux linux (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--d267405d-054e-46fb-967f-f2bde1a6fbed' {
		insmod part_gpt
		insmod ext2
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
		else
		  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
		fi
		linux /boot/vmlinuz-linux root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw quiet
		initrd /boot/initramfs-linux.img
	}
	menuentry 'Arch Linux, with Linux linux (fallback initramfs) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--d267405d-054e-46fb-967f-f2bde1a6fbed' {
		insmod part_gpt
		insmod ext2
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
		else
		  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
		fi
		linux /boot/vmlinuz-linux root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw quiet
		initrd /boot/initramfs-linux-fallback.img
	}
}

set timeout_style=menu
if [ "${timeout}" = 0 ]; then
  set timeout=10
fi
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
menuentry 'System setup' $menuentry_id_option 'uefi-firmware' {
	fwsetup
}
### 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 also have grub installed in Arch, and here the path is correctly pointing to the LTS kernel, so I don't understand why I can't boot Arch directly.

>> sudo cat /boot/grub/grub.cfg

#
# 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_gpt
insmod ext2
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
else
  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
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_IE
  insmod gettext
fi
terminal_input console
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=5
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-d267405d-054e-46fb-967f-f2bde1a6fbed' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_gpt
	insmod ext2
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
	else
	  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
	fi
	echo	'Loading Linux linux-lts ...'
	linux	/boot/vmlinuz-linux root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw  quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-d267405d-054e-46fb-967f-f2bde1a6fbed' {
	menuentry 'Arch Linux, with Linux linux-lts' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-lts-advanced-d267405d-054e-46fb-967f-f2bde1a6fbed' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod ext2
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
		else
		  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
		fi
		echo	'Loading Linux linux-lts ...'
		linux	/boot/vmlinuz-linux-lts root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw  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-d267405d-054e-46fb-967f-f2bde1a6fbed' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod ext2
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root  d267405d-054e-46fb-967f-f2bde1a6fbed
		else
		  search --no-floppy --fs-uuid --set=root d267405d-054e-46fb-967f-f2bde1a6fbed
		fi
		echo	'Loading Linux linux-lts ...'
		linux	/boot/vmlinuz-linux-lts root=UUID=d267405d-054e-46fb-967f-f2bde1a6fbed rw  quiet
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initramfs-linux-lts-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 ###
menuentry 'Windows Boot Manager (on /dev/nvme0n1p1)' --class windows --class os $menuentry_id_option 'osprober-efi-A5B5-2175' {
	insmod part_gpt
	insmod fat
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root  A5B5-2175
	else
	  search --no-floppy --fs-uuid --set=root A5B5-2175
	fi
	chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
### 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 ###

What I want is to be able to delete Ubuntu (I only use it for this workaround), keep only Arch and Windows, and boot straight into Arch.

Last edited by ludog (2019-10-14 12:39:45)

Offline

#2 2019-10-14 12:25:46

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 11,845
Website

Re: Can only load Arch kernel with Ubuntu grub

Looks like you are running on a UEFI system, so install and/or configure a boot manager to your ESP from Arch.

https://wiki.archlinux.org/index.php/Ar … oot_loader


Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Offline

#3 2019-10-14 12:40:17

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

thanks for the quick reply, see my edit to the post saying I have grub installed in Arch already

Last edited by ludog (2019-10-14 12:42:05)

Offline

#4 2019-10-14 13:50:54

Mr.Elendig
#archlinux@freenode channel op
From: The intertubes
Registered: 2004-11-07
Posts: 4,092

Re: Can only load Arch kernel with Ubuntu grub

Simplest solution is really simply to write a proper entry for arch in the ubuntu grub configs and simply use that to boot arch if you intend to keep the tripple boot.

Edit: and simply don't set up a bootloader in arch.

Last edited by Mr.Elendig (2019-10-14 13:51:37)


Evil #archlinux@libera.chat channel op and general support dude.
. files on github, Screenshots, Random pics and the rest

Offline

#5 2019-10-14 14:28:10

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

Hi, thanks. I don't want to keep the triple boot, and actually when I correct the ubuntu grub config to point to /boot/vimlinuz-linux-lts then it also fails to boot Arch. It seems that Arch will only boot if the boot loader specifies an incorrect path to the kernel.

Offline

#6 2019-10-15 10:23:06

sabroad
Member
Registered: 2015-05-24
Posts: 242

Re: Can only load Arch kernel with Ubuntu grub

ludog wrote:

If I try to boot Arch directly [...] Screen stays black, fan whizzes a bit and then the computer shuts down. If, however, I boot Ubuntu [...]

Do you have Secure Boot enabled?

ludog wrote:

I also have grub installed in Arch

It looks like you have two partitions on which /boot resides. What are the current UEFI boot entries?

# efibootmgr -v

--
saint_abroad

Offline

#7 2019-10-15 11:15:15

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

sabroad wrote:

Do you have secure boot enabled?

No I don't have secure boot enabled.

sabroad wrote:

What are the current UEFI boot entries?

BootCurrent: 0008
Timeout: 2 seconds
BootOrder: 0001,0008,0000,0004,0005,0006,0007
Boot0000* Windows Boot Manager	HD(1,GPT,8500a574-ea04-4bed-9e05-c25070252c32,0x800,0x100000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...t................
Boot0001  arch	PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)/HD(1,GPT,8500a574-ea04-4bed-9e05-c25070252c32,0x800,0x100000)/File(\EFI\GRUB\grubx64.efi)
Boot0004* Diskette Drive	BBS(Floppy,Diskette Drive,0x0)..BO
Boot0005* USB Storage Device	BBS(USB,USB Storage Device,0x0)..BO
Boot0006* CD/DVD/CD-RW Drive	BBS(CDROM,CD/DVD/CD-RW Drive,0x0)..BO
Boot0007* Onboard NIC	BBS(Network,Onboard NIC,0x0)..BO
Boot0008* ubuntu	HD(1,GPT,8500a574-ea04-4bed-9e05-c25070252c32,0x800,0x100000)/File(\EFI\ubuntu\shimx64.efi)

Offline

#8 2019-10-15 11:40:38

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

Re: Can only load Arch kernel with Ubuntu grub

Your Arch entry is marked as inactive:

sudo efibootmgr -a 1

if that doesn't stick on reboot, you will have to look into your UEFI firmware, it's likely to have a configuration to mark entries as valid. What motherboard/laptop are we talking here exactly?

Offline

#9 2019-10-15 12:16:51

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

I tried that command (actually had to add -b option to get it to work)

sudo efibootmgr -a -b 0001

Then I rebooted and got the error

error symbol 'grub_efi_secure_boot' not found. 
error symbol 'grub_efi_secure_boot' not found. 

I was locked out of both Arch and Ubuntu. However, by bringing up the one-time boot menu and selecting Ubuntu, I was able to login to Arch as before, i.e. I got the old error

error: file '/boot/vmlinuz-linux' not found.
error: you need to load the kernel first

which went away after a few seconds. The change did stick, as now

>>efibootmgr -v

BootCurrent: 0008
Timeout: 2 seconds
BootOrder: 0001,0008,0000,0004,0005,0006,0007
Boot0000* Windows Boot Manager	HD(1,GPT,8500a574-ea04-4bed-9e05-c25070252c32,0x800,0x100000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...t................
Boot0001* arch	PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)/HD(1,GPT,8500a574-ea04-4bed-9e05-c25070252c32,0x800,0x100000)/File(\EFI\GRUB\grubx64.efi)
Boot0004* Diskette Drive	BBS(Floppy,Diskette Drive,0x0)..BO
Boot0005* USB Storage Device	BBS(USB,USB Storage Device,0x0)..BO
Boot0006* CD/DVD/CD-RW Drive	BBS(CDROM,CD/DVD/CD-RW Drive,0x0)..BO
Boot0007* Onboard NIC	BBS(Network,Onboard NIC,0x0)..BO
Boot0008* ubuntu	HD(1,GPT,8500a574-ea04-4bed-9e05-c25070252c32,0x800,0x100000)/File(\EFI\ubuntu\shimx64.efi)

It seems that if it tries to load the Arch grub, not only does it fail but it also mucks up any subsequent boot attempts from Ubuntu grub.

Offline

#10 2019-10-15 12:24:06

sabroad
Member
Registered: 2015-05-24
Posts: 242

Re: Can only load Arch kernel with Ubuntu grub

ludog wrote:
Boot0001  arch	PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)/HD(1,GPT,8500a574-ea04-4bed-9e05-c25070252c32,0x800,0x100000)/File(\EFI\GRUB\grubx64.efi)

What did you use to create this entry? It looks it was created by the BIOS (and/or hasn't guessed the nvme edd).

Did you use grub-install from the installation chroot?

# grub-install --target=x86_64-efi --efi-directory=esp --bootloader-id=GRUB

--
saint_abroad

Offline

#11 2019-10-15 12:24:55

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

V1del wrote:

What motherboard/laptop are we talking here exactly?

I'm not sure the best way to display hardware info, does this give the info you need?

>>sudo lshw

    description: Notebook
    product: XPS 15 9570 (087C)
    vendor: Dell Inc.
    serial: 92K9SQ2
    width: 4294967295 bits
    capabilities: smbios-3.1 dmi-3.1 smp vsyscall32
    configuration: boot=normal chassis=notebook family=XPS sku=087C uuid=44454C4C-3200-104B-8039-B9C04F535132
  *-core
       description: Motherboard
       product: 02MJVY
       vendor: Dell Inc.
       physical id: 0
       version: A00
       serial: /92K9SQ2/CNCMK0088K0B1F/
     *-firmware
          description: BIOS
          vendor: Dell Inc.
          physical id: 0
          version: 1.8.1
          date: 02/01/2019
          size: 64KiB
          capacity: 15MiB
          capabilities: pci pnp upgrade shadowing cdboot bootselect edd int13floppynec int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer acpi usb smartbattery biosbootspecification netboot uefi
     *-memory
          description: System Memory
          physical id: 3e
          slot: System board or motherboard
          size: 16GiB
        *-bank:0
             description: SODIMM DDR4 Synchronous 2667 MHz (0.4 ns)
             product: HMA81GS6CJR8N-VK
             vendor: Hynix Semiconductor (Hyundai Electronics)
             physical id: 0
             serial: 330ABD0D
             slot: DIMM A
             size: 8GiB
             width: 64 bits
             clock: 2667MHz (0.4ns)
        *-bank:1
             description: SODIMM DDR4 Synchronous 2667 MHz (0.4 ns)
             product: HMA81GS6CJR8N-VK
             vendor: Hynix Semiconductor (Hyundai Electronics)
             physical id: 1
             serial: 330ABD02
             slot: DIMM B
             size: 8GiB
             width: 64 bits
             clock: 2667MHz (0.4ns)
     *-cache:0
          description: L1 cache
          physical id: 47
          slot: L1 Cache
          size: 384KiB
          capacity: 384KiB
          capabilities: synchronous internal write-back unified
          configuration: level=1
     *-cache:1
          description: L2 cache
          physical id: 48
          slot: L2 Cache
          size: 1536KiB
          capacity: 1536KiB
          capabilities: synchronous internal write-back unified
          configuration: level=2
     *-cache:2
          description: L3 cache
          physical id: 49
          slot: L3 Cache
          size: 9MiB
          capacity: 9MiB
          capabilities: synchronous internal write-back unified
          configuration: level=3
     *-cpu
          description: CPU
          product: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
          vendor: Intel Corp.
          physical id: 4a
          bus info: cpu@0
          version: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
          serial: To Be Filled By O.E.M.
          slot: U3E1
          size: 4081MHz
          capacity: 4100MHz
          width: 64 bits
          clock: 100MHz
          capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp flush_l1d cpufreq
          configuration: cores=6 enabledcores=6 threads=12
     *-pci
          description: Host bridge
          product: 8th Gen Core Processor Host Bridge/DRAM Registers
          vendor: Intel Corporation
          physical id: 100
          bus info: pci@0000:00:00.0
          version: 07
          width: 32 bits
          clock: 33MHz
          configuration: driver=skl_uncore
          resources: irq:0
        *-pci:0
             description: PCI bridge
             product: Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x16)
             vendor: Intel Corporation
             physical id: 1
             bus info: pci@0000:00:01.0
             version: 07
             width: 32 bits
             clock: 33MHz
             capabilities: pci pm msi pciexpress normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:122 ioport:3000(size=4096) memory:ec000000-ed0fffff ioport:c0000000(size=301989888)
           *-display UNCLAIMED
                description: 3D controller
                product: GP107M [GeForce GTX 1050 Ti Mobile]
                vendor: NVIDIA Corporation
                physical id: 0
                bus info: pci@0000:01:00.0
                version: a1
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress bus_master cap_list
                configuration: latency=0
                resources: memory:ec000000-ecffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:3000(size=128) memory:ed000000-ed07ffff
        *-display
             description: VGA compatible controller
             product: UHD Graphics 630 (Mobile)
             vendor: Intel Corporation
             physical id: 2
             bus info: pci@0000:00:02.0
             version: 00
             width: 64 bits
             clock: 33MHz
             capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
             configuration: driver=i915 latency=0
             resources: irq:145 memory:eb000000-ebffffff memory:80000000-8fffffff ioport:4000(size=64) memory:c0000-dffff
        *-generic:0
             description: Signal processing controller
             product: Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem
             vendor: Intel Corporation
             physical id: 4
             bus info: pci@0000:00:04.0
             version: 07
             width: 64 bits
             clock: 33MHz
             capabilities: msi pm cap_list
             configuration: driver=proc_thermal latency=0
             resources: irq:16 memory:ed610000-ed617fff
        *-generic:1 UNCLAIMED
             description: System peripheral
             product: Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
             vendor: Intel Corporation
             physical id: 8
             bus info: pci@0000:00:08.0
             version: 00
             width: 64 bits
             clock: 33MHz
             capabilities: msi pm cap_list
             configuration: latency=0
             resources: memory:ed628000-ed628fff
        *-generic:2
             description: Signal processing controller
             product: Cannon Lake PCH Thermal Controller
             vendor: Intel Corporation
             physical id: 12
             bus info: pci@0000:00:12.0
             version: 10
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi cap_list
             configuration: driver=intel_pch_thermal latency=0
             resources: irq:16 memory:ed627000-ed627fff
        *-usb
             description: USB controller
             product: Cannon Lake PCH USB 3.1 xHCI Host Controller
             vendor: Intel Corporation
             physical id: 14
             bus info: pci@0000:00:14.0
             version: 10
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi xhci bus_master cap_list
             configuration: driver=xhci_hcd latency=0
             resources: irq:141 memory:ed600000-ed60ffff
           *-usbhost:0
                product: xHCI Host Controller
                vendor: Linux 4.19.78-2-lts xhci-hcd
                physical id: 0
                bus info: usb@1
                logical name: usb1
                version: 4.19
                capabilities: usb-2.00
                configuration: driver=hub slots=16 speed=480Mbit/s
              *-usb:0
                   description: Bluetooth wireless interface
                   vendor: Qualcomm Atheros Communications
                   physical id: 4
                   bus info: usb@1:4
                   version: 0.01
                   capabilities: bluetooth usb-2.01
                   configuration: driver=btusb maxpower=100mA speed=12Mbit/s
              *-usb:1
                   description: Modem
                   product: Goodix Fingerprint Device
                   vendor: HTMicroelectronics
                   physical id: 7
                   bus info: usb@1:7
                   version: 1.00
                   serial: HTK32
                   capabilities: usb-2.00 atcommands
                   configuration: driver=cdc_acm maxpower=100mA speed=12Mbit/s
              *-usb:2
                   description: Video
                   product: Integrated_Webcam_HD
                   vendor: CN0VGCNHLOG0087DA5TAA00
                   physical id: c
                   bus info: usb@1:c
                   version: 81.31
                   capabilities: usb-2.01
                   configuration: driver=uvcvideo maxpower=500mA speed=480Mbit/s
           *-usbhost:1
                product: xHCI Host Controller
                vendor: Linux 4.19.78-2-lts xhci-hcd
                physical id: 1
                bus info: usb@2
                logical name: usb2
                version: 4.19
                capabilities: usb-3.00
                configuration: driver=hub slots=10 speed=5000Mbit/s
        *-memory UNCLAIMED
             description: RAM memory
             product: Cannon Lake PCH Shared SRAM
             vendor: Intel Corporation
             physical id: 14.2
             bus info: pci@0000:00:14.2
             version: 10
             width: 64 bits
             clock: 33MHz (30.3ns)
             capabilities: pm cap_list
             configuration: latency=0
             resources: memory:ed61e000-ed61ffff memory:ed626000-ed626fff
        *-serial:0
             description: Serial bus controller
             product: Cannon Lake PCH Serial IO I2C Controller #0
             vendor: Intel Corporation
             physical id: 15
             bus info: pci@0000:00:15.0
             version: 10
             width: 64 bits
             clock: 33MHz
             capabilities: pm bus_master cap_list
             configuration: driver=intel-lpss latency=0
             resources: irq:16 memory:7f800000-7f800fff
        *-serial:1
             description: Serial bus controller
             product: Cannon Lake PCH Serial IO I2C Controller #1
             vendor: Intel Corporation
             physical id: 15.1
             bus info: pci@0000:00:15.1
             version: 10
             width: 64 bits
             clock: 33MHz
             capabilities: pm bus_master cap_list
             configuration: driver=intel-lpss latency=0
             resources: irq:17 memory:7f801000-7f801fff
        *-communication
             description: Communication controller
             product: Cannon Lake PCH HECI Controller
             vendor: Intel Corporation
             physical id: 16
             bus info: pci@0000:00:16.0
             version: 10
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi bus_master cap_list
             configuration: driver=mei_me latency=0
             resources: irq:143 memory:ed623000-ed623fff
        *-storage
             description: SATA controller
             product: Cannon Lake Mobile PCH SATA AHCI Controller
             vendor: Intel Corporation
             physical id: 17
             bus info: pci@0000:00:17.0
             version: 10
             width: 32 bits
             clock: 66MHz
             capabilities: storage msi pm ahci_1.0 bus_master cap_list
             configuration: driver=ahci latency=0
             resources: irq:142 memory:ed61c000-ed61dfff memory:ed622000-ed6220ff ioport:4090(size=8) ioport:4080(size=4) ioport:4060(size=32) memory:ed621000-ed6217ff
        *-pci:1
             description: PCI bridge
             product: Cannon Lake PCH PCI Express Root Port #17
             vendor: Intel Corporation
             physical id: 1b
             bus info: pci@0000:00:1b.0
             version: f0
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:123 ioport:5000(size=4096) memory:d4000000-ea0fffff ioport:90000000(size=570425344)
        *-pci:2
             description: PCI bridge
             product: Cannon Lake PCH PCI Express Root Port #1
             vendor: Intel Corporation
             physical id: 1c
             bus info: pci@0000:00:1c.0
             version: f0
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:124 memory:ed200000-ed3fffff
           *-network
                description: Wireless interface
                product: QCA6174 802.11ac Wireless Network Adapter
                vendor: Qualcomm Atheros
                physical id: 0
                bus info: pci@0000:3b:00.0
                logical name: wlp59s0
                version: 32
                serial: 9c:b6:d0:ba:12:31
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
                configuration: broadcast=yes driver=ath10k_pci driverversion=4.19.78-2-lts firmware=WLAN.RM.4.4.1-00140-QCARMSWPZ-1 ip=10.21.207.124 latency=0 link=yes multicast=yes wireless=IEEE 802.11
                resources: irq:144 memory:ed200000-ed3fffff
        *-pci:3
             description: PCI bridge
             product: Cannon Lake PCH PCI Express Root Port #5
             vendor: Intel Corporation
             physical id: 1c.4
             bus info: pci@0000:00:1c.4
             version: f0
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:125 memory:ed500000-ed5fffff
           *-generic
                description: Unassigned class
                product: RTS525A PCI Express Card Reader
                vendor: Realtek Semiconductor Co., Ltd.
                physical id: 0
                bus info: pci@0000:3c:00.0
                version: 01
                width: 32 bits
                clock: 33MHz
                capabilities: pm msi pciexpress bus_master cap_list
                configuration: driver=rtsx_pci latency=0
                resources: irq:140 memory:ed500000-ed500fff
        *-pci:4
             description: PCI bridge
             product: Cannon Lake PCH PCI Express Root Port #9
             vendor: Intel Corporation
             physical id: 1d
             bus info: pci@0000:00:1d.0
             version: f0
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:126 memory:ed400000-ed4fffff
           *-storage
                description: Non-Volatile memory controller
                product: NVMe SSD Controller SM981/PM981/PM983
                vendor: Samsung Electronics Co Ltd
                physical id: 0
                bus info: pci@0000:3d:00.0
                version: 00
                width: 64 bits
                clock: 33MHz
                capabilities: storage pm msi pciexpress msix nvm_express bus_master cap_list
                configuration: driver=nvme latency=0
                resources: irq:16 memory:ed400000-ed403fff
        *-isa
             description: ISA bridge
             product: Intel Corporation
             vendor: Intel Corporation
             physical id: 1f
             bus info: pci@0000:00:1f.0
             version: 10
             width: 32 bits
             clock: 33MHz
             capabilities: isa bus_master
             configuration: latency=0
        *-multimedia
             description: Audio device
             product: Cannon Lake PCH cAVS
             vendor: Intel Corporation
             physical id: 1f.3
             bus info: pci@0000:00:1f.3
             version: 10
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi bus_master cap_list
             configuration: driver=snd_hda_intel latency=32
             resources: irq:146 memory:ed618000-ed61bfff memory:ed100000-ed1fffff
        *-serial:2
             description: SMBus
             product: Cannon Lake PCH SMBus Controller
             vendor: Intel Corporation
             physical id: 1f.4
             bus info: pci@0000:00:1f.4
             version: 10
             width: 64 bits
             clock: 33MHz
             configuration: driver=i801_smbus latency=0
             resources: irq:16 memory:ed620000-ed6200ff ioport:efa0(size=32)
        *-serial:3 UNCLAIMED
             description: Serial bus controller
             product: Cannon Lake PCH SPI Controller
             vendor: Intel Corporation
             physical id: 1f.5
             bus info: pci@0000:00:1f.5
             version: 10
             width: 32 bits
             clock: 33MHz
             configuration: latency=0
             resources: memory:fe010000-fe010fff
  *-battery
       product: DELL GPM0365
       vendor: SMP
       physical id: 1
       version: 07/16/2018
       serial: 01CC
       slot: Sys. Battery Bay
       capacity: 97000mWh
       configuration: voltage=11.4V

Offline

#12 2019-10-15 12:35:12

loqs
Member
Registered: 2014-03-06
Posts: 17,321

Re: Can only load Arch kernel with Ubuntu grub

/dev/nvme0n1p2   1050624 536020991 534970368 255.1G Linux root (x86-64)
/dev/nvme0n1p3 536023040 589705215  53682176  25.6G Linux filesystem

Does /dev/nvme0n1p2  contain the Ubuntu root filesystem and /dev/nvme0n1p3 the arch root filesystem?
When you installed arch where was the ESP mounted?  Please also post a directory listing for the ESP.

Online

#13 2019-10-15 12:37:08

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

@sabroad I believe I ran that command back when I installed Arch, after chroot-ing from the USB to the mounted Arch OS. It was a few months ago though, so I can't remember for sure. Are you suggesting to run that command now? What is 'esp'? Should I replace it with an appropriate path? Currently I have efi/EFI/BOOT/BOOTX64.EFI, so maybe

grub-install --target=x86_64-efi --efi-directory=efi/EFI/BOOT/ --bootloader-id=GRUB

Offline

#14 2019-10-15 12:42:50

loqs
Member
Registered: 2014-03-06
Posts: 17,321

Re: Can only load Arch kernel with Ubuntu grub

What guide did you follow when installing arch?

Online

#15 2019-10-15 12:45:02

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

loqs wrote:

Does /dev/nvme0n1p2  contain the Ubuntu root filesystem and /dev/nvme0n1p3 the arch root filesystem?

Other way around, /dev/nvme0n1p2 is Arch and dev/nvme0n1p3 is Ubuntu

loqs wrote:

When you installed arch where was the ESP mounted?  Please also post a directory listing for the ESP.

It was mounted at /efi.

>>ls /efi/EFI
BOOT  Dell  GRUB  Microsoft  ubuntu

>>ls /efi/EFI/BOOT
BOOTX64.EFI  fbx64.efi

Offline

#16 2019-10-15 12:47:00

ludog
Member
Registered: 2019-03-19
Posts: 41

Re: Can only load Arch kernel with Ubuntu grub

loqs wrote:

What guide did you follow when installing arch?

The one from the wiki, https://wiki.archlinux.org/index.php/installation_guide.

Offline

Board footer

Powered by FluxBB