LVM not mounted after upgrading from 15.1 to 15.2

Hello,

I dist upgraded my home server today which was running with opensuse 15.1. After the upgrade system booted on recovery console due to /srv/storage lvm volume not mounted (it is on fstab). I checked and discoverd that the volume was inactive


**romantsa:~ #** lvscan  
  inactive          '/dev/lvm0/storage' [2,17 TiB] inherit

I can make it active with “lvchange -ay /dev/lvm0/storage” and mount it correctly but after reboot it is again inactive and because of that boot fails… I ended removing the volume from fstab to be able to boot but my services need the volume on boot time. It was working as expected with 15.1 but broke immediately after the upgrade.

How can I make the volume to be active on boot so it can be mounted from fstab.

Thanks for any help

Extra info I just discovered. I’m seeing this on journal logs


Ιαν 30 17:31:15 romantsa lvm[480]:   Udev database has incomplete information about device /dev/sda. 
Ιαν 30 17:31:15 romantsa lvm[480]:   /dev/sda: Failed to get external handle [udev]. 
Ιαν 30 17:31:15 romantsa lvm[480]:   Udev database has incomplete information about device /dev/sdb. 
Ιαν 30 17:31:15 romantsa lvm[480]:   /dev/sdb: Failed to get external handle [udev]. 
Ιαν 30 17:31:15 romantsa lvm[480]:   Udev database has incomplete information about device /dev/sdc. 
Ιαν 30 17:31:15 romantsa lvm[480]:   /dev/sdc: Failed to get external handle [udev]. 
Ιαν 30 17:31:15 romantsa lvm[480]:   Udev database has incomplete information about device /dev/sdd. 
Ιαν 30 17:31:15 romantsa lvm[480]:   /dev/sdd: Failed to get external handle [udev]. 
Ιαν 30 17:31:15 romantsa lvm[480]:   Udev database has incomplete information about device /dev/sde. 
Ιαν 30 17:31:15 romantsa lvm[480]:   /dev/sde: Failed to get external handle [udev]. 
Ιαν 30 17:31:15 romantsa lvm[480]:   Udev database has incomplete information about device /dev/sde1. 
Ιαν 30 17:31:15 romantsa lvm[480]:   /dev/sde1: Failed to get external handle [udev]. 
Ιαν 30 17:31:15 romantsa lvm[480]:   Udev database has incomplete information about device /dev/sde2. 
Ιαν 30 17:31:15 romantsa lvm[480]:   /dev/sde2: Failed to get external handle [udev].

I suspect it has to do with the issue.

As a workaround you can try setting

external_device_info_source="none"

in lvm.conf.

Didn’t changed something… volume is still inactive after boot and I can only make it active manually so I can mount it…

Another thing I noticed that may help to debug, lvm volume has 4 block devices but I can see three systemd service existing.


**romantsa:~ #** pvscan               
  PV /dev/sdb   VG lvm0            lvm2 [465,76 GiB / 0    free] 
  PV /dev/sdd   VG lvm0            lvm2 [596,17 GiB / 0    free] 
  PV /dev/sda   VG lvm0            lvm2 [465,76 GiB / 0    free] 
  PV /dev/sdc   VG lvm0            lvm2 [698,63 GiB / 0    free] 
  Total: 4 [2,17 TiB] / in use: 4 [2,17 TiB] / in no VG: 0 [0   ] 
Έχεις νέο μήνυμα στο /var/spool/mail/root 
**romantsa:~ #** systemctl | grep lvm 
  **lvm**2-monitor.service                                                                                  loaded activ
e exited    Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling                    
  **lvm**2-pvscan@8:0.service                                                                               loaded activ
e exited    LVM event activation on device 8:0                                                               
  **lvm**2-pvscan@8:16.service                                                                              loaded activ
e exited    LVM event activation on device 8:16                                                              
  **lvm**2-pvscan@8:32.service                                                                              loaded activ
e exited    LVM event activation on device 8:32                                                              
  system-**lvm**2\x2dpvscan.slice                                                                           loaded activ
e active    system-**lvm**2\x2dpvscan.slice                                                                      
  **lvm**2-**lvm**polld.socket                                                                                  loaded activ
e listening LVM2 poll daemon socket

Got a hint about udev on opensuse mailing list but it is beyond my knowledge to debug it…

Opened a bug here: https://bugzilla.opensuse.org/show_bug.cgi?id=1181615 in case someone can find the root cause… The problem is that my server is almost unusable after reboot and I have to manually mount the logical volume and start the services which using it. I’ll try to keep it like this in case the bug is confirmed, so I can help to resolve it but maybe I need to backup everything and start a clean 15.2 installation… want to avoid that.

Ok found the solution.

It seems an old raid signature was lying on this disk, although Leap 15.1 didn’t had any issue with that.


baskinsy:~ # dmraid -s
ERROR: pdc: wrong # of devices in RAID set "pdc_bgdejjghgi" [1/2] on /dev/sde
ERROR: pdc: wrong # of devices in RAID set "pdc_bgdejjghgi" [1/2] on /dev/sde
*** *Inconsistent* Set
name   : pdc_bgdejjghgi
size   : 1250000000
stride : 128
type   : mirror
status : inconsistent
subsets: 0
devs   : 1
spares : 0

So I used the following to clear the signature


baskinsy:~ # dmraid -r -E /dev/sde
Do you really want to erase "pdc" ondisk metadata on /dev/sde ? [y/n] :y
baskinsy:~ # dmraid -s
no raid disks

After that /dev/sde was assing a UUID and recognised by udev a LVM2 member so started to be mounted on boot.

Sadly, i didn’t found that before formatting the upgraded so I have to redo my services configuration.

I closed also the bug report as invalid.

Thanks for the help.