Skip to content

Install cv4pve-report and export a Proxmox VE inventory

cv4pve-report runs outside the cluster (on your workstation, a management VM or a scheduled job) and talks only to the Proxmox VE REST API on port 8006. Nothing is installed on the nodes.

  1. Install cv4pve-report

    arch=$(uname -m | sed 's/x86_64/x64/;s/aarch64/arm64/;s/armv7l/arm/')
    wget https://github.com/Corsinvest/cv4pve-report/releases/latest/download/cv4pve-report-linux-$arch.zip
    unzip cv4pve-report-linux-$arch.zip
    chmod +x cv4pve-report

    All files are on the latest release page.

  2. Create an API token

    Create a dedicated user and an API token in Proxmox VE, with the privileges the tool needs: see Permissions.

  3. Run cv4pve-report export

    Point the tool at any node:

    cv4pve-report --host=pve01 --api-token='report@pve!report=<uuid>' export

    Several nodes, username and password, certificates and options in a file for scheduled runs: see Connection.

  4. Open the report

    The report is a .zip in the current folder, with the sections of the cluster, one sheet, page or file each: Output explains the formats and where to start reading, and Sections every table and column.

cv4pve-report has two commands:

Command What it does
export Reads the cluster and writes the report.
create-settings Writes settings.json in the current folder with the default settings (or those of --fast / --full), to edit and pass with --settings-file, see Settings. Needs no connection to the cluster.

Options of export:

Option What it does
--format Xlsx (default), Html or Json, see Output.
--output, -o Path of the .zip to write. Default: Report_YYYYMMDD_HHmmss.zip in the current folder. If the path does not end in .zip, .zip is appended. An existing file is overwritten.
--fast Fast profile, overview tables only: no detail sheets, snapshots, disks, partitions, guest agent data, RRD, storage content, backups or firewall. For a quick look at a large cluster.
--full Full profile: adds SMART data, syslog, cluster log, guest RRD and the Capacity Planning section, reads a week of RRD history instead of a day, and limits the firewall log to the last 3 days.

Without --fast or --full the standard profile is used. The profiles page lists exactly what each one turns on.

cv4pve-report --host=pve01 --api-token='report@pve!report=<uuid>' export # standard profile, Excel
cv4pve-report --host=pve01 --api-token='report@pve!report=<uuid>' export --fast # quick inventory of a large cluster
cv4pve-report --host=pve01 --api-token='report@pve!report=<uuid>' export --full # everything, for audits
cv4pve-report --host=pve01 --api-token='report@pve!report=<uuid>' export --format Html -o cluster-2026-09
# Your own selection of sections
cv4pve-report create-settings --full # then edit settings.json
cv4pve-report --host=pve01 --api-token='report@pve!report=<uuid>' --settings-file=settings.json export

--format, --output, --fast and --full go after export. --settings-file goes before the command, with the connection options. A settings file always wins over --fast and --full.

While it runs, the tool shows the section it is reading on one line. When the output is redirected (a scheduled job, a log file) it prints one line per step instead. At the end it prints Report generated: <path>.