DMVDOSTATS(8) MAINTENANCE COMMANDS DMVDOSTATS(8)

# [NAME](#NAME)

dmvdostats — Display VDO statistics for device-mapper devices

# [SYNOPSIS](#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*...]

# [DESCRIPTION](#DESCRIPTION)

**dmvdostats** displays statistics for VDO (Virtual Data Optimizer) device-mapper targets. It queries each VDO device via the kernel stats message interface and presents the results in either a tabular (report) format or a verbose key-value format.

If no *device* argument is given, **dmvdostats** enumerates all device-mapper devices and reports statistics for every VDO target found.

A *device* argument may name a VDO device directly, or any device-mapper device layered above one (for example 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 found. As a convenience, a name that does not resolve to any device is retried with the LVM **-vpool** suffix appended, so the hidden VDO pool device can be named by its pool logical volume name.

**dmvdostats** is installed as a symlink to [**dmsetup**(8)](/man/os/lvm2/dmsetup.8) and may also be invoked as **dmsetup vdostats**.

# [OPTIONS](#OPTIONS)

[**-h**, **--help**](#h)

Display usage information.

[**-v**, **--verbose**](#v)

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) are inserted into the output.

[**--count count**](#count)

Repeat the report *count* times. Use with **--interval** to monitor VDO statistics continuously.

[**--interval seconds**](#interval)

Pause *seconds* between report iterations when **--count** is greater than one.

[**-o**, **--options** ***fields***](#o)

Comma-separated list of fields to display. Use **-o help** to see a list of available fields. If not specified, the default fields are:  
**vdo\_name**,**vdo\_physical\_size**,**vdo\_used**, **vdo\_available**,**vdo\_used\_pct**,**vdo\_saving\_pct**.

[**-O**, **--sort** ***sort\_fields***](#O)

Comma-separated list of fields to sort by.

[**-S**, **--select** ***selection***](#S)

Display only rows that match the selection criteria. See [**lvmreport**(7)](/man/os/lvm2/lvmreport.7) for the selection syntax.

[**--noheadings**](#noheadings)

Suppress the headings line in report output.

[**--nosuffix**](#nosuffix)

Suppress the suffix on size values.

[**--separator separator**](#separator)

Use *separator* between fields in report output.

[**--units 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**).

# [FIELDS](#FIELDS)

The following fields are available for report output (**-o**):

[**vdo\_name**](#vdo_name)

VDO device name.

[**vdo\_physical\_size**](#vdo_physical_size)

Physical size of the VDO device.

[**vdo\_used**](#vdo_used)

Physical space used (data blocks + overhead).

[**vdo\_available**](#vdo_available)

Physical space available.

[**vdo\_used\_pct**](#vdo_used_pct)

Percentage of physical space used.

[**vdo\_saving\_pct**](#vdo_saving_pct)

Percentage of logical data saved by deduplication and compression.

[**vdo\_all**](#vdo_all)

All VDO fields.

# [EXAMPLES](#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'
```

# [SEE ALSO](#SEE_ALSO)

[**dmsetup**(8)](/man/os/lvm2/dmsetup.8), [**lvm**(8)](/man/os/lvm2/lvm.8), [**lvmvdo**(7)](/man/os/lvm2/lvmvdo.7), [**lvs**(8)](/man/os/lvm2/lvs.8)

Mar 2026 Linux

---

Document: dmvdostats(8) from lvm2 2.03.44-r0 (Chainguard OS)
Source: https://gitlab.com/lvmteam/lvm2.git
