LVSCAN(8)
π
LVSCAN β it's in the (8) System Manager's Manual, bestie β¨
π¦ NAME
lvscan β literally just list all logical volumes in all volume groups, no cap π
πΈ SYNOPSIS
lvscan [ option_args ]
π DESCRIPTION
Okay so picture this: lvscan goes around scanning every VG in the system, or every supported LVM block device, hunting for LVs π. And what do you get back? One line per LV β showing whether it's active or not, whether it's a snapshot or an origin, the size of the device, and its allocation policy. That's the whole tea. β
But if you want the full lore β the comprehensive deep-dive on your LVs β you gotta use lvs(8) or lvdisplay(8) instead. lvscan is giving quick-glance energy, not whole-essay energy π«Ά
β¨ USAGE β¨
lvscan
[ -a|--all ]
[ --ignorelockingfailure ]
[ --readonly ]
[ --reportformat basic|json|json_std ]
[ 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,--allβ spill the tea on the internal LVs too π«£. These are the components of normal LVs β like mirrors β that you can't reach on their own, i.e. not independently accessible, e.g. not mountable.--commandprofile Stringβ the command profile to use for command configuration. Wanna know what profiles even are? Seelvm.conf(5), it explains it all π--config Stringβ config settings for the command, and these override thelvm.conf(5)settings. The String arg uses the same format aslvm.conf(5), or it can usesection/fieldsyntax. Again:lvm.conf(5)for the deets on config π-d,--debug ...β sets the debug level. Repeat it anywhere from 1 to 6 times to crank up how detailed the messages sent to the log file and/or syslog (if configured) get π₯--devices PVβ restricts which devices are visible and accessible to the command. Any device you don't list will just show up as missing. You can repeat this option, or hand it a comma-separated list of devices. Heads up: this overrides the devices file π--devicesfile Stringβ a file listing the devices LVM should use. The file must exist in/etc/lvm/devices/and it's managed with thelvmdevices(8)command. This overrides thelvm.conf(5)devices/devicesfileanddevices/use_devicesfilesettings π¦--driverloaded y|nβ if you set it to no, the command won't even try to use device-mapper. It's for testing and debugging π§-h,--helpβ displays help text. Your bestie when you're lost π--ignorelockingfailureβ lets a command keep going with read-only metadata operations even after locking failures π--journal Stringβ records information in the systemd journal. This is in addition to whatever thelvm.conflog/journalsetting already turns on. Your options:command:records info about the command.output:records the default command output.debug:records full command debugging β¨--lockopt Stringβ used to pass options for special cases tolvmlockd. Seelvmlockd(8)for more πΈ--longhelpβ displays long help text. The extended cut π¬--nohintsβ don't use the hints file to locate devices for PVs. When hints aren't used, a command may have to read more devices to find PVs. It'll still do standard hint file invalidation where appropriate, don't worry π--nolockingβ disables locking. Use with caution bestie, concurrent commands may produce incorrect results π--profile Stringβ an alias for--commandprofileor--metadataprofile, depending on the command π-q,--quiet ...β suppresses output and log messages. It overrides--debugand--verbose. Repeat it once to also suppress any prompts with answer 'no' π€«--readonlyβ prevents the command from making changes, including activation and metadata updates. (See--permission rfor read only LVs.) π«Ά--reportformat basic|json|json_stdβ overrides the current output format for reports, which is normally defined globally by thereport/output_formatsetting inlvm.conf(5). Here's the breakdown:basicis the original format with columns and rows β and if there's more than one report per command, each report gets prefixed with the report name for identification.jsonproduces report output in JSON format.json_stdproduces report output in JSON format that's more compliant with the JSON standard. Seelvmreport(7)for more info π-t,--testβ runs in test mode. Commands will not update metadata. How's it work? It disables all metadata writing but still returns success to the calling function anyway π . Warning: this may lead to unusual error messages in multi-stage operations if a tool relies on reading back metadata it believes has changed but actually hasn't. It's giving gaslighting fr fr π-v,--verbose ...β sets the verbose level. Repeat it anywhere from 1 to 4 times to increase the detail of messages sent to stdout and stderr π₯--versionβ displays version information β-y,--yesβ don't prompt for confirmation interactively, just always assume the answer is yes. Use with extreme caution π. (For automatic no, see-qq.)
π VARIABLES π
Stringβ see the option description for info about what the string content is πSize[UNIT]β Size is an input number that accepts an optional unit. Input units are always treated as base two values, regardless of capitalization β so for example'k'and'K'both refer to 1024. The default input unit is specified by letter, followed by|UNIT. AndUNITrepresents the other possible input units:b|Bis bytes,s|Sis sectors of 512 bytes,k|Kis KiB,m|Mis MiB,g|Gis GiB,t|Tis TiB,p|Pis PiB,e|Eis EiB. π¦
Don't get this confused with the output control --units, where capital letters mean multiple of 1000. Different vibe entirely, iykyk π
π ENVIRONMENT VARIABLES π
See lvm(8) for the info about environment variables used by lvm. For example, LVM_VG_NAME can generally be substituted for a required VG parameter β¨
π SEE ALSO π
lvm(8), lvm.conf(5), lvmconfig(8), lvmdevices(8),
pvchange(8), pvck(8), pvcreate(8), pvdisplay(8), pvmove(8), pvremove(8), pvresize(8), pvs(8), pvscan(8),
vgcfgbackup(8), vgcfgrestore(8), vgchange(8), vgck(8), vgcreate(8), vgconvert(8), vgdisplay(8), vgexport(8), vgextend(8), vgimport(8), vgimportclone(8), vgimportdevices(8), vgmerge(8), vgmknodes(8), vgreduce(8), vgremove(8), vgrename(8), vgs(8), vgscan(8), vgsplit(8),
lvcreate(8), lvchange(8), lvconvert(8), lvdisplay(8), lvextend(8), lvreduce(8), lvremove(8), lvrename(8), lvresize(8), lvs(8), lvscan(8),
lvm-fullreport(8), lvm-lvpoll(8), blkdeactivate(8), lvmdump(8),
dmeventd(8), lvmpolld(8), lvmlockd(8), lvmlockctl(8), lvmdbusd(8), fsadm(8),
lvmsystemid(7), lvmreport(7), lvmcache(7), lvmraid(7), lvmthin(7), lvmvdo(7), lvmautoactivation(7)
okay that's the whole page bestie, go scan some LVs π β¨
Brought to you by Red Hat, Inc. β LVM TOOLS 2.03.44(2), dated 2026-10-27 ππ«Ά That's the version, that's the source, that's the date, slay.
π¦ where this page comes from
- arch rolling: lvm2 2.03.44-1 Β· GPL-2.0-only AND LGPL-2.1-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms