Skip to content

Backup & Restore

Backups

VM and container backups are stored on the NAS (nasbackup) via vzdump.

Run a manual backup

vzdump 100 101 102 103 --storage nasbackup --compress zstd --mode snapshot --notes-template "Manual backup - {{guestname}}"

Backup sizes (as of March 2026)

VM/CT Name Compressed Size
LXC 100 plex 5.63 GB
VM 101 arrstack 3.94 GB
VM 102 nginx 1.40 GB
LXC 103 stash 211 MB

Note

ZFS mount points are automatically excluded from LXC backups — the media data on /stash is not backed up here, only the OS and app configs. Stopped containers use stop mode; running containers use snapshot mode.

Verify backups exist

ls -lh /mnt/pve/nasbackup/dump/

Restore

List available backups

ls /mnt/pve/nasbackup/dump/

Restore an LXC container

pct restore <vmid> /mnt/pve/nasbackup/dump/<backup-file>.tar.zst --storage local-lvm

Restore a VM

qmrestore /mnt/pve/nasbackup/dump/<backup-file>.vma.zst <vmid> --storage local-lvm

Re-add ZFS mount point to Plex LXC after restore

The vzdump backup does not include Proxmox-level mount point configuration — this must be re-added manually after restoring the Plex LXC:

pct set 100 -mp0 /stash,mp=/stash
pct set 100 -features mount=nfs;cifs

Start and verify after restore

# Start containers and VMs
pct start 100
qm start 101
qm start 102

# Verify Plex can see media
pct exec 100 -- ls /mnt/plex/Movies/ | head -5

# Verify arrstack NFS mount
qm guest exec 101 -- df -h /stash

# Verify Docker containers are running
qm guest exec 101 -- docker ps

Restart services

# Plex LXC
pct restart 100

# Arrstack VM
qm restart 101

# Individual Docker containers (from inside arrstack)
docker restart sonarr radarr qbittorrent

# Redeploy full stack — use Portainer web UI

Config file locations

Proxmox stores guest configurations at:

  • /etc/pve/lxc/ — LXC container configs
  • /etc/pve/qemu-server/ — VM configs

Docker Compose is managed via the Portainer stack editor. App configs are under /opt/mediaserver/ on the arrstack VM.