LinuxCommandLibrary

lvmdump

Dump LVM configuration information

SYNOPSIS

lvmdump [OPTIONS]

PARAMETERS

-a, --all
    Include all possible information in the dump. This is the default behavior.

-c, --cachedir path
    Specify a directory to store temporary files created during the dump process.

-h, --help
    Display a help message and exit.

-l, --logfiles
    Include LVM-related log files in the dump.

-m, --metadata
    Include LVM metadata backups in the dump.

-p, --pvs
    Include the output of `pvs -a -o +uuid,devices` command.

-r, --raw
    Include raw metadata from devices directly. This option usually requires root privileges.

-s, --system-info
    Include various system information, such as disk usage, mount points, block device layouts, kernel messages, and system architecture.

-u, --udev
    Include udev information, which is relevant for device management.

-v, --verbose
    Run lvmdump in verbose mode, showing more detailed output during execution.

-x, --exclude-logs
    Exclude log files from being included in the dump, overriding the default or `-l` option.

-z, --compress
    Compress the resulting tarball using gzip by default.

--since date
    Filter log files to include only entries created on or after the specified date/time.

--until date
    Filter log files to include only entries created on or before the specified date/time.

DESCRIPTION

lvmdump is a diagnostic tool for the Linux Logical Volume Manager (LVM2). Its primary purpose is to collect comprehensive system and LVM-related information into a single tarball, making it easier for users to report bugs or seek support. The generated tarball typically includes LVM configuration details, command outputs (like pvs, vgs, lvs), LVM metadata backups, relevant log files, and various system information (df, mount, lsblk, dmesg, uname -a, etc.).

By consolidating this data, lvmdump streamlines the process of debugging LVM issues, as it provides a snapshot of the system's LVM state and environment. This dump is invaluable for LVM developers and support personnel to understand the context of a problem without requiring direct access to the affected system. It's designed to gather as much relevant data as possible by default, though specific content can be controlled via command-line options.

CAVEATS

lvmdump often requires root privileges to collect all comprehensive system and LVM information, especially when including raw metadata (`-r`).
The generated tarball can potentially contain sensitive system information, including log files, device paths, and configuration details. Care should be taken when sharing these dumps.
The size of the output tarball can be substantial, particularly on systems with many LVM components or extensive log files.
The `--raw` option attempts to read raw LVM metadata directly from physical devices, which might be risky if the underlying devices are unstable or uninitialized.

OUTPUT FILE

By default, lvmdump creates a gzipped tarball named `lvmdump...tar.gz` in the current working directory. The timestamp ensures uniqueness, and the hostname helps identify the source system.

CONTENTS OF THE DUMP

The tarball typically includes subdirectories like `logs/` (for LVM logs), `config/` (for LVM configuration files), `output/` (for command outputs like `pvs`, `vgs`, `lvs`, `dmsetup`, etc.), and `system/` (for general system info like `df`, `mount`, `lsblk`). The exact content varies based on specified options.

HISTORY

lvmdump is an integral part of the LVM2 suite, designed to aid in diagnostics and bug reporting. Its development closely mirrors the evolution of LVM2 itself, providing a standardized method for collecting a snapshot of LVM's operational state. While its core functionality has remained consistent, specific options and the scope of collected information have expanded over time to accommodate new LVM features and broader debugging requirements. It's a testament to the maintainers' commitment to providing robust tools for users to report and resolve issues efficiently.

SEE ALSO

lvm(8), vgcfgbackup(8), lvs(8), vgs(8), pvs(8), dmsetup(8)

Copied to clipboard