PDA

View Full Version : [ubuntu] LVM root not booting



pepsifx357
December 30th, 2014, 01:57 PM
I'm in quite a predicament after I restarted my computer this morning. I got one of those nice "dropped into initramfs" consoles. It couldn't find the Root device.

I installed this system about a year ago and has been flawless until now. It started life as a linux mint 16 system and over time, with ppas and custom repository layouts, it's now a "Ubuntu 17" system. I had updated to a new version of Linux Mint and it kinda thought it was an Ubuntu machine. Don't ask. The update worked and had been working for a couple of months now. Even with restarts.

It's been up for an entire month and had a few updates since then. So I expected to run into problems when I restarted. I also tend to mess with things a lot, so trying to figure out what I broke is going to be difficult.

The disk layout is two 500GB hard drives with LVM as such:
/dev/sda1 Gnusounds-LVM lvm2 (boot device)
/dev/sdb1 Gnusounds-LVM lvm2

The logical volumes are setup like this:
/dev/Gnusounds-LVM/Boot /boot
/dev/Gnusounds-LVM/Root /root
/dev/Gnusounds-LVM/Home /home
/dev/Gnusounds-LVM/Swap

I tried booting into a live Ubuntu cd and setting up a chroot environment. I ran update-grub and update-initramfs which seemed to work, but to no avail. It still drops me into initramfs when trying to boot.

I know that at one point I wanted to play with xen, but I uninstalled it and removed /etc/default/grub.d/xen.cfg

A lot of my life is on this system and I really would like to get it running again. I'm a retard, I should have backed it all up before I restarted.

Another problem I ran into was that it appeared that I had encrypted the Home volume. When I was in the chroot environment the /home folder had a "Access-Your-Private-Data.desktop" file in it. I don't really remember doing this and it has never asked me for a passphrase. I tried all the passwords I could think of, which aren't very many and it wouldn't let me in...great.

I'm hoping that if I can get it to boot again, I can get to my stuff, back it up, and just reinstall Ubuntu with a better lvm setup.

Any help would be GREATLY appreciated.

Here is some info:

ubuntu@ubuntu:~$ sudo pvs
PV VG Fmt Attr PSize PFree
/dev/sda1 Gnusounds-LVM lvm2 a-- 465.76g 0
/dev/sdb1 Gnusounds-LVM lvm2 a-- 465.75g 229.41g


ubuntu@ubuntu:~$ sudo lvscan
ACTIVE '/dev/Gnusounds-LVM/Boot' [100.00 MiB] inherit
ACTIVE '/dev/Gnusounds-LVM/Root' [40.00 GiB] inherit
ACTIVE '/dev/Gnusounds-LVM/Home' [500.00 GiB] inherit
ACTIVE '/dev/Gnusounds-LVM/swap' [2.00 GiB] inherit



I just changed the fstab file to use UUIDs a moment ago....didn't work.


# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=9823f2c7-fc61-4038-840a-33e9ee872e83 / ext4 errors=remount-ro 0 1
UUID=2f5b1b3e-33dd-49ed-b725-431cd08a5758 /boot ext2 defaults 0 2
UUID=c7370e54-0adc-4737-97d2-a0480a755860 /home ext4 defaults 0 2
/dev/mapper/Gnusounds--LVM-swap none swap sw 0 0
/dev/mapper/cryptswap1 none swap sw 0 0


Here's my old one:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/mapper/Gnusounds--LVM-Root / ext4 errors=remount-ro 0 1
/dev/mapper/Gnusounds--LVM-Boot /boot ext2 defaults 0 2
/dev/mapper/Gnusounds--LVM-Home /home ext4 defaults 0 2
/dev/mapper/Gnusounds--LVM-swap none swap sw 0 0
/dev/mapper/cryptswap1 none swap sw 0 0


and here's my grub.cfg file:


#
# 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_msdos
insmod part_msdos
insmod lvm
insmod ext2
set root='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/kQ2aU1-L2GF-wUX4-BLmq-jiVj-eS4m-u6Rng5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/kQ2aU1-L2GF-wUX4-BLmq-jiVj-eS4m-u6Rng5' 9823f2c7-fc61-4038-840a-33e9ee872e83
else
search --no-floppy --fs-uuid --set=root 9823f2c7-fc61-4038-840a-33e9ee872e83
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_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=-1
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=hidden
set timeout=0
# Fallback hidden-timeout code in case the timeout_style feature is
# unavailable.
elif sleep --interruptible 0 ; then
set timeout=0
fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod part_msdos
insmod lvm
insmod ext2
set root='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/kQ2aU1-L2GF-wUX4-BLmq-jiVj-eS4m-u6Rng5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/kQ2aU1-L2GF-wUX4-BLmq-jiVj-eS4m-u6Rng5' 9823f2c7-fc61-4038-840a-33e9ee872e83
else
search --no-floppy --fs-uuid --set=root 9823f2c7-fc61-4038-840a-33e9ee872e83
fi
insmod jpeg
if background_image /usr/share/wallpapers/Evening/contents/images/1920x1080.jpg; then
set color_normal=black/black
set color_highlight=white/black
else
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/06_mint_theme ###
set menu_color_normal=white/black
set menu_color_highlight=white/light-gray
### END /etc/grub.d/06_mint_theme ###

### BEGIN /etc/grub.d/10_linux_proxy ###
### END /etc/grub.d/10_linux_proxy ###

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

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

### BEGIN /etc/grub.d/21_linux_proxy ###
menuentry "Linux Mint 17" --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod part_msdos
insmod lvm
insmod ext2
set root='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/hi4Ubb-wQik-Vq8b-1PBO-4g58-MwFk-E8luCJ'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/hi4Ubb-wQik-Vq8b-1PBO-4g58-MwFk-E8luCJ' 2f5b1b3e-33dd-49ed-b725-431cd08a5758
else
search --no-floppy --fs-uuid --set=root 2f5b1b3e-33dd-49ed-b725-431cd08a5758
fi
linux /vmlinuz-3.13.0-24-generic root=/dev/mapper/Gnusounds--LVM-Root ro quiet splash nomodeset nouveau.blacklist=1 $vt_handoff
initrd /initrd.img-3.13.0-24-generic
}
### END /etc/grub.d/21_linux_proxy ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sdd1)' --class windows --class os $menuentry_id_option 'osprober-chain-849CAFE69CAFD14A' {
insmod part_msdos
insmod ntfs
set root='hd3,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd3,msdos1 --hint-efi=hd3,msdos1 --hint-baremetal=ahci3,msdos1 849CAFE69CAFD14A
else
search --no-floppy --fs-uuid --set=root 849CAFE69CAFD14A
fi
parttool ${root} hidden-
chainloader +1
}
set timeout_style=menu
if [ "${timeout}" = 0 ]; then
set timeout=10
fi
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/31_linux_proxy ###
menuentry "Linux Mint 17 -- recovery mode" --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod gzio
insmod part_msdos
insmod part_msdos
insmod lvm
insmod ext2
set root='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/hi4Ubb-wQik-Vq8b-1PBO-4g58-MwFk-E8luCJ'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/hi4Ubb-wQik-Vq8b-1PBO-4g58-MwFk-E8luCJ' 2f5b1b3e-33dd-49ed-b725-431cd08a5758
else
search --no-floppy --fs-uuid --set=root 2f5b1b3e-33dd-49ed-b725-431cd08a5758
fi
echo 'Loading Linux 3.13.0-24-generic ...'
linux /vmlinuz-3.13.0-24-generic root=/dev/mapper/Gnusounds--LVM-Root ro recovery nomodeset
echo 'Loading initial ramdisk ...'
initrd /initrd.img-3.13.0-24-generic
}
function gfxmode {
set gfxpayload="$1"
if [ "$1" = "keep" ]; then
set vt_handoff=vt.handoff=7
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
if [ "$linux_gfx_mode" != "text" ]; then load_video; fi
### END /etc/grub.d/31_linux_proxy ###

### BEGIN /etc/grub.d/32_linux_xen_proxy ###
### END /etc/grub.d/32_linux_xen_proxy ###

### BEGIN /etc/grub.d/33_lupin ###
### END /etc/grub.d/33_lupin ###

### BEGIN /etc/grub.d/34_memtest86+_proxy ###
menuentry "Memory test (memtest86+)" {
insmod part_msdos
insmod part_msdos
insmod lvm
insmod ext2
set root='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/hi4Ubb-wQik-Vq8b-1PBO-4g58-MwFk-E8luCJ'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/EvIx82-Gnuf-XsvH-ufgo-BWTL-cHsd-62oSe2/hi4Ubb-wQik-Vq8b-1PBO-4g58-MwFk-E8luCJ' 2f5b1b3e-33dd-49ed-b725-431cd08a5758
else
search --no-floppy --fs-uuid --set=root 2f5b1b3e-33dd-49ed-b725-431cd08a5758
fi
knetbsd /memtest86+.elf
}
### END /etc/grub.d/34_memtest86+_proxy ###

### BEGIN /etc/grub.d/35_uefi-firmware ###
### END /etc/grub.d/35_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 ###

Edit: AHA! The passphrase was just my login password. I HAVE MY STUFF!!

I might just save it all and start over, however I would still like for it to work. I would also like to know why it messed up in the first place.

ajgreeny
December 30th, 2014, 05:16 PM
Do you really want or need LVM as it adds quite a lot of complication to administration of partitions, and I know from several years on this forum that many fewer people here, including myself, know how to deal with it.

It is a lot easier to have separate partitions with ext4 as the filesystem type, using either an ms-dos partition table, or GPT if you have UEFI enabled motherboard.

MAFoElffen
December 30th, 2014, 07:07 PM
Do you really want or need LVM as it adds quite a lot of complication to administration of partitions, and I know from several years on this forum that many fewer people here, including myself, know how to deal with it.

It is a lot easier to have separate partitions with ext4 as the filesystem type, using either an ms-dos partition table, or GPT if you have UEFI enabled motherboard.
Yes and No.

I like LVM. You can easily add redundancy and expand, shrink or move volumes. You can easily take snap shots for backups. It is very flexible and pliable. It has some fallback and reduncancy. For instance, I have a virtual Server up for someone here to do testing on his application right now, to test an application by failing and repairing and it's disks. The Server is on ext4 filesystem in LVM in mdadm RAID 6. I admit, I purposely made that complex, to test how that app would deal with that...

It does add another layer between the system's logical and physical... just as software RAID would. It that really a bad thing or good. Because it is another layer, it is something else to manage. On the other side of that, it adds more capabilities to the system and user. But the filesystem, ext4 is inside of LVM. LVM manages the partitions within what it resides on, whether that is physical disk or inside of RAID. Each layer of that may have pieces of itself used for journaling, backup, problem identification, problem solving, reporting, recovery...

The physical partition table (whatever type) is in the physical layer... They add intrinsic peculiarities to how you do things, but LVM and mdadm doesn't particularly care what is there, just so that is there and set up correctly to attach to... The system sees the layer closest to it, as it's layout. That is what I love about Linux-- It is very flexible. You can substitute, mix and match modules and layers. You can change things to do want you need to do and to your own personal preferences.

You can assemble and mount LVM volumes, just like you can with physical volumes. if you understand how they work.

But you can have all the capabilities imaginable, and if you don't learn to use them, take advantage of them, do the basic things to work with and safeguard your data & system files, all those capabilities are a waste. None of them work if you don't use them. None are a replacement or substitute for a good backup. If you don't do backups... what do you have? What tools do you have to restore what you need? If a system has more available to use to fix something, then maybe you might also have more of a chance to fix it(?) Possible?

To the OP... So this the resolution was more an encryption issue? (He mentioned the passphrase...) Can you now mount the boot and root volumes?