# lvs

## NAME



           lvs — Display information about logical volumes
    


## SYNOPSIS



           **lvs**
               [ _option_args_ ]
               [ _position_args_ ]
    


## DESCRIPTION



           lvs produces formatted output about LVs.
    


## USAGE



           **lvs**
               [ **-H** |**--history**]
               [ **-a** |**--all**]
               [ **-o** |**--options** _String_ ]
               [ **-S** |**--select** _String_ ]
               [ **-O** |**--sort** _String_ ]
               [    **--segments**]
               [    **--aligned**]
               [    **--binary**]
               [    **--configreport log** |**vg** |**lv** |**pv** |**pvseg** |**seg**]
               [    **--foreign**]
               [    **--ignorelockingfailure**]
               [    **--logonly**]
               [    **--nameprefixes**]
               [    **--noheadings**]
               [    **--nosuffix**]
               [    **--readonly**]
               [    **--reportformat basic** |**json**]
               [    **--rows**]
               [    **--separator** _String_ ]
               [    **--shared**]
               [    **--unbuffered**]
               [    **--units**[_Number_]**r** |**R** |**h** |**H** |**b** |**B** |**s** |**S** |**k** |**K** |**m** |**M** |**g** |**G** |**t** |**T** |**p** |**P** |**e** |**E**]
               [    **--unquoted**]
               [ COMMON_OPTIONS ]
               [ _VG_ |_LV_ |_Tag_ ... ]
    
           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



    
           **--aligned**
                  Use with --separator to align the output columns
    
           **-a** |**--all**
                  Show  information about internal LVs.  These are components
                  of normal LVs, such as mirrors, which are not independently
                  accessible, e.g. not mountable.
    
           **--binary**
                  Use binary values "0" or "1" instead of descriptive literal
                  values for columns that have exactly two  valid  values  to
                  report (not counting the "unknown" value which denotes that
                  the value could not be determined).
    
           **--commandprofile** _String_
                  The  command profile to use for command configuration.  See
                  lvm.conf(5) for more information about profiles.
    
           **--config** _String_
                  Config settings for the command. These override lvm.conf(5)
                  settings.   The  String  arg  uses  the  same   format   as
                  lvm.conf(5),   or   may   use  section/field  syntax.   See
                  lvm.conf(5) for more information about config.
    
           **--configreport log** |**vg** |**lv** |**pv** |**pvseg** |**seg**
                  See lvmreport(7).
    
           **-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_
                  Devices that the command can use. This option  can  be  re‐
                  peated  or  accepts a comma separated 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) command.  This overrides the lvm.conf(5)  **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 debugging.
    
           **--foreign**
                  Report/display foreign VGs that would otherwise be skipped.
                  See lvmsystemid(7) for more information about foreign  VGs.
    
           **-h** |**--help**
                  Display help text.
    
           **-H** |**--history**
                  Include  historical LVs in the output.  (This has no effect
                  unless  LVs  were   removed   while   lvm.conf(5)   **metada‐**
                  **ta/record_lvs_history** was enabled.
    
           **--ignorelockingfailure**
                  Allows a command to continue with read-only metadata opera‐
                  tions after locking failures.
    
           **--journal** _String_
                  Record  information  in the systemd journal.  This informa‐
                  tion is in addition to information enabled by the  lvm.conf
                  log/journal setting.  command: record information about the
                  command.   output:  record the default command output.  de‐
                  bug: record full command debugging.
    
           **--lockopt** _String_
                  Used to pass options for special cases  to  lvmlockd.   See
                  lvmlockd(8) for more information.
    
           **--logonly**
                  Suppress command report and display only log report.
    
           **--longhelp**
                  Display long help text.
    
           **--nameprefixes**
                  Add  an  "LVM2_"  prefix plus the field name to the output.
                  Useful with --noheadings to produce a list  of  field=value
                  pairs  that  can  be used to set environment variables (for
                  example, in udev rules).
    
           **--noheadings**
                  Suppress the headings line that is normally the first  line
                  of output.  Useful if grepping the output.
    
           **--nohints**
                  Do not use the hints file to locate devices for PVs. A com‐
                  mand  may  read more devices to find PVs when hints are not
                  used. The command will still perform standard hint file in‐
                  validation where appropriate.
    
           **--nolocking**
                  Disable locking.
    
           **--nosuffix**
                  Suppress the suffix on output sizes. Use with --units  (ex‐
                  cept h and H) if processing the output.
    
           **-o** |**--options** _String_
                  Comma-separated,  ordered  list  of  fields  to  display in
                  columns.  String arg syntax is: [**+** |**-** |**#**]_Field1_[**,**_Field2_  ...]
                  The  prefix  **+** will append the specified fields to the de‐
                  fault fields, **-** will remove the specified fields  from  the
                  default fields, and **#** will compact specified fields (remov‐
                  ing them when empty for all rows.)  Use **-o help** to view the
                  list of all available fields.  Use separate lists of fields
                  to  add,  remove  or  compact  by  repeating the -o option:
                  -o+field1,field2 -o-field3,field4 -o#field5.   These  lists
                  are evaluated from left to right.  Use field name **lv_all** to
                  view  all  LV  fields,  **vg_all** all VG fields, **pv_all** all PV
                  fields, **pvseg_all** all PV segment  fields,  **seg_all** all  LV
                  segment  fields, and **pvseg_all** all PV segment columns.  See
                  the lvm.conf(5) report section  for  more  config  options.
                  See lvmreport(7) for more information about reporting.
    
           **--profile** _String_
                  An alias for --commandprofile or --metadataprofile, depend‐
                  ing on the command.
    
           **-q** |**--quiet**...
                  Suppress  output  and  log  messages. Overrides --debug and
                  --verbose.  Repeat once to also suppress any  prompts  with
                  answer 'no'.
    
           **--readonly**
                  Run the command in a special read-only mode which will read
                  on-disk  metadata  without  needing to take any locks. This
                  can be used to peek inside metadata used by a  virtual  ma‐
                  chine  image  while  the virtual machine is running. No at‐
                  tempt will be made to communicate  with  the  device-mapper
                  kernel  driver,  so this option is unable to report whether
                  or not LVs are actually in use.
    
           **--reportformat basic** |**json**
                  Overrides current output format for reports  which  is  de‐
                  fined  globally  by  the  report/output_format  setting  in
                  lvm.conf(5).  **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) for more information.
    
           **--rows**
                  Output columns as rows.
    
           **--segments**
                  Use default columns that emphasize segment information.
    
           **-S** |**--select** _String_
                  Select objects for processing and reporting based on speci‐
                  fied criteria.  The criteria syntax is described  by  **--se‐**
                  **lect  help** and  lvmreport(7).  For reporting commands, one
                  row is displayed for each  object  matching  the  criteria.
                  See  **--options help** for selectable object fields.  Rows can
                  be displayed with an additional "selected"  field  (-o  se‐
                  lected)  showing  1  if the row matches the selection and 0
                  otherwise.  For non-reporting commands  which  process  LVM
                  entities, the selection is used to choose items to process.
    
           **--separator** _String_
                  String  to  use to separate each column. Useful if grepping
                  the output.
    
           **--shared**
                  Report/display shared VGs that would otherwise  be  skipped
                  when   lvmlockd  is  not  being  used  on  the  host.   See
                  lvmlockd(8) for more information about shared VGs.
    
           **-O** |**--sort** _String_
                  Comma-separated ordered list of columns  to  sort  by.  Re‐
                  places the default selection. Precede any column with **-** for
                  a reverse sort on that column.
    
           **-t** |**--test**
                  Run  in test mode. Commands will not update metadata.  This
                  is implemented by disabling all metadata writing but never‐
                  theless returning success to the calling function. This may
                  lead to unusual error messages in multi-stage operations if
                  a tool relies on reading  back  metadata  it  believes  has
                  changed but hasn't.
    
           **--unbuffered**
                  Produce  output immediately without sorting or aligning the
                  columns properly.
    
           **--units**[_Number_]**r** |**R** |**h** |**H** |**b** |**B** |**s** |**S** |**k** |**K** |**m** |**M** |**g** |**G** |**t** |**T** |**p** |**P** |**e** |**E**
                  All sizes are output in these units: human-(r)eadable  with
                  '<'  rounding  indicator, (h)uman-readable, (b)ytes, (s)ec‐
                  tors, (k)ilobytes, (m)egabytes,  (g)igabytes,  (t)erabytes,
                  (p)etabytes,  (e)xabytes.   Capitalise  to use multiples of
                  1000 (S.I.) instead of 1024.  Custom units  can  be  speci‐
                  fied, e.g. --units 3M.
    
           **--unquoted**
                  When   used  with  --nameprefixes,  output  values  in  the
                  field=value pairs are not quoted.
    
           **-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.
    
           **-y** |**--yes**
                  Do not prompt for confirmation interactively but always as‐
                  sume the answer yes. Use with extreme caution.  (For  auto‐
                  matic no, see -qq.)
    


## VARIABLES



           _VG_     Volume Group name.  See lvm(8) for valid names.
    
           _LV_     Logical Volume name.  See lvm(8) for valid names.  An LV
                  positional arg generally includes the VG name and LV name,
                  e.g. VG/LV.
    
           _Tag_    Tag name.  See lvm(8) for information about tag names and
                  using tags in place of a VG, LV or PV.
    
           _String_ See the option description for information about the string
                  content.
    
           _Size_[UNIT]
                  Size is an input number that accepts an optional unit.  In‐
                  put 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) for information about environment variables used by
           lvm.  For example, LVM_VG_NAME can generally be substituted for a
           required VG parameter.
    


## NOTES



           The lv_attr bits are:
    
           1  Volume type: (**C**)ache, (**m**)irrored, (**M**)irrored without initial
              sync, (**o**)rigin, (**O**)rigin with merging snapshot, inte(**g**)rity,
              (**r**)aid, (**R**)aid without initial sync, (**s**)napshot, merging
              (**S**)napshot, (**p**)vmove, (**v**)irtual, mirror or raid (**i**)mage, mirror
              or raid (**I**)mage out-of-sync, mirror (**l**)og device, under (**c**)on‐
              version, thin (**V**)olume, (**t**)hin pool, (**T**)hin pool data, v(**d**)o
              pool, v(**D**)o pool data, raid or pool m(**e**)tadata or pool metadata
              spare.
    
           2  Permissions: (**w**)riteable, (**r**)ead-only, (**R**)ead-only activation
              of non-read-only volume
    
           3  Allocation policy:  (**a**)nywhere, (**c**)ontiguous, (**i**)nherited,
              c(**l**)ing, (**n**)ormal This is capitalised if the volume is current‐
              ly locked against allocation changes, for example during
              pvmove(8).
    
           4  fixed (**m**)inor
    
           5  State: (**a**)ctive, (**h**)istorical, (**s**)uspended, (**I**)nvalid snapshot,
              invalid (**S**)uspended snapshot, snapshot (**m**)erge failed, suspend‐
              ed snapshot (**M**)erge failed, mapped (**d**)evice present without ta‐
              bles, mapped device present with (**i**)nactive table, thin-pool
              (**c**)heck needed, suspended thin-pool (**C**)heck needed, (**X**) unknown
    
           6  device (**o**)pen, (**X**) unknown
    
           7  Target type: (**C**)ache, (**m**)irror, (**r**)aid, (**s**)napshot, (**t**)hin,
              (**u**)nknown, (**v**)irtual.  This groups logical volumes related to
              the same kernel target together.  So, for example, mirror im‐
              ages, mirror logs as well as mirrors themselves appear as (**m**)
              if they use the original device-mapper mirror kernel driver;
              whereas the raid equivalents using the md raid kernel driver
              all appear as (**r**).  Snapshots using the original device-mapper
              driver appear as (**s**); whereas snapshots of thin volumes using
              the new thin provisioning driver appear as (**t**).
    
           8  Newly-allocated data blocks are overwritten with blocks of
              (**z**)eroes before use.
    
           9  Volume Health, where there are currently three groups of at‐
              tributes identified:
    
              Common ones for all Logical Volumes: (**p**)artial, (**X**) unknown.
              (**p**)artial signifies that one or more of the Physical Volumes
              this Logical Volume uses is missing from the system. (**X**) un‐
              known signifies the status is unknown.
    
              Related to RAID Logical Volumes: (**r**)efresh needed, (**m**)ismatches
              exist, (**w**)ritemostly.
              (**r**)efresh signifies that one or more of the Physical Volumes
              this RAID Logical Volume uses had suffered a write error.  The
              write error could be due to a temporary failure of that Physi‐
              cal Volume or an indication that it is failing.  The device
              should be refreshed or replaced. (**m**)ismatches signifies that
              the RAID logical volume has portions of the array that are not
              coherent.  Inconsistencies are detected by initiating a "check"
              on a RAID logical volume.  (The scrubbing operations, "check"
              and "repair", can be performed on a RAID logical volume via the
              'lvchange' command.)  (**w**)ritemostly signifies the devices in a
              RAID 1 logical volume that have been marked write-mostly.
              Re(**s**)haping signifies a RAID Logical Volume is either undergo‐
              ing a stripe addition/removal, a stripe size or RAID algorithm
              change.  (**R**)emove after reshape signifies freed striped raid
              images to be removed.
    
              Related to Thin pool Logical Volumes: (**F**)ailed, out of (**D**)ata
              space, (**M**)etadata read only.
              (**F**)ailed is set if thin pool encounters serious failures and
              hence no further I/O is permitted at all.  The out of (**D**)ata
              space is set if thin pool has run out of data space.  (**M**)etada‐
              ta read only signifies that thin pool encounters certain types
              of failures but it's still possible to do reads at least, but
              no metadata changes are allowed.
    
              Related to Thin Logical Volumes: (**F**)ailed.
              (**F**)ailed is set when related thin pool enters Failed state and
              no further I/O is permitted at all.
    
              Related to writecache logical volumes: (**E**)rror.
              (**E**)rror is set dm-writecache reports an error.
    
           10 s(**k**)ip activation: this volume is flagged to be skipped during
              activation.
    


* * *