You are not logged in.

#1 2015-11-18 17:35:09

kodiak
Member
Registered: 2012-04-26
Posts: 64

[SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

Arch is installed on a Dell Latitude E6440 with a Seagate ST500LM000-1EJ162 harddrive. Latest pacman update always drops me into rescue shell on boot.  The Message:

wating 20 seconds for device /dev/disk/by-uuid/10d3d970-999f-4e97-a881-0b4c361987a0
ERROR: device /dev/disk/by-uuid/10d3d970-999f-4e97-a881-0b4c361987a0 not found. Skipping fsck.
ERROR: Unable to find root device '/dev/disk/by-uuid/10d3d970-999f-4e97-a881-0b4c361987a0.
You are being dropped to a recovery shell
Type 'exit' to try and continue booting.
can't access tty; job control turned off

If I enter

exit

immediately, boot continues successfully. I had always problems with this type of hard disk using LVM on root. I have the same model deployed in another PC (sapphire edge vs4) running Arch as well. System information from the Latitude:

$ fdisk --list /dev/sda
Disk /dev/sda: 465,8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xbef01e73

Device     Boot   Start       End   Sectors   Size Id Type
/dev/sda1  *       2048   4196351   4194304     2G 83 Linux
/dev/sda2       4196352 976773167 972576816 463,8G 8e Linux LVM
$ lvdisplay

  --- Logical volume ---
  LV Path                /dev/VolGroup00/lvolroot
  LV Name                lvolroot
  VG Name                VolGroup00
  LV UUID                cMstfD-j1Aa-mLf1-0DfD-kGl2-RczH-GVDJ41
  LV Write Access        read/write
  LV Creation host, time archiso, 2015-03-02 10:37:11 +0100
  LV snapshot status     source of
                         lvolroot_snap [active]
  LV Status              available
  # open                 1
  LV Size                50,00 GiB
  Current LE             12800
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     6144
  Block device           254:1
   
  --- Logical volume ---
  LV Path                /dev/VolGroup00/lvolswap
  LV Name                lvolswap
  VG Name                VolGroup00
  LV UUID                UkeoXQ-R7Jq-Ebt1-Gq5F-U5Bu-RV2h-oop0ej
  LV Write Access        read/write
  LV Creation host, time archiso, 2015-03-02 10:38:45 +0100
  LV Status              available
  # open                 2
  LV Size                1,00 GiB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:4
   
  --- Logical volume ---
  LV Path                /dev/VolGroup00/lvolhome
  LV Name                lvolhome
  VG Name                VolGroup00
  LV UUID                m0mkqI-y8bJ-xIP6-tybL-nkpx-fcDm-eFuEmy
  LV Write Access        read/write
  LV Creation host, time archiso, 2015-03-02 10:39:32 +0100
  LV Status              available
  # open                 1
  LV Size                400,76 GiB
  Current LE             102594
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     6144
  Block device           254:5
   
  --- Logical volume ---
  LV Path                /dev/VolGroup00/lvolroot_snap
  LV Name                lvolroot_snap
  VG Name                VolGroup00
  LV UUID                gKxQjd-inqv-9gbg-gekW-PauQ-sM8S-RVEkWR
  LV Write Access        read/write
  LV Creation host, time SIG-NB020, 2015-11-17 10:42:30 +0100
  LV snapshot status     active destination for lvolroot
  LV Status              available
  # open                 0
  LV Size                50,00 GiB
  Current LE             12800
  COW-table size         12,00 GiB
  COW-table LE           3072
  Allocated to snapshot  52,16%
  Snapshot chunk size    4,00 KiB
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:3
$ cat /etc/default/grub
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX="scsi_mod.scan=sync rootdelay=20"
GRUB_PRELOAD_MODULES="part_gpt part_msdos"
GRUB_TERMINAL_INPUT=console
GRUB_GFXMODE=auto
GRUB_GFXPAYLOAD_LINUX=keep
GRUB_DISABLE_RECOVERY=true

scsi_mod.scan=sync rootdelay=20: found in other blogs from people having similar problems. This has been working in the past, but with latest update it does not any more.

$ cat /etc/mkinitcpio.conf
...
HOOKS="base udev block lvm2 autodetect modconf filesystems keyboard fsck"
...

Packages installed:

  • linux 4.2.5-1

  • lvm2 2.02.133-1

  • systemd 227-1

What is the reason for this misbehaviour?

Last edited by kodiak (2015-11-20 08:18:00)

Offline

#2 2015-11-18 18:16:36

c0mm0ner
Member
Registered: 2015-11-09
Posts: 93

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

please poste your /boot/grub/grub.cfg

Offline

#3 2015-11-19 08:32:51

kodiak
Member
Registered: 2012-04-26
Posts: 64

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

$ 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_msdos 
insmod lvm 
insmod ext2
set root='lvmid/H7ao4Z-uWuZ-NEYF-uP6y-2Uc2-8wC7-WQTh3s/cMstfD-j1Aa-mLf1-0DfD-kGl2-RczH-GVDJ41'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint='lvmid/H7ao4Z-uWuZ-NEYF-uP6y-2Uc2-8wC7-WQTh3s/cMstfD-j1Aa-mLf1-0DfD-kGl2-RczH-GVDJ41'  10d3d970-999f-4e97-a881-0b4c361987a0
else
  search --no-floppy --fs-uuid --set=root 10d3d970-999f-4e97-a881-0b4c361987a0
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-10d3d970-999f-4e97-a881-0b4c361987a0' {
	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  3d43041d-a860-4b9d-b4c4-f4d8a4233c89
	else
	  search --no-floppy --fs-uuid --set=root 3d43041d-a860-4b9d-b4c4-f4d8a4233c89
	fi
	echo	'Loading Linux linux ...'
	linux	/vmlinuz-linux root=UUID=10d3d970-999f-4e97-a881-0b4c361987a0 rw scsi_mod.scan=sync rootdelay=20 
	echo	'Loading initial ramdisk ...'
	initrd	 /initramfs-linux.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-10d3d970-999f-4e97-a881-0b4c361987a0' {
	menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-10d3d970-999f-4e97-a881-0b4c361987a0' {
		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  3d43041d-a860-4b9d-b4c4-f4d8a4233c89
		else
		  search --no-floppy --fs-uuid --set=root 3d43041d-a860-4b9d-b4c4-f4d8a4233c89
		fi
		echo	'Loading Linux linux ...'
		linux	/vmlinuz-linux root=UUID=10d3d970-999f-4e97-a881-0b4c361987a0 rw scsi_mod.scan=sync rootdelay=20 
		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-10d3d970-999f-4e97-a881-0b4c361987a0' {
		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  3d43041d-a860-4b9d-b4c4-f4d8a4233c89
		else
		  search --no-floppy --fs-uuid --set=root 3d43041d-a860-4b9d-b4c4-f4d8a4233c89
		fi
		echo	'Loading Linux linux ...'
		linux	/vmlinuz-linux root=UUID=10d3d970-999f-4e97-a881-0b4c361987a0 rw scsi_mod.scan=sync rootdelay=20 
		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+ ###
$ cat /etc/fstab

# 
# /etc/fstab: static file system information
#
# <file system>	<dir>	<type>	<options>	<dump>	<pass>
# UUID=10d3d970-999f-4e97-a881-0b4c361987a0
/dev/mapper/VolGroup00-lvolroot	/         	ext4      	rw,relatime,data=ordered	0 1

# UUID=5121d9fe-a9b3-4755-9f4f-a66326ebbabc
/dev/mapper/VolGroup00-lvolhome	/home     	ext4      	rw,relatime,data=ordered	0 2

# UUID=3d43041d-a860-4b9d-b4c4-f4d8a4233c89
/dev/sda1           	/boot     	ext2			rw,relatime	0 2

# UUID=0603e3e0-9a88-4293-9313-390150289740
/dev/mapper/VolGroup00-lvolswap	none      	swap      	defaults  	0 0

# added by kodiak to hide from thunar
/dev/mapper/VolGroup00-lvolroot_snap none	ext4		noauto		0 0

Offline

#4 2015-11-19 11:04:55

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

I suspect the output of 'lsblk -o +uuid' will also be useful.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#5 2015-11-19 12:38:01

kodiak
Member
Registered: 2012-04-26
Posts: 64

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

R00KIE wrote:

lsblk -o +uuid'

nice command!

$ lsblk -o +uuid

NAME                             MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT UUID
sda                                8:0    0 465,8G  0 disk            
├─sda1                             8:1    0     2G  0 part /boot      3d43041d-a860-4b9d-b4c4-f4d8a4233c89
└─sda2                             8:2    0 463,8G  0 part            cjK56W-6Mvm-Afjj-ag6L-i6Vy-wafd-DiCpnp
  ├─VolGroup00-lvolroot-real     254:0    0    50G  0 lvm             
  │ ├─VolGroup00-lvolroot        254:1    0    50G  0 lvm  /          10d3d970-999f-4e97-a881-0b4c361987a0
  │ └─VolGroup00-lvolroot_snap   254:3    0    50G  0 lvm             10d3d970-999f-4e97-a881-0b4c361987a0
  ├─VolGroup00-lvolroot_snap-cow 254:2    0    12G  0 lvm             
  │ └─VolGroup00-lvolroot_snap   254:3    0    50G  0 lvm             10d3d970-999f-4e97-a881-0b4c361987a0
  ├─VolGroup00-lvolswap          254:4    0     1G  0 lvm  [SWAP]     0603e3e0-9a88-4293-9313-390150289740
  └─VolGroup00-lvolhome          254:5    0 400,8G  0 lvm  /home      5121d9fe-a9b3-4755-9f4f-a66326ebbabc
sr0                               11:0    1  1024M  0 rom             

Offline

#6 2015-11-19 16:23:07

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

Why do you have 3 LVs with the same uuid? I suppose that might cause trouble. Jugging by the name, it seems some might be used for lvm snapshots and I haven't used that before so I don't know if that is normal.

Another thing, your grub.cfg seems to be uncertain where to search for /boot, but I guess the problem doesn't come from there.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#7 2015-11-19 19:27:20

kodiak
Member
Registered: 2012-04-26
Posts: 64

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

ROOKIE wrote:

Why do you have 3 LVs with the same uuid?

I just checked that on another machine (some SSD as hdd) with the same layout and never had any issues with this one. This one shows the same UUID for root and twice for the snapshot, exactly like it is shown from the Latitude. I suppose this is normal. Tomorrow I remove the snapshot to see if it is related to that.

ROOKIE wrote:

grub.cfg seems to be uncertain where to search for /boot

Why do you think it is? AFAIK when beeing dropped into the rescue shell the kernel has already been found.

Is there any pro / con using different kind of labels in fstab regarding LVM volumes, e.g.

/dev/mapper/VolGroup00-lvolroot

instead of UUIDs?

Offline

#8 2015-11-19 20:05:56

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

Because of this:

In the header it has

if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint='lvmid/H7ao4Z-uWuZ-NEYF-uP6y-2Uc2-8wC7-WQTh3s/cMstfD-j1Aa-mLf1-0DfD-kGl2-RczH-GVDJ41'  10d3d970-999f-4e97-a881-0b4c361987a0
else
  search --no-floppy --fs-uuid --set=root 10d3d970-999f-4e97-a881-0b4c361987a0
fi

and then for the menu entries

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  3d43041d-a860-4b9d-b4c4-f4d8a4233c89
else
search --no-floppy --fs-uuid --set=root 3d43041d-a860-4b9d-b4c4-f4d8a4233c89
fi

But this is not the problem (99.99% sure).

Regarding your second question, there should be no problem, however if uuids are unique that guarantees that you always reference the correct volume/partition even if the device name changes for some reason.

If this was working exactly as it is before then the problem is somewhere else, I'd try the fallback image and the lts kernel.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#9 2015-11-20 08:17:03

kodiak
Member
Registered: 2012-04-26
Posts: 64

Re: [SOLVED] ERROR: device '/dev/disk/by-uuid' not found with LVM on root

Alright, I removed the LVM Snapshot and rebootet - et voilà it did boot correctly. Then I added a new shapshot and rebootet, and again it worked out as usual. lsblk -o +uuid' showed same output as posted before. So its probably something different. I update the topic to solved. Thx for your help!

Offline

Board footer

Powered by FluxBB