LVM volume group not found at boot
The logical volumes are not activated, so the root or data filesystem cannot be mounted. The data is normally untouched.
What you see
Boot drops to an initramfs or emergency prompt reporting that a volume group was not found. lvs and vgs show nothing, or show a volume group with a missing physical volume.
What is actually wrong
A disk that did not appear in time, a physical volume that has genuinely gone, an initramfs built without the LVM modules, or a filter in lvm.conf excluding the device.
Codes and articles
Fixes (2)
Activate the group and repair the initramfs
All the physical volumes are present but the group is not active.
Scan for physical volumes, volume groups and logical volumes in that order.
pvscanvgscanlvscan
Activate everything.
vgchange -ayIf it activates, you are booted — but it will happen again. Continue.
lsblk -fmount -a
Check lvm.conf is not filtering the device out.
grep -E '^\s*(filter|global_filter)' /etc/lvm/lvm.confA filter added for a SAN or a multipath setup that rejects everything not explicitly listed will silently exclude a newly added disk.
Rebuild the initramfs so LVM is available at boot. Debian-family:
sudo update-initramfs -u -k allRHEL-family:
sudo dracut -f --regenerate-allConfirm the volumes are set to activate automatically.
sudo lvchange -ay --setactivationskip n /dev/vg0/rootsudo lvs -o lv_name,vg_name,lv_attr
sudo lvs && findmnt --verifyDeal with a missing physical volume
A PV is genuinely absent. Understand what is on it before doing anything — this is the point at which data is lost or saved.
Establish what is missing and what it held.
sudo pvs -o +pv_missingsudo vgs -o +vg_missing_pv_countsudo lvs -o lv_name,vg_name,lv_attr,devices
If the missing PV held part of a linear LV, that LV has a hole in it. If the LV was mirrored or on RAID, it may be complete. This determines everything that follows.
Check whether the disk is simply not detected rather than dead.
lsblksudo dmesg -T | grep -iE 'sd |nvme|ata' | tail -20
If it is a cabling or enclosure problem, fix that and rescan — this is the good outcome.
echo '- - -' | sudo tee /sys/class/scsi_host/host0/scansudo pvscan --cache
If the PV is truly gone and you have a backup, restore. If you do not, image what remains before going further.
sudo ddrescue -f -n /dev/sdb /mnt/backup/sdb.img /mnt/backup/sdb.mapTo bring up what survives, activate the group partially. This is a recovery measure, not a repair.
sudo vgchange -ay --activationmode partial vg0Filesystems on an LV with a missing extent will have holes. Mount read-only and copy off what you can; do not write to it.
Once data is recovered, remove the missing PV and rebuild the group.
sudo vgreduce --removemissing --force vg0This permanently drops the LVs that depended on the missing device. Only run it after you have recovered everything you intend to.
Related faults
Where this stops. This write-up was written and checked by hand. It says what each step changes, how to confirm it worked and how to reverse it, and anything destructive is flagged before you reach it. If it does not match what your machine is doing, search the Support Centre for the exact code or message — and when something needs a person, get in touch.