You are not logged in.

#1 2016-01-10 04:26:13

amagnasco
Member
Registered: 2015-09-23
Posts: 16

[Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Please help! I screwed up my work computer and I need it back online! I looked through EVERY post on this, +wiki, here and elsewhere. Didn't work. You are my only hope...

I just need to be able to boot in. Fixing the pacman dependency issue or GRUB, or finding out what caused the initial crash, would be an added bonus.

Timeline:
(1) Yesterday my Lenovo Ideapad Yoga 211 running vanilla Arch kernel randomly crashed. I didn't get to see the error message if there was any.
(2) Reboot failed because of a running issue with pacman kernel update breaking dependencies. I usually just boot from a USB iso, mount everything, arch-chroot, and update kernel.
(3) This time I was tired of having to do that every time I turn on the computer, so I decided to install GRUB (saw a forum post somewhere that rEFInd was causing it? not sure.)
(4) GRUB install had no errors, but won't even show up. Just jumps straight to boot, which drops me straight into a recovery shell.
(5) rEFInd works, but still dropped into recovery or kernel panic unless mounting USB iso. Per some forum post, copied efis from /boot/ to /boot/EFI and /boot/EFI/arch

rEFInd:
(1) /boot/EFI/vmlinuz --> tries to mount /dev/mapper/arch_airootfs, kernel panic
(2) /boot/EFI/systemd/systemd-bootx64.efi --> tries to mount ' ', drops to recovery rootfs. Similar error: https://bbs.archlinux.org/viewtopic.php?id=142052
(3) /boot/EFI/arch/vmlinuz --> tries to mount ubuntu_os (???) with correct partUUID and label. mounts successfully, but since ubuntu_os is blank, it drops to recovery rootfs. No idea where it got this value from.
(4) /boot/vmlinuz --> tries to mount arch_os with correct UUID and label, "waiting 10 seconds", kernel panic. Similar error: https://bbs.archlinux.org/viewtopic.php?id=184554

Tried several times:
genfstab -U /mnt > /mnt/etc/fstab
mkinitcpio -p linux
pacman -S linux systemd

sda1 is /boot, sda2 is /, sda3 is /home. sda4 and 5 are blank. sdb is the pen drive iso.

# lsblk -o +uuid

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT                UUID
sda      8:0    0 465.8G  0 disk                           
├─sda1   8:1    0   499M  0 part /mnt/boot                 FF14-4A90
├─sda2   8:2    0    20G  0 part /mnt                      e87d3b2d-d254-4ad8-a461-d24bb0482000
├─sda3   8:3    0    80G  0 part /mnt/home                 b9f71e80-93d6-422a-9556-1afcc7183e90
├─sda4   8:4    0    20G  0 part                           77afc557-e8fb-4e80-bc18-55a50f145fea
├─sda5   8:5    0    80G  0 part                           a673b61f-165e-4a44-b8a1-141b8be9d34d
└─sda6   8:6    0    15G  0 part                           b3bf67d2-bddb-4a9f-b413-8267faac83c5
sdb      8:16   1  29.8G  0 disk                           2016-01-01-11-39-46-00
├─sdb1   8:17   1   686M  0 part /run/archiso/bootmnt      2016-01-01-11-39-46-00
└─sdb2   8:18   1    31M  0 part                           53A0-40D0
loop0    7:0    0 300.3M  1 loop /run/archiso/sfs/airootfs 

# blkid

/dev/sda1: UUID="FF14-4A90" TYPE="vfat" PARTLABEL="EFI System" PARTUUID="77d700f1-090c-4aaa-8794-62df374ac884"
/dev/sda2: LABEL="Arch_os" UUID="e87d3b2d-d254-4ad8-a461-d24bb0482000" TYPE="ext4" PARTLABEL="Linux x86-64 root (/)" PARTUUID="b24a251e-2561-4563-a5ad-435ac547bd31"
/dev/sda3: LABEL="Arch_fs" UUID="b9f71e80-93d6-422a-9556-1afcc7183e90" TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="3e890ca5-bc44-4bfc-a091-4e872517efce"
/dev/sda4: LABEL="Ubuntu_os" UUID="77afc557-e8fb-4e80-bc18-55a50f145fea" TYPE="ext4" PARTLABEL="Linux x86-64 root (/)" PARTUUID="91cb3f86-9c3b-400f-95e0-7fe855aecbf3"
/dev/sda5: LABEL="Ubuntu_fs" UUID="a673b61f-165e-4a44-b8a1-141b8be9d34d" TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="0a42f865-794e-42a6-ad5b-3b3f8212f4f1"
/dev/sda6: UUID="b3bf67d2-bddb-4a9f-b413-8267faac83c5" TYPE="swap" PARTLABEL="Linux swap" PARTUUID="de78e4a4-c973-4324-bcfc-570ab67c5f1c"
/dev/sdb1: UUID="2016-01-01-11-39-46-00" LABEL="ARCH_201601" TYPE="iso9660" PTUUID="10714092" PTTYPE="dos" PARTUUID="10714092-01"
/dev/sdb2: SEC_TYPE="msdos" LABEL="ARCHISO_EFI" UUID="53A0-40D0" TYPE="vfat" PARTUUID="10714092-02"
/dev/loop0: TYPE="squashfs"

/mnt/etc/fstab

# /dev/sda2 LABEL=Arch_os
UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000	/         	ext4      	rw,relatime,data=ordered	0 1

# /dev/sda1
UUID=FF14-4A90      	/boot     	vfat      	rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro	0 2

# /dev/sda3 LABEL=Arch_fs
UUID=b9f71e80-93d6-422a-9556-1afcc7183e90	/home     	ext4      	rw,relatime,data=ordered	0 2

/boot/grub/grub.cfg. No idea where it got that random UUID from (ad4103fa-d940-47ca-8506-301d8071d467)

#
# 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
set default="0"

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,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  ad4103fa-d940-47ca-8506-301d8071d467
else
  search --no-floppy --fs-uuid --set=root ad4103fa-d940-47ca-8506-301d8071d467
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
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux, with Linux core repo kernel' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-true-ad4103fa-d940-47ca-8506-301d8071d467' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos5'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  ad4103fa-d940-47ca-8506-301d8071d467
	else
	  search --no-floppy --fs-uuid --set=root ad4103fa-d940-47ca-8506-301d8071d467
	fi
	echo	'Loading Linux core repo kernel ...'
	linux	/boot/vmlinuz-linux root=UUID=ad4103fa-d940-47ca-8506-301d8071d467 rw  quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initramfs-linux.img
}
menuentry 'Arch Linux, with Linux core repo kernel (Fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-fallback-ad4103fa-d940-47ca-8506-301d8071d467' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='hd0,msdos5'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  ad4103fa-d940-47ca-8506-301d8071d467
	else
	  search --no-floppy --fs-uuid --set=root ad4103fa-d940-47ca-8506-301d8071d467
	fi
	echo	'Loading Linux core repo kernel ...'
	linux	/boot/vmlinuz-linux root=UUID=ad4103fa-d940-47ca-8506-301d8071d467 rw  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/20_memtest86+ ###
### END /etc/grub.d/20_memtest86+ ###

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

/etc/default/grub

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
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 Hidden Menu, and optionally hide the timeout count
#GRUB_HIDDEN_TIMEOUT=5
#GRUB_HIDDEN_TIMEOUT_QUIET=true

# 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 `vbeinfo'
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"

#GRUB_SAVEDEFAULT="true"

/etc/mkinitcpio.conf

# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run.  Advanced users may wish to specify all system modules
# in this array.  For instance:
#     MODULES="piix ide_disk reiserfs"
MODULES=""

# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image.  This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=""

# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way.  This is useful for config files.
FILES=""

# HOOKS
# This is the most important setting in this file.  The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
##   This setup specifies all modules in the MODULES setting above.
##   No raid, lvm2, or encrypted root is needed.
#    HOOKS="base"
#
##   This setup will autodetect all modules for your system and should
##   work as a sane default
#    HOOKS="base udev autodetect block filesystems"
#
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS="base udev block filesystems"
#
##   This setup assembles a pata mdadm array with an encrypted root FS.
##   Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
#    HOOKS="base udev block mdadm encrypt filesystems"
#
##   This setup loads an lvm2 volume group on a usb device.
#    HOOKS="base udev block lvm2 filesystems"
#
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr, fsck and shutdown hooks.
HOOKS="base udev autodetect modconf block filesystems keyboard fsck"

# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"

# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=""

Thank you guys for your help! I really appreciate it.

Last edited by amagnasco (2016-01-12 18:54:20)

Offline

#2 2016-01-10 04:35:48

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 19,739

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Can you see your files on /mnt/home ?
Verify that this output is from a system booted from the install media prior to chroot.
How do you boot when everything is working normally?


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way

Offline

#3 2016-01-10 05:15:47

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Hi! Thanks for answering so quickly, you're a lifesaver.

All the output is after chrooting from usb iso. Just verified I can see all my files.

mount /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot
mount /dev/sda3 /mnt/home
arch-chroot /mnt

I normally boot /boot/vmlinuz-linux efi from rEFInd, completely vanilla.

Thanks again!

Offline

#4 2016-01-10 09:06:58

tom.ty89
Member
Registered: 2012-11-15
Posts: 897

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

This is all about your bootloader conf (no matter if you use grub or refind or whatsoever). Fix the root= kernel param. If you use grub, then make sure you generated grub.cfg (the one you have now is silly "stock" one shipped by the arch linux package non-sensely). Nothing will/can read your fstab before "/" is mounted so it's not relevant.

Offline

#5 2016-01-10 18:09:28

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Hi Tom,

I reran the config script, double-checked the output and ran grub. Recovery again.

# grub-mkconfig -o /boot/grub/grub.cfg

/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
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  e87d3b2d-d254-4ad8-a461-d24bb0482000
else
  search --no-floppy --fs-uuid --set=root e87d3b2d-d254-4ad8-a461-d24bb0482000
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=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-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_gpt 
	insmod fat
	set root='hd0,gpt1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  FF14-4A90
	else
	  search --no-floppy --fs-uuid --set=root FF14-4A90
	fi
	echo	'Loading Linux linux ...'
	linux	/vmlinuz-linux root=UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000 rw  quiet
	echo	'Loading initial ramdisk ...'
	initrd	 /initramfs-linux.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
	menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt 
		insmod fat
		set root='hd0,gpt1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  FF14-4A90
		else
		  search --no-floppy --fs-uuid --set=root FF14-4A90
		fi
		echo	'Loading Linux linux ...'
		linux	/vmlinuz-linux root=UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000 rw  quiet
		echo	'Loading initial ramdisk ...'
		initrd	 /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-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt 
		insmod fat
		set root='hd0,gpt1'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  FF14-4A90
		else
		  search --no-floppy --fs-uuid --set=root FF14-4A90
		fi
		echo	'Loading Linux linux ...'
		linux	/vmlinuz-linux root=UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000 rw  quiet
		echo	'Loading initial ramdisk ...'
		initrd	 /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 ###

### BEGIN /etc/grub.d/60_memtest86+ ###
### END /etc/grub.d/60_memtest86+ ###
[         0.035731] Ignoring BGRT: invalid status 0 (expected 1)
:: running early hook [udev]
:: Triggering uevents...
ERROR: device ' ' not found. Skipping fsck.
ERROR: Unable to find root device ' ' .
You are being dropped to a recovery shell
       Type 'exit' to try and continue booting
sh: can't access tty; job control turned off
[rootfs /]#

Last edited by amagnasco (2016-01-10 18:22:13)

Offline

#6 2016-01-10 18:46:38

TheSaint
Member
From: my computer
Registered: 2007-08-19
Posts: 1,523

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Correct your /boot/grub/grub.cfg

set root='hd0,gpt2'

You may do it on-the-fly when the grub menu appear and press e.
If it fails, you may try again with a different partition number.


do it good first, it will be faster than do it twice the saint wink

Offline

#7 2016-01-10 19:35:22

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Hi TheSaint. Thanks for helping.

as usual, when I select grub it doesn't even show up, it just drops right into gummiboot, and from there the same error and recovery.

edited /boot/grub/grub.cfg --> is this better? hd0,gpt2 is the root partition.

#
# 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
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  e87d3b2d-d254-4ad8-a461-d24bb0482000
else
  search --no-floppy --fs-uuid --set=root e87d3b2d-d254-4ad8-a461-d24bb0482000
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=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-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_gpt 
	insmod fat
	set root='hd0,gpt2'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  FF14-4A90
	else
	  search --no-floppy --fs-uuid --set=root FF14-4A90
	fi
	echo	'Loading Linux linux ...'
	linux	/vmlinuz-linux root=UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000 rw  quiet
	echo	'Loading initial ramdisk ...'
	initrd	 /initramfs-linux.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
	menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt 
		insmod fat
		set root='hd0,gpt2'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  FF14-4A90
		else
		  search --no-floppy --fs-uuid --set=root FF14-4A90
		fi
		echo	'Loading Linux linux ...'
		linux	/vmlinuz-linux root=UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000 rw  quiet
		echo	'Loading initial ramdisk ...'
		initrd	 /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-e87d3b2d-d254-4ad8-a461-d24bb0482000' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt 
		insmod fat
		set root='hd0,gpt2'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  FF14-4A90
		else
		  search --no-floppy --fs-uuid --set=root FF14-4A90
		fi
		echo	'Loading Linux linux ...'
		linux	/vmlinuz-linux root=UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000 rw  quiet
		echo	'Loading initial ramdisk ...'
		initrd	 /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 ###

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

so I decided to run

 # bootctl update 

and try again. Same error as last post.

here is the error I get with my usual rEFInd boot, in case it helps.

[         0.035422] Ignoring BGRT: invalid status 0 (expected 1)
:: running early hook [udev]
Warning: /lib/modules/4.2.5-1-ARCH/modules.devname not found - ignoring
starting version 228
:: running hook [udev]
:: Triggering uevents...
Waiting 10 seconds for device /dev/disk/by-uuid/e87d3b2d-d254-4ad8-a461-d24bb0482000 ...
ERROR: device 'e87d3b2d-d254-4ad8-a461-d24bb0482000' not found. Skipping fsck.
ERROR: Unable to find root device 'UUID=e87d3b2d-d254-4ad8-a461-d24bb0482000'.
You are being dropped to a recovery shell
         Type 'exit' to try and continue booting
sh: can't access tty: job control turned off
[rootfs /]#

Offline

#8 2016-01-10 20:14:31

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

I edited the rEFInd entry for /boot/EFI/arch/vmlinuz-linux so it has the right UUID and I managed to boot in perfectly!

It's not my normal EFI-- I'm really confused as to why it works now and if it will continue to do so. How can I (1) clean up this whole mess of EFIs, (2) get grub working, and (3) fix the original pacman dependency issue? I don't want to have to go through this again.

Thanks again everyone for your help!

Offline

#9 2016-01-10 20:14:55

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

amagnasco wrote:

(2) Reboot failed because of a running issue with pacman kernel update breaking dependencies. I usually just boot from a USB iso, mount everything, arch-chroot, and update kernel.

Please elaborate on this point.

Just to note: as you appear to be attempting to boot in UEFI mode, the original "set root=(hd0,gpt1)" was in fact correct -- the EFISYS partition is set as root first to find the kernel image and then the root filesystem is defined (correctly, by UUID) as a kernel command line option.

Switching around from one bootloader to another makes troubleshooting this problem more difficult.

Let's pick a method and stick with it.

I recommend systemd-boot as it is included in the base system.

Decscribe in great detail all the steps you take to set this up and post any error messages verbatim -- do not just offer a vague description of the error.

Last edited by Head_on_a_Stick (2016-01-10 20:15:25)

Offline

#10 2016-01-11 01:21:09

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Hi Head_on_a_Stick, thanks for helping.

Sorry for taking a while, my machine has been freezing up for no reason. That might have been the original catalyst of all this. This is the third time I'm rewriting this answer. Also, when I said "gummiboot" earlier I meant systemd-boot, sorry. I need to boot UEFI given my system.

The broken dependencies thing is when under normal conditions I do a general pacman update and the kernel gets upgraded. Upon reboot I get an error, "failed to mount /boot" "unknown filesystem vfat". (http://comments.gmane.org/gmane.linux.a … eral/51055). A chroot from a usb iso and pacman -S linux fixes it.

Kernel processor bitness and EFI processor bitness should match
Kernel should be booted in EFI mode (via EFISTUB or any EFI boot loader, not via BIOS/CSM or Apple's "bootcamp" which is also BIOS/CSM)
EFI Runtime Services in the kernel SHOULD NOT be disabled via kernel cmdline, i.e. noefi kernel parameter SHOULD NOT be used
efivarfs filesystem should be mounted at /sys/firmware/efi/efivars, otherwise follow #Mount efivarfs section below.
efivar should list (option -l) the EFI Variables without any error.

I just reinstalled systemd-boot following the wiki instructions:

$ zgrep CONFIG_EFI /proc/config.gz

CONFIG_EFI_PARTITION=y
CONFIG_EFI=y
CONFIG_EFI_STUB=y
CONFIG_EFI_MIXED=y
# CONFIG_EFI_VARS is not set
CONFIG_EFI_ESRT=y
CONFIG_EFI_RUNTIME_MAP=y
CONFIG_EFI_RUNTIME_WRAPPERS=y
CONFIG_EFIVAR_FS=y

$ ls /sys/firmware/efi
config_table
efivars
esrt
fw_platform_size
fw_vendor
runtime
runtime-map
systab

$ ls /sys/firmware/efi/efivars
AcpiGlobalVariable-c020489e-6db2-4ef2-9aa5-ca06fc11d36a
AdministerSecureBoot-59d1c24f-50f1-401a-b101-f33e0daed443
AuthVarKeyDatabase-aaf32c78-947b-439a-a180-2e144ec37792
BackupPlatformLang-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot0000-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot0001-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot0002-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot0003-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot0004-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot2001-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot2002-8be4df61-93ca-11d2-aa0d-00e098032b8c
Boot2003-8be4df61-93ca-11d2-aa0d-00e098032b8c
BootCurrent-8be4df61-93ca-11d2-aa0d-00e098032b8c
BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c
certdb-59d1c24f-50f1-401a-b101-f33e0daed443
ConIn-8be4df61-93ca-11d2-aa0d-00e098032b8c
ConInCandidateDev-59d1c24f-50f1-401a-b101-f33e0daed443
ConInDev-8be4df61-93ca-11d2-aa0d-00e098032b8c
ConOut-8be4df61-93ca-11d2-aa0d-00e098032b8c
ConOutCandidateDev-59d1c24f-50f1-401a-b101-f33e0daed443
ConOutDev-8be4df61-93ca-11d2-aa0d-00e098032b8c
Custom-a04a27f4-df00-4d42-b552-39511302113d
CustomPlatformLang-59d1c24f-50f1-401a-b101-f33e0daed443
CustomSecurity-59d1c24f-50f1-401a-b101-f33e0daed443
db-d719b2cb-3d3a-4596-a3bc-dad00e67656f
dbDefault-8be4df61-93ca-11d2-aa0d-00e098032b8c
dbx-d719b2cb-3d3a-4596-a3bc-dad00e67656f
dbxDefault-8be4df61-93ca-11d2-aa0d-00e098032b8c
DynamicBar-39473de5-df3b-49a1-9fa6-41b35b36fa39
ErrOutDev-8be4df61-93ca-11d2-aa0d-00e098032b8c
FixedBar-39473de5-df3b-49a1-9fa6-41b35b36fa39
IrsiInfo-5bce4c83-6a97-444b-63b4-672c014742ff
IsctData-69a20012-b167-4e35-a999-98ee0835f02e
KEK-8be4df61-93ca-11d2-aa0d-00e098032b8c
KEKDefault-8be4df61-93ca-11d2-aa0d-00e098032b8c
L05ConfigVar-31ade9e1-08b9-11e3-8b56-047d7b99e097
L05OkrData-9669e125-fedf-43f7-891a-5af85efcdefc
Lang-8be4df61-93ca-11d2-aa0d-00e098032b8c
LangCodes-8be4df61-93ca-11d2-aa0d-00e098032b8c
MemoryConfig-10ba6bbe-a97e-41c3-9a07-607ad9bd60e5
MTC-eb704011-1402-11d3-8e77-00a0c969723b
OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c
OsIndicationsSupported-8be4df61-93ca-11d2-aa0d-00e098032b8c
PBRDevicePath-a9b5f8d2-cb6d-42c2-bc01-b5ffaae4335e
PcdPortNumberMapTable-59d1c24f-50f1-401a-b101-f33e0daed443
PchInit-e6c2f70a-b604-4877-85ba-deec89e117eb
PchS3Peim-e6c2f70a-b604-4877-85ba-deec89e117eb
PhysicalBootOrder-59d1c24f-50f1-401a-b101-f33e0daed443
PK-8be4df61-93ca-11d2-aa0d-00e098032b8c
PKDefault-8be4df61-93ca-11d2-aa0d-00e098032b8c
PlatformCpuInfo-10ba6bbe-a97e-41c3-9a07-607ad9bd60e5
PlatformInfo-10ba6bbe-a97e-41c3-9a07-607ad9bd60e5
PlatformLang-8be4df61-93ca-11d2-aa0d-00e098032b8c
PlatformLangCodes-8be4df61-93ca-11d2-aa0d-00e098032b8c
PreviousBoot-36d08fa7-cf0b-42f5-8f14-68df73ed3740
RestoreFactoryDefault-59d1c24f-50f1-401a-b101-f33e0daed443
SCUShowHiddenPage-8be4df61-93ca-11d2-aa0d-00e098032b8c
SecureBoot-8be4df61-93ca-11d2-aa0d-00e098032b8c
SecureBootEnforce-59d1c24f-50f1-401a-b101-f33e0daed443
SecureFlashInfo-382af2bb-ffff-abcd-aaee-cce099338877
Setup-a04a27f4-df00-4d42-b552-39511302113d
SetupMode-8be4df61-93ca-11d2-aa0d-00e098032b8c
SignatureSupport-8be4df61-93ca-11d2-aa0d-00e098032b8c
SystemStatusData-30c7c508-7bd9-43c9-809a-c7f065483f3e
TargetHddDevPath-59d1c24f-50f1-401a-b101-f33e0daed443
Timeout-8be4df61-93ca-11d2-aa0d-00e098032b8c
VendorKeys-8be4df61-93ca-11d2-aa0d-00e098032b8c

$ efivar -l
8be4df61-93ca-11d2-aa0d-00e098032b8c-dbxDefault
8be4df61-93ca-11d2-aa0d-00e098032b8c-dbDefault
8be4df61-93ca-11d2-aa0d-00e098032b8c-KEKDefault
8be4df61-93ca-11d2-aa0d-00e098032b8c-PKDefault
5bce4c83-6a97-444b-63b4-672c014742ff-IrsiInfo
8be4df61-93ca-11d2-aa0d-00e098032b8c-BootCurrent
59d1c24f-50f1-401a-b101-f33e0daed443-PcdPortNumberMapTable
39473de5-df3b-49a1-9fa6-41b35b36fa39-DynamicBar
39473de5-df3b-49a1-9fa6-41b35b36fa39-FixedBar
8be4df61-93ca-11d2-aa0d-00e098032b8c-ErrOutDev
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConInDev
59d1c24f-50f1-401a-b101-f33e0daed443-ConOutCandidateDev
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConOutDev
59d1c24f-50f1-401a-b101-f33e0daed443-ConInCandidateDev
10ba6bbe-a97e-41c3-9a07-607ad9bd60e5-PlatformCpuInfo
e6c2f70a-b604-4877-85ba-deec89e117eb-PchS3Peim
8be4df61-93ca-11d2-aa0d-00e098032b8c-PlatformLangCodes
8be4df61-93ca-11d2-aa0d-00e098032b8c-LangCodes
8be4df61-93ca-11d2-aa0d-00e098032b8c-VendorKeys
8be4df61-93ca-11d2-aa0d-00e098032b8c-SignatureSupport
8be4df61-93ca-11d2-aa0d-00e098032b8c-OsIndicationsSupported
c020489e-6db2-4ef2-9aa5-ca06fc11d36a-AcpiGlobalVariable
eb704011-1402-11d3-8e77-00a0c969723b-MTC
59d1c24f-50f1-401a-b101-f33e0daed443-PhysicalBootOrder
8be4df61-93ca-11d2-aa0d-00e098032b8c-BootOrder
36d08fa7-cf0b-42f5-8f14-68df73ed3740-PreviousBoot
a04a27f4-df00-4d42-b552-39511302113d-Setup
8be4df61-93ca-11d2-aa0d-00e098032b8c-OsIndications
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0004
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0003
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0002
59d1c24f-50f1-401a-b101-f33e0daed443-TargetHddDevPath
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0001
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot0000
30c7c508-7bd9-43c9-809a-c7f065483f3e-SystemStatusData
9669e125-fedf-43f7-891a-5af85efcdefc-L05OkrData
8be4df61-93ca-11d2-aa0d-00e098032b8c-SecureBoot
59d1c24f-50f1-401a-b101-f33e0daed443-SecureBootEnforce
8be4df61-93ca-11d2-aa0d-00e098032b8c-SCUShowHiddenPage
8be4df61-93ca-11d2-aa0d-00e098032b8c-BackupPlatformLang
d719b2cb-3d3a-4596-a3bc-dad00e67656f-dbx
8be4df61-93ca-11d2-aa0d-00e098032b8c-Timeout
a9b5f8d2-cb6d-42c2-bc01-b5ffaae4335e-PBRDevicePath
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot2003
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot2002
8be4df61-93ca-11d2-aa0d-00e098032b8c-Boot2001
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConOut
8be4df61-93ca-11d2-aa0d-00e098032b8c-ConIn
59d1c24f-50f1-401a-b101-f33e0daed443-AdministerSecureBoot
10ba6bbe-a97e-41c3-9a07-607ad9bd60e5-MemoryConfig
a04a27f4-df00-4d42-b552-39511302113d-Custom
59d1c24f-50f1-401a-b101-f33e0daed443-CustomPlatformLang
69a20012-b167-4e35-a999-98ee0835f02e-IsctData
31ade9e1-08b9-11e3-8b56-047d7b99e097-L05ConfigVar
10ba6bbe-a97e-41c3-9a07-607ad9bd60e5-PlatformInfo
e6c2f70a-b604-4877-85ba-deec89e117eb-PchInit
382af2bb-ffff-abcd-aaee-cce099338877-SecureFlashInfo
8be4df61-93ca-11d2-aa0d-00e098032b8c-PlatformLang
8be4df61-93ca-11d2-aa0d-00e098032b8c-Lang
59d1c24f-50f1-401a-b101-f33e0daed443-CustomSecurity
59d1c24f-50f1-401a-b101-f33e0daed443-RestoreFactoryDefault
59d1c24f-50f1-401a-b101-f33e0daed443-certdb
8be4df61-93ca-11d2-aa0d-00e098032b8c-SetupMode
aaf32c78-947b-439a-a180-2e144ec37792-AuthVarKeyDatabase
d719b2cb-3d3a-4596-a3bc-dad00e67656f-db
8be4df61-93ca-11d2-aa0d-00e098032b8c-KEK
8be4df61-93ca-11d2-aa0d-00e098032b8c-PK

$ ls /boot
EFI
grub
initramfs-linux-fallback.img
initramfs-linux.img
loader
refind_linux.conf
vmlinuz-linux

# bootctl --path=/boot install                        
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/systemd/systemd-bootx64.efi".
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/Boot/BOOTX64.EFI".
Created EFI boot entry "Linux Boot Manager".

# bootctl update
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/systemd/systemd-bootx64.efi".
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/Boot/BOOTX64.EFI".

$ nano /boot/loader/entries/arch.conf
title	Arch Linux
linux	/vmlinuz-linux
initrd	/initramfs-linux.img
option	root=/dev/sda2 rw

result was

[         0.035731] Ignoring BGRT: invalid status 0 (expected 1)
:: running early hook [udev]
:: Triggering uevents...
ERROR: device ' ' not found. Skipping fsck.
ERROR: Unable to find root device ' ' .
You are being dropped to a recovery shell
       Type 'exit' to try and continue booting
sh: can't access tty; job control turned off
[rootfs /]#

Last edited by amagnasco (2016-01-11 01:23:26)

Offline

#11 2016-01-11 08:02:00

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

amagnasco wrote:

The broken dependencies thing is when under normal conditions I do a general pacman update and the kernel gets upgraded. Upon reboot I get an error, "failed to mount /boot" "unknown filesystem vfat". (http://comments.gmane.org/gmane.linux.a … eral/51055). A chroot from a usb iso and pacman -S linux fixes it.

Sounds like /boot is not mounted properly.

Have you ever been able to boot without error after a kernel upgrade?

What is the output of:

# efibootmgr -v

Offline

#12 2016-01-11 12:17:48

TheSaint
Member
From: my computer
Registered: 2007-08-19
Posts: 1,523

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

amagnasco wrote:

Hi TheSaint. Thanks for helping.

as usual, when I select grub it doesn't even show up, it just drops right into gummiboot, and from there the same error and recovery

If you configure one boot loader and use another, then is inconsistent.
If you solved, I'm glad. The only suggestion I can propose is to use labels for your partitions and use them in your settings.
They'll be easy to memorize and identify
Then to make clear some of you doubts, see what the wiki e related links have to say.
This is also a good source
.
As Head_on_a_Stick points out, there are probabilities that your boot loader loads the wrong kernel referred to its module partition.

Last edited by TheSaint (2016-01-11 12:21:47)


do it good first, it will be faster than do it twice the saint wink

Offline

#13 2016-01-11 16:03:03

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Head_on_a_Stick,

I've never been able to boot properly after a kernel upgrade, no.
How do I fix that?

➜  ~  sudo efibootmgr -v
BootCurrent: 0002
Timeout: 0 seconds
BootOrder: 0000,0002,0004,0001,2001,2002,2003
Boot0000* Linux Boot Manager	HD(1,GPT,77d700f1-090c-4aaa-8794-62df374ac884,0x800,0xf9801)/File(\EFI\systemd\systemd-bootx64.efi)
Boot0001* EFI Hard Drive (WDC WD5000MPCK-24AWHT0)	PciRoot(0x0)/Pci(0x13,0x0)/Sata(0,0,0)/HD(1,GPT,77d700f1-090c-4aaa-8794-62df374ac884,0x800,0xf9801)RC
Boot0002* rEFInd Boot Manager	HD(1,GPT,77d700f1-090c-4aaa-8794-62df374ac884,0x800,0xf9801)/File(\EFI\refind\refind_x64.efi)
Boot0003* EFI USB Device (SanDisk Cruzer Fit)	PciRoot(0x0)/Pci(0x14,0x0)/USB(1,0)/USB(0,0)/HD(1,MBR,0x4294967186,0xac,0xf800)RC
Boot0004* grub	HD(1,GPT,77d700f1-090c-4aaa-8794-62df374ac884,0x800,0xf9801)/File(\EFI\grub\grubia32.efi)
Boot2001* EFI USB Device	RC
Boot2002* EFI DVD/CDROM	RC
Boot2003* EFI Network	RC

TheSaint,

I didn't get to solve it! My boot settings are all messed up and I have to edit my configuration from inside rEFInd to be able to get in. Systemd-boot isn't confd properly either. I do have partition labels though.

I read the links -- here's a script from the wiki if it helps. The other one seems to refer to trying to artificially create a UEFI system on a BIOS system?

➜  ~  sudo findmnt /boot/   
TARGET SOURCE    FSTYPE OPTIONS
/boot  /dev/sda1 vfat   rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro

Last edited by amagnasco (2016-01-11 16:26:06)

Offline

#14 2016-01-11 16:59:29

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Ooops, I missed this:

amagnasco wrote:
$ nano /boot/loader/entries/arch.conf
title	Arch Linux
linux	/vmlinuz-linux
initrd	/initramfs-linux.img
option	root=/dev/sda2 rw

Typo in the last line, should be:

options	root=/dev/sda2 rw

options

Offline

#15 2016-01-11 17:02:37

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

amagnasco wrote:

I've never been able to boot properly after a kernel upgrade

If you load up the Arch live ISO image and mount the root partition, is there anything in the /boot directory?

# mount /dev/sda2 /mnt
ls /mnt/boot

Offline

#16 2016-01-11 17:19:58

TheSaint
Member
From: my computer
Registered: 2007-08-19
Posts: 1,523

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

@ Head_on_a_Stick
It might need to load the microcode too big_smile

options root=LABEL=Arch_os

@ amagnasco
Forgive my oversight about labels. Anyhow they aren't used in grub.cfg and also in fstab.
Let me advice that you should use only one bootloader and correct it when it will be wrong.
Probably you may use ubuntu grub to find  and start the Arch partition. Remember that must be mounted rw, which ubuntu doesn't yet.


do it good first, it will be faster than do it twice the saint wink

Offline

#17 2016-01-11 17:26:16

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

That's really weird. I didn't type it in manually, it was autoconfigured... so should I fix it to

options	root=/dev/sda2 rw

--or--

options root=LABEL=Arch_os

?

re: other issue, I've never checked. I always do

# mount /dev/sda2 /mnt && mount /dev/sda1 /mnt/boot $$ mount dev/sda3 /mnt/home

--or--

# mount /dev/sda2 /mnt
# mount /dev/sda1 /mnt/boot
# mount /dev/sda3 /mnt/home

before doing anything else. Checking right now...

While I do have partitions Ubuntu_os & Ubuntu_fs, they're blank... I'm trying to conf systemd-boot now and keeping rEFInd in the background as it's the only one that kind of works.

Last edited by amagnasco (2016-01-11 17:32:04)

Offline

#18 2016-01-11 17:28:38

tom.ty89
Member
Registered: 2012-11-15
Posts: 897

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

TheSaint wrote:

Remember that must be mounted rw

That really depends on whether you use the fsck hook in the initramfs (by default yes though): https://wiki.archlinux.org/index.php/fsck

Offline

#19 2016-01-11 17:34:19

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Hi Tom,

Forgive my ignorance.. why wouldn't I want the fsck hook? I tend to bring out the worst in my computers tongue

Offline

#20 2016-01-11 18:26:58

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

update:

upon booting from the usb iso:

# mount /dev/sda2 /mnt

# ls /mnt/boot
/grub
initramfs-linux-fallback.img
initramfs-linux.img
vmlinuz-linux

# ls /mnt/boot/grub
grub.cfg
crub.cfg.example

Offline

#21 2016-01-11 18:51:23

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

Yes, you seem to have a second /boot directory that is hidden when the EFI system partition is mounted.

Perhaps your ESP isn't being mounted correctly and the system upgrades are placing the new kernel images in the non-ESP /boot directory.

Does systemd-boot work if you correct the options line?

Last edited by Head_on_a_Stick (2016-01-11 18:51:39)

Offline

#22 2016-01-11 19:15:51

TheSaint
Member
From: my computer
Registered: 2007-08-19
Posts: 1,523

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

tom.ty89 wrote:
TheSaint wrote:

Remember that must be mounted rw

That really depends on whether you use the fsck hook in the initramfs (by default yes though): https://wiki.archlinux.org/index.php/fsck

Sorry being unclear, that's referred to ubuntu's grub, which still uses to mount read-only. As fare as I remember. Perhaps now with systemd, they've changed it.


do it good first, it will be faster than do it twice the saint wink

Offline

#23 2016-01-11 19:28:03

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

So this is my game plan.
(1) check what files I have in either one
(2) backup /dev/sda2/boot and delete it.

So what conf files can I edit to make sure
(3) /dev/sda2/boot isn't recreated by the system
and (4) /dev/sda1/boot is mounted properly?

Also re:systemd-boot, (5) what's the difference between referring to the root partition as /dev/sda2 or as LABEL=Arch_os ?

Offline

#24 2016-01-11 19:52:03

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,680
Website

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

/boot should be mounted to $ESP -- this is what your fstab says anyway.

You can check the mountpoint in the running system by using:

grep boot /proc/self/mounts

Also, i've just noticed that you are using the 32-bit GRUB .efi loader in your `efibootmgr -v` output -- that may be why GRUB wasn't working for you.

As I said, once the typo is corrected the systemd-boot configuration file should also work.

Last edited by Head_on_a_Stick (2016-01-11 19:52:14)

Offline

#25 2016-01-11 21:11:31

amagnasco
Member
Registered: 2015-09-23
Posts: 16

Re: [Solved] cannot boot, ERROR: device "" not found, skipping fsck; re...

edited the typo-- systemd-boot worked!!!! thank you! still can't believe that showed up in an autoconfigurated file, I didn't touch the thing.

now to fix the underlying issue...
I backed up /dev/sda2/boot and deleted the files in it. I'm looking through it now to see what differences it has with /dev/sda1/ .
what conf files do I have to change so it doesn't try to boot /dev/sda2/boot ?

➜  ~  grep boot /proc/self/mounts
/dev/sda1 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0

Last edited by amagnasco (2016-01-11 21:44:10)

Offline

Board footer

Powered by FluxBB