LVM warning: Device for PV [...] not found or rejected by a filter

Written by - 0 comments

Published on January 4th 2022 - Listed in Linux


When LVM cannot find a (removed) device anymore, the following warning message is shown after certain LVM commands, such as vgs:

root@linux:~# vgs
  WARNING: Device for PV bcT9Er-pvq6-3CCb-kdPU-98d3-NgNz-rrsnbO not found or rejected by a filter.
  VG  #PV #LV #SN Attr   VSize  VFree  
  vg0   2   3   0 wz-pn- 31.47g <18.00g

There can be a couple of reasons why this warning shows up, in this situation this happened because the original physical volume (PV) was replaced by a new PV with more capacity. Contents were moved from old to new PV using pvmove but then someone forgot to remove the original PV from the volume group (using vgreduce, pvremove).

Let's take a look at the current PVs:

root@linux:~# pvs
  WARNING: Device for PV bcT9Er-pvq6-3CCb-kdPU-98d3-NgNz-rrsnbO not found or rejected by a filter.
  PV         VG  Fmt  Attr PSize   PFree  
  /dev/sda3  vg0 lvm2 a--  <18.00g  <4.52g
  [unknown]  vg0 lvm2 a-m  <13.48g <13.48g

The original PV is simply shown as [unknown] in the list of devices. That's no surprise because in the meantime this (virtual) disk was removed from the server.

pvdisplay shows the same but with more information, including the UUID of the PV:

root@linux:~# pvdisplay
  WARNING: Device for PV bcT9Er-pvq6-3CCb-kdPU-98d3-NgNz-rrsnbO not found or rejected by a filter.
  --- Physical volume ---
  PV Name               [unknown]
  VG Name               vg0
  PV Size               13.48 GiB / not usable 4.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              3450
  Free PE               3450
  Allocated PE          0
  PV UUID               bcT9Er-pvq6-3CCb-kdPU-98d3-NgNz-rrsnbO


  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               vg0
  PV Size               <18.00 GiB / not usable 3.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              4607
  Free PE               1157
  Allocated PE          3450
  PV UUID               m2A8Nq-fbFB-MAY1-xLKQ-10VV-xZCE-dy1FtD

And no surprise here: The UUID of the unknown PV matches the one in the LVM warning.

Usually a PV is removed from a VG by using the following syntax:

vgreduce /device/path VG

But as this [unknown] device does not have a path anymore, this doesn't work. However the vgreduce command is equipped for this scenario, as the help output shows:

root@linux:~# vgreduce --help
  vgreduce - Remove physical volume(s) from a volume group
[...]
  Remove all missing PVs from a VG.
  vgreduce --removemissing VG

        [    --mirrorsonly ]
        [ COMMON_OPTIONS ]
[...]

Let's remove the missing PV:

root@linux:~# vgreduce --removemissing vg0 -v
  WARNING: Device for PV bcT9Er-pvq6-3CCb-kdPU-98d3-NgNz-rrsnbO not found or rejected by a filter.
    There are 1 physical volumes missing.
    There are 1 physical volumes missing.
    Archiving volume group "vg0" metadata (seqno 15).
    Removing PV with UUID bcT9Er-pvq6-3CCb-kdPU-98d3-NgNz-rrsnbO from VG vg0.
    Creating volume group backup "/etc/lvm/backup/vg0" (seqno 16).
  Wrote out consistent volume group vg0.

And the missing [unknown] device is now gone:

root@linux:~# pvs
  PV         VG  Fmt  Attr PSize   PFree
  /dev/sda3  vg0 lvm2 a--  <18.00g <4.52g

root@linux:~# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               vg0
  PV Size               <18.00 GiB / not usable 3.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              4607
  Free PE               1157
  Allocated PE          3450
  PV UUID               m2A8Nq-fbFB-MAY1-xLKQ-10VV-xZCE-dy1FtD

Caution! Only run this command if you know for sure that this unknown/removed device can safely be removed from the volume group!



Add a comment

Show form to leave a comment

Comments (newest first)

No comments yet.