# man > PVSCAN(8)

[_PVSCAN_(8)](https://www.chedong.com/phpMan.php/man/PVSCAN/8/markdown)                              System Manager's Manual                             [_PVSCAN_(8)](https://www.chedong.com/phpMan.php/man/PVSCAN/8/markdown)

## NAME
       pvscan — List all physical volumes

## SYNOPSIS
       **pvscan _**option_args_ _position_args_
           [ _option_args_ ]
           [ _position_args_ ]

        **-a**|**--activate y**|**n**|**ay**
           **--autoactivation _**String_
           **--cache**
           **--checkcomplete**
           **--commandprofile _**String_
           **--config _**String_
        **-d**|**--debug**
           **--devices _**PV_
           **--devicesfile _**String_
           **--driverloaded y**|**n**
        **-e**|**--exported**
        **-h**|**--help**
           **--ignorelockingfailure**
           **--journal _**String_
           **--listlvs**
           **--listvg**
           **--lockopt _**String_
           **--longhelp**
        **-j**|**--major _**Number_
           **--minor _**Number_
           **--nohints**
           **--nolocking**
           **--noudevsync**
        **-n**|**--novolumegroup**
           **--profile _**String_
        **-q**|**--quiet**
           **--reportformat basic**|**json**
        **-s**|**--short**
        **-t**|**--test**
           **--udevoutput**
        **-u**|**--uuid**
        **-v**|**--verbose**
           **--version**
           **--vgonline**
        **-y**|**--yes**

## DESCRIPTION
       When called without the --cache option, pvscan lists PVs on the system, like [**pvs**(8)](https://www.chedong.com/phpMan.php/man/pvs/8/markdown) or **pvdis‐**
       [**play**(8)](https://www.chedong.com/phpMan.php/man/play/8/markdown).

       When  --cache  is used, pvscan updates runtime lvm state on the system, or with -aay performs
       autoactivation.

       **pvscan --cache _**device_

       If device is present, lvm records that the PV on device is online.  If device is not present,
       lvm removes the online record for the PV.  pvscan only reads the named device.

### pvscan --cache

       Updates the runtime state for all lvm devices.

       **pvscan --cache -aay _**device_

       Performs the --cache steps for the device, then checks if the VG using  the  device  is  com‐
       plete.   If  so,  LVs in the VG are autoactivated, the same as vgchange -aay vgname would do.
       (A device name may be replaced with major and minor numbers.)

### pvscan --cache -aay

       Performs the --cache steps for all devices, then autoactivates any complete VGs.

       **pvscan --cache --listvg|--listlvs _**device_

       Performs the --cache steps for the device, then prints the name of the VG using  the  device,
       or  the  names  of LVs using the device.  --checkcomplete is usually included to check if all
       PVs for the VG or LVs are online.  When this command is called by a  udev  rule,  the  output
       must  conform to udev rule specifications (see --udevoutput.)  The udev rule will use the re‐
       sults to perform autoactivation.

       Autoactivation of VGs or LVs can be enabled/disabled using vgchange or lvchange with --setau‐
       toactivation y|n, or by adding names to [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown) **activation/auto_activation_volume_list**

       See [**lvmautoactivation**(7)](https://www.chedong.com/phpMan.php/man/lvmautoactivation/7/markdown) for more information about how pvscan is used for autoactivation.

## USAGE
       Display PV information.

### pvscan
           [ **-e**|**--exported **]
           [ **-n**|**--novolumegroup **]
           [ **-s**|**--short **]
           [ **-u**|**--uuid **]
           [    **--ignorelockingfailure **]
           [    **--reportformat basic**|**json **]
           [ COMMON_OPTIONS ]

       —

       Record that a PV is online or offline.

### pvscan --cache
           [ **-j**|**--major _**Number_ ]
           [    **--ignorelockingfailure **]
           [    **--reportformat basic**|**json **]
           [    **--minor _**Number_ ]
           [    **--noudevsync **]
           [ COMMON_OPTIONS ]
           [ _String_|_PV_ ... ]

       —

       Record that a PV is online and autoactivate the VG if complete.

       **pvscan --cache -a**|**--activate ay**
           [ **-j**|**--major _**Number_ ]
           [    **--ignorelockingfailure **]
           [    **--reportformat basic**|**json **]
           [    **--minor _**Number_ ]
           [    **--noudevsync **]
           [    **--autoactivation _**String_ ]
           [ COMMON_OPTIONS ]
           [ _String_|_PV_ ... ]

       —

       Record that a PV is online and list the VG using the PV.

       **pvscan --cache --listvg _**PV_
           [    **--ignorelockingfailure **]
           [    **--checkcomplete **]
           [    **--vgonline **]
           [    **--udevoutput **]
           [    **--autoactivation _**String_ ]
           [ COMMON_OPTIONS ]

       —

       Record that a PV is online and list LVs using the PV.

       **pvscan --cache --listlvs _**PV_
           [    **--ignorelockingfailure **]
           [    **--checkcomplete **]
           [    **--vgonline **]
           [ COMMON_OPTIONS ]

       —

       List LVs using the PV.

       **pvscan --listlvs _**PV_
           [ COMMON_OPTIONS ]

       —

       List the VG using the PV.

       **pvscan --listvg _**PV_
           [ COMMON_OPTIONS ]

       —

       Common options for lvm:
           [ **-d**|**--debug **]
           [ **-h**|**--help **]
           [ **-q**|**--quiet **]
           [ **-t**|**--test **]
           [ **-v**|**--verbose **]
           [ **-y**|**--yes **]
           [    **--commandprofile _**String_ ]
           [    **--config _**String_ ]
           [    **--devices _**PV_ ]
           [    **--devicesfile _**String_ ]
           [    **--driverloaded y**|**n **]
           [    **--journal _**String_ ]
           [    **--lockopt _**String_ ]
           [    **--longhelp **]
           [    **--nohints **]
           [    **--nolocking **]
           [    **--profile _**String_ ]
           [    **--version **]

## OPTIONS


### -a --activate y
              Auto-activate LVs in a VG when the PVs scanned have completed the VG.  (Only **ay **is ap‐
              plicable.)

       **--autoactivation _**String_
              Specify if autoactivation is being used from an event.  This allows the command to ap‐
              ply settings that are specific to event activation, such as device scanning  optimiza‐
              tions using pvs_online files created by event-based pvscans.

### --cache
              Scan one or more devices and record that they are online.

### --checkcomplete
              Check  if all the devices used by a VG or LV are present, and print "complete" or "in‐
              complete" for each listed VG or LV.  This option is used as a part of event-based  au‐
              toactivation,  so  pvscan will do nothing if this option is set and event_activation=0
              in the config settings.

       **--commandprofile _**String_
              The command profile to use for command configuration.  See [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown) for more infor‐
              mation about profiles.

       **--config _**String_
              Config settings for the command. These override [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown) settings.  The String  arg
              uses the same format as [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown), or may use section/field syntax.  See [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown)
              for more information about config.

### -d --debug 
              Set  debug  level. Repeat from 1 to 6 times to increase the detail of messages sent to
              the log file and/or syslog (if configured).

       **--devices _**PV_
              Restricts the devices that are visible and accessible to  the  command.   Devices  not
              listed will appear to be missing. This option can be repeated, or accepts a comma sep‐
              arated list of devices. This overrides the devices file.

       **--devicesfile _**String_
              A  file listing devices that LVM should use.  The file must exist in _/etc/lvm/devices/_
              and is managed with the [**lvmdevices**(8)](https://www.chedong.com/phpMan.php/man/lvmdevices/8/markdown) command.  This  overrides  the  [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown)  **de‐**
              **vices/devicesfile **and **devices/use_devicesfile **settings.

       **--driverloaded y**|**n**
              If  set to no, the command will not attempt to use device-mapper.  For testing and de‐
              bugging.

### -e --exported
              Only show PVs belonging to exported VGs.

### -h --help
              Display help text.

### --ignorelockingfailure
              Allows a command to continue with read-only metadata operations  after  locking  fail‐
              ures.

       **--journal _**String_
              Record  information in the systemd journal.  This information is in addition to infor‐
              mation enabled by the lvm.conf log/journal setting.  command: record information about
              the command.  output: record the default command output.  debug: record  full  command
              debugging.

### --listlvs
              Print a list of LVs that use the device.

### --listvg
              Print the VG that uses the device.

       **--lockopt _**String_
              Used to pass options for special cases to lvmlockd.  See [**lvmlockd**(8)](https://www.chedong.com/phpMan.php/man/lvmlockd/8/markdown) for more informa‐
              tion.

### --longhelp
              Display long help text.

### -j --major _
              The major number of a device.

       **--minor _**Number_
              The minor number of a device.

### --nohints
              Do  not  use the hints file to locate devices for PVs. A command may read more devices
              to find PVs when hints are not used. The command will still perform standard hint file
              invalidation where appropriate.

### --nolocking
              Disable locking. Use with caution, concurrent commands may produce incorrect  results.


### --noudevsync
              Disables  udev  synchronisation. The process will not wait for notification from udev.
              It will continue irrespective of any possible udev processing in the background.  Only
              use this if udev is not running or has rules that ignore the devices LVM creates.

### -n --novolumegroup
              Only show PVs not belonging to any VG.

       **--profile _**String_
              An alias for --commandprofile or --metadataprofile, depending on the command.

### -q --quiet 
              Suppress  output  and  log  messages. Overrides --debug and --verbose.  Repeat once to
              also suppress any prompts with answer 'no'.

       **--reportformat basic**|**json**
              Overrides current output format for reports which  is  defined  globally  by  the  re‐
              port/output_format  setting in [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown).  **basic **is the original format with columns
              and rows.  If there is more than one report per command, each report is prefixed  with
              the  report  name  for identification. **json **produces report output in JSON format. See
              [**lvmreport**(7)](https://www.chedong.com/phpMan.php/man/lvmreport/7/markdown) for more information.

### -s --short
              Short listing format.

### -t --test
              Run in test mode. Commands will not update metadata.  This is implemented by disabling
              all metadata writing but nevertheless returning success to the calling function.  This
              may lead to unusual error messages in multi-stage operations if a tool relies on read‐
              ing back metadata it believes has changed but hasn't.

### --udevoutput
              Command output is modified to be imported from a udev rule.

### -u --uuid
              Show UUIDs in addition to device names.

### -v --verbose 
              Set verbose level. Repeat from 1 to 4 times to increase the detail of messages sent to
              stdout and stderr.

### --version
              Display version information.

### --vgonline
              The first command to see a complete VG will report it uniquely.  Other commands to see
              the complete VG will report it differently.

### -y --yes
              Do  not  prompt  for  confirmation interactively but always assume the answer yes. Use
              with extreme caution.  (For automatic no, see -qq.)

## VARIABLES
       _PV_     Physical Volume name, a device path under /dev.  For commands  managing  physical  ex‐
              tents,  a PV positional arg generally accepts a suffix indicating a range (or multiple
              ranges) of physical extents (PEs). When the first PE is omitted, it  defaults  to  the
              start  of  the  device, and when the last PE is omitted it defaults to end.  Start and
              end range (inclusive): _PV_[**:_**PE_**-_**PE_]...   Start  and  length  range  (counting  from  0):
              _PV_[**:_**PE_**+_**PE_]...

       _String_ See the option description for information about the string content.

       _Size_[UNIT]
              Size is an input number that accepts an optional unit.  Input units are always treated
              as base two values, regardless of capitalization, e.g. 'k' and 'K' both refer to 1024.
              The  default  input  unit  is specified by letter, followed by |UNIT.  UNIT represents
              other possible input units: **b**|**B **is bytes, **s**|**S **is sectors of 512 bytes, **k**|**K **is KiB, **m**|**M**
              is MiB, **g**|**G **is GiB, **t**|**T **is TiB, **p**|**P **is PiB, **e**|**E **is EiB.  (This should not be  confused
              with the output control --units, where capital letters mean multiple of 1000.)

## ENVIRONMENT VARIABLES
       See [**lvm**(8)](https://www.chedong.com/phpMan.php/man/lvm/8/markdown) for information about environment variables used by lvm.  For example, LVM_VG_NAME
       can generally be substituted for a required VG parameter.

## SEE ALSO
       [**lvm**(8)](https://www.chedong.com/phpMan.php/man/lvm/8/markdown), [**lvm.conf**(5)](https://www.chedong.com/phpMan.php/man/lvm.conf/5/markdown), [**lvmconfig**(8)](https://www.chedong.com/phpMan.php/man/lvmconfig/8/markdown), [**lvmdevices**(8)](https://www.chedong.com/phpMan.php/man/lvmdevices/8/markdown),

       [**pvchange**(8)](https://www.chedong.com/phpMan.php/man/pvchange/8/markdown), [**pvck**(8)](https://www.chedong.com/phpMan.php/man/pvck/8/markdown), [**pvcreate**(8)](https://www.chedong.com/phpMan.php/man/pvcreate/8/markdown), [**pvdisplay**(8)](https://www.chedong.com/phpMan.php/man/pvdisplay/8/markdown), [**pvmove**(8)](https://www.chedong.com/phpMan.php/man/pvmove/8/markdown), [**pvremove**(8)](https://www.chedong.com/phpMan.php/man/pvremove/8/markdown), [**pvresize**(8)](https://www.chedong.com/phpMan.php/man/pvresize/8/markdown), [**pvs**(8)](https://www.chedong.com/phpMan.php/man/pvs/8/markdown),
       [**pvscan**(8)](https://www.chedong.com/phpMan.php/man/pvscan/8/markdown),

       [**vgcfgbackup**(8)](https://www.chedong.com/phpMan.php/man/vgcfgbackup/8/markdown), [**vgcfgrestore**(8)](https://www.chedong.com/phpMan.php/man/vgcfgrestore/8/markdown), [**vgchange**(8)](https://www.chedong.com/phpMan.php/man/vgchange/8/markdown), [**vgck**(8)](https://www.chedong.com/phpMan.php/man/vgck/8/markdown), [**vgcreate**(8)](https://www.chedong.com/phpMan.php/man/vgcreate/8/markdown), [**vgconvert**(8)](https://www.chedong.com/phpMan.php/man/vgconvert/8/markdown),
       [**vgdisplay**(8)](https://www.chedong.com/phpMan.php/man/vgdisplay/8/markdown), [**vgexport**(8)](https://www.chedong.com/phpMan.php/man/vgexport/8/markdown), [**vgextend**(8)](https://www.chedong.com/phpMan.php/man/vgextend/8/markdown), [**vgimport**(8)](https://www.chedong.com/phpMan.php/man/vgimport/8/markdown), [**vgimportclone**(8)](https://www.chedong.com/phpMan.php/man/vgimportclone/8/markdown), [**vgimportdevices**(8)](https://www.chedong.com/phpMan.php/man/vgimportdevices/8/markdown),
       [**vgmerge**(8)](https://www.chedong.com/phpMan.php/man/vgmerge/8/markdown), [**vgmknodes**(8)](https://www.chedong.com/phpMan.php/man/vgmknodes/8/markdown), [**vgreduce**(8)](https://www.chedong.com/phpMan.php/man/vgreduce/8/markdown), [**vgremove**(8)](https://www.chedong.com/phpMan.php/man/vgremove/8/markdown), [**vgrename**(8)](https://www.chedong.com/phpMan.php/man/vgrename/8/markdown), [**vgs**(8)](https://www.chedong.com/phpMan.php/man/vgs/8/markdown), [**vgscan**(8)](https://www.chedong.com/phpMan.php/man/vgscan/8/markdown),
       [**vgsplit**(8)](https://www.chedong.com/phpMan.php/man/vgsplit/8/markdown),

       [**lvcreate**(8)](https://www.chedong.com/phpMan.php/man/lvcreate/8/markdown), [**lvchange**(8)](https://www.chedong.com/phpMan.php/man/lvchange/8/markdown), [**lvconvert**(8)](https://www.chedong.com/phpMan.php/man/lvconvert/8/markdown), [**lvdisplay**(8)](https://www.chedong.com/phpMan.php/man/lvdisplay/8/markdown), [**lvextend**(8)](https://www.chedong.com/phpMan.php/man/lvextend/8/markdown), [**lvreduce**(8)](https://www.chedong.com/phpMan.php/man/lvreduce/8/markdown), [**lvremove**(8)](https://www.chedong.com/phpMan.php/man/lvremove/8/markdown),
       [**lvrename**(8)](https://www.chedong.com/phpMan.php/man/lvrename/8/markdown), [**lvresize**(8)](https://www.chedong.com/phpMan.php/man/lvresize/8/markdown), [**lvs**(8)](https://www.chedong.com/phpMan.php/man/lvs/8/markdown), [**lvscan**(8)](https://www.chedong.com/phpMan.php/man/lvscan/8/markdown),

       [**lvm-fullreport**(8)](https://www.chedong.com/phpMan.php/man/lvm-fullreport/8/markdown), [**lvm-lvpoll**(8)](https://www.chedong.com/phpMan.php/man/lvm-lvpoll/8/markdown), [**blkdeactivate**(8)](https://www.chedong.com/phpMan.php/man/blkdeactivate/8/markdown), [**lvmdump**(8)](https://www.chedong.com/phpMan.php/man/lvmdump/8/markdown),

       [**dmeventd**(8)](https://www.chedong.com/phpMan.php/man/dmeventd/8/markdown), [**lvmpolld**(8)](https://www.chedong.com/phpMan.php/man/lvmpolld/8/markdown), [**lvmlockd**(8)](https://www.chedong.com/phpMan.php/man/lvmlockd/8/markdown), [**lvmlockctl**(8)](https://www.chedong.com/phpMan.php/man/lvmlockctl/8/markdown), [**cmirrord**(8)](https://www.chedong.com/phpMan.php/man/cmirrord/8/markdown), [**lvmdbusd**(8)](https://www.chedong.com/phpMan.php/man/lvmdbusd/8/markdown), [**fsadm**(8)](https://www.chedong.com/phpMan.php/man/fsadm/8/markdown),

       [**lvmsystemid**(7)](https://www.chedong.com/phpMan.php/man/lvmsystemid/7/markdown), [**lvmreport**(7)](https://www.chedong.com/phpMan.php/man/lvmreport/7/markdown), [**lvmraid**(7)](https://www.chedong.com/phpMan.php/man/lvmraid/7/markdown), [**lvmthin**(7)](https://www.chedong.com/phpMan.php/man/lvmthin/7/markdown), [**lvmcache**(7)](https://www.chedong.com/phpMan.php/man/lvmcache/7/markdown)

Red Hat, Inc.                     LVM TOOLS [2.03.16(2)](https://www.chedong.com/phpMan.php/man/2.03.16/2/markdown) (2022-05-18)                        [_PVSCAN_(8)](https://www.chedong.com/phpMan.php/man/PVSCAN/8/markdown)
