DMVDOSTATS(8)

πŸ“¦
version 2.03.44 Β· 2 versions
, in arch rolling, centos-stream 10

πŸ’– DMVDOSTATS πŸ’– β€” the manual page, but make it cute

okay bestie, listen. this is dmvdostats(8) from the maintenance commands girlies, and she is literally the moment. she shows you VDO stats for device-mapper devices and she does it flawlessly. no cap.


✨ NAME ✨

dmvdostats β€” display VDO statistics for device-mapper devices 🫢


🌸 SYNOPSIS 🌸

dmvdostats [-h|--help] [-v|--verbose] [--count count] [--interval
seconds] [-o|--options fields] [-O|--sort sort_fields] [-S|--select
selection] [--noheadings] [--nosuffix] [--separator separator] [--units
units] [device...]

dmsetup vdostats [options] [device...]

two ways to serve the same look, and both ate πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

so dmvdostats displays statistics for VDO (Virtual Data Optimizer) device-mapper targets. it queries each VDO device through the kernel stats message interface and then presents the results either as a tabular (report) format or as a verbose key-value format. pick your vibe ✨

if you don't pass a device argument, dmvdostats just enumerates all device-mapper devices and reports statistics for every single VDO target it finds. she's thorough like that πŸ‘‘

a device argument can name a VDO device directly, or any device-mapper device layered above one β€” think an LVM VDO logical volume, or a thin logical volume whose pool data is a VDO. in that case dmvdostats descends the device dependency tree 🌳 and reports statistics for every underlying VDO device it finds. so nosy, so iconic.

and as a lil convenience πŸŽ€: a name that doesn't resolve to any device gets retried with the LVM -vpool suffix appended, so you can name the hidden VDO pool device by its pool logical volume name. the way she just knows.

fun fact bestie: dmvdostats is installed as a symlink to dmsetup(8), and you can also invoke it as dmsetup vdostats. same queen, different entrance πŸ’…

πŸ’… OPTIONS πŸ’…

  • -h, --help β€” display usage information. the "help me bestie" button πŸ™ˆ
  • -v, --verbose β€” produce verbose output. instead of the tabular report, display all kernel statistics in a key-value format compatible with the legacy vdostats tool. derived fields (1K-blocks, used percent, saving percent, write amplification) get inserted into the output. it's giving raw data era ✨
  • --count count β€” repeat the report count times. pair it with --interval to monitor VDO statistics continuously. obsessive monitoring, we love her πŸ”₯
  • --interval seconds β€” pause seconds between report iterations when --count is greater than one. breathe, girl 🌸
  • -o, --options fields β€” comma-separated list of fields to display. use -o help to see a list of available fields. if you don't specify it, the default fields are:
vdo_name,vdo_physical_size,vdo_used,
vdo_available,vdo_used_pct,vdo_saving_pct.
  • -O, --sort sort_fields β€” comma-separated list of fields to sort by. organize your life ✨
  • -S, --select selection β€” display only rows that match the selection criteria. see lvmreport(7) for the selection syntax. filtering is self-care πŸ’œ
  • --noheadings β€” suppress the headings line in report output. minimalism, but make it stats πŸŽ€
  • --nosuffix β€” suppress the suffix on size values.
  • --separator separator β€” use separator between fields in report output.
  • --units units β€” set the display unit for size fields. available units: b(ytes), s(ectors), k(ilobytes), m(egabytes), g(igabytes), t(erabytes), p(etabytes), e(xabytes). capitalize to use multiples of 1000 (S.I.) instead of 1024. default is human-readable (h). pick your unit, bestie, she supports you 🫢

🌈 FIELDS 🌈

these are the fields available for report output via -o:

  • vdo_name β€” VDO device name. her government name πŸ’–
  • vdo_physical_size β€” physical size of the VDO device.
  • vdo_used β€” physical space used (data blocks + overhead).
  • vdo_available β€” physical space available.
  • vdo_used_pct β€” percentage of physical space used.
  • vdo_saving_pct β€” percentage of logical data saved by deduplication and compression. the savings are real, no cap πŸ’Έ
  • vdo_all β€” all VDO fields. the whole buffet, queen πŸ‘‘

⭐ EXAMPLES ⭐

display default statistics for all VDO devices:

# dmvdostats

display verbose output for a specific device:

# dmvdostats -v /dev/mapper/vg-vpool0-vpool

display selected fields:

# dmvdostats -o vdo_name,vdo_used_pct,vdo_saving_pct

monitor usage every 5 seconds, 10 times:

# dmvdostats --count 10 --interval 5

filter to devices over 50% usage:

# dmvdostats -S 'vdo_used_pct > 50'

every single one of these is a serve, fr fr πŸ”₯


πŸ‘‘ SEE ALSO πŸ‘‘

dmsetup(8), lvm(8), lvmvdo(7), lvs(8)


and that's the whole page bestie!! this is Linux, dated Mar 2026, and it was literally such a slay to walk you through it. go check your VDO stats, drink some water, and remember: dedup and compression are the blueprint. mwah πŸ’‹βœ¨πŸ’–

πŸ“¦ where this page comes from