Back to Help and InfoThis section provides commands for managing ZFS file systems in Proxmox VE. Learn how to create and manage pools, datasets, snapshots, and perform maintenance operations on your ZFS storage.
Table View Accordion View
Pool Information Command Description Action zpool list List all ZFS pools Copy zpool status Show detailed pool status and health Copy zpool status -v Show verbose pool status with errors Copy zpool history Show command history for all pools Copy zpool history <pool> Show command history for specific pool Copy zpool get all <pool> Show all properties of a pool Copy
Dataset Management Command Description Action zfs list List all ZFS datasets Copy zfs list -r <pool> List all datasets in a pool recursively Copy zfs create <pool>/<dataset> Create a new dataset Copy zfs destroy <pool>/<dataset> Destroy a dataset Copy zfs rename <pool>/<dataset> <pool>/<new-name> Rename a dataset Copy zfs get all <pool>/<dataset> Show all properties of a dataset Copy zfs set compression=on <pool>/<dataset> Enable compression on a dataset Copy
Snapshot Management Command Description Action zfs list -t snapshot List all snapshots Copy zfs list -t snapshot -r <pool> List all snapshots in a pool Copy zfs snapshot <pool>/<dataset>@<snapshot-name> Create a snapshot Copy zfs destroy <pool>/<dataset>@<snapshot-name> Delete a snapshot Copy zfs rollback <pool>/<dataset>@<snapshot-name> Rollback to a snapshot Copy zfs hold <tag> <pool>/<dataset>@<snapshot-name> Place a hold on a snapshot Copy zfs release <tag> <pool>/<dataset>@<snapshot-name> Release a hold on a snapshot Copy
Clone and Send/Receive Command Description Action zfs clone <pool>/<dataset>@<snapshot> <pool>/<clone-name> Create a clone from a snapshot Copy zfs send <pool>/<dataset>@<snapshot> > backup.zfs Send a snapshot to a file Copy zfs receive <pool>/<dataset> < backup.zfs Receive a snapshot from a file Copy zfs send -i <pool>/<dataset>@<snap1> <pool>/<dataset>@<snap2> > incr.zfs Send incremental snapshot Copy zfs send -R <pool>/<dataset>@<snapshot> > full-recursive.zfs Send recursive snapshot Copy
Maintenance and Repair Command Description Action zpool scrub <pool> Start a scrub operation on a pool Copy zpool scrub -s <pool> Stop a running scrub Copy zpool clear <pool> Clear error counts in a pool Copy zpool clear <pool> <device> Clear errors on a specific device Copy zpool replace <pool> <old-device> <new-device> Replace a failed device Copy zpool offline <pool> <device> Take a device offline Copy zpool online <pool> <device> Bring a device online Copy
Performance and Monitoring Command Description Action zpool iostat Show I/O statistics for pools Copy zpool iostat -v Show detailed I/O statistics Copy zpool iostat 5 Show I/O statistics every 5 seconds Copy arc_summary Show ARC statistics (if installed) Copy zfs get compressratio <pool>/<dataset> Show compression ratio Copy zfs get used,available,referenced <pool>/<dataset> Show space usage Copy
ZFS Best Practices Replace <pool>
with your ZFS pool name Replace <dataset>
with your dataset name Replace <snapshot-name>
with a descriptive name, often including a timestamp (e.g., daily-2023-05-01) Run regular scrubs to maintain data integrity (weekly or monthly) Keep at least 10-15% of pool space free for optimal performance (ZFS performance degrades significantly when pools are over 80% full) Use meaningful snapshot names and consider implementing an automated snapshot rotation policy for important datasets When replacing devices, always use zpool replace
rather than removing and adding to preserve data redundancy