Skip to main content
Host management tools provide essential functionality for maintaining and configuring your Proxmox VE host system. These scripts run directly on the Proxmox host and help automate common administrative tasks.

Container Management

Update LXC Containers

The update-lxcs.sh script provides an interactive way to update multiple LXC containers simultaneously.
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/update-lxcs.sh)"
  • Interactive container selection with whiptail interface
  • Option to skip stopped containers
  • Exclude specific containers from updates
  • Automatic detection of package manager (apt, apk, dnf, yum, pacman)
  • Color-coded status output
The script will prompt you to select which containers to skip and whether to update only running containers.

Cron-based Container Updates

Automate container updates with scheduled cron jobs:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/update-lxcs-cron.sh)"
This installs a weekly cron job that automatically updates all LXC containers.

Container Cleanup

Remove unused packages and clear cache from containers:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/clean-lxcs.sh)"

clean-lxcs.sh

Cleans package cache and removes unused packages from LXC containers

clean-orphaned-lvm.sh

Removes orphaned LVM volumes that are no longer associated with containers

Container Deletion

Safely delete LXC containers with confirmation:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/lxc-delete.sh)"

Post-Installation Configuration

Proxmox VE Post-Install

Optimize your Proxmox VE installation with recommended settings:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/post-pve-install.sh)"
  • Disable enterprise repository (if unlicensed)
  • Enable no-subscription repository
  • Configure apt sources correctly
  • Disable subscription nag dialog
  • Update and upgrade system packages
  • Install useful utilities
  • Configure automatic security updates (optional)

Proxmox Backup Server Post-Install

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/post-pbs-install.sh)"

Proxmox Mail Gateway Post-Install

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/post-pmg-install.sh)"

Kernel Management

Kernel Clean

Remove old kernel versions to free up disk space:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/kernel-clean.sh)"
Never remove your currently running kernel. The script automatically excludes the active kernel from removal.
The script:
  • Detects the currently running kernel
  • Lists all installed kernel versions
  • Allows interactive selection of kernels to remove
  • Safely removes selected kernel packages

Kernel Pin

Pin a specific kernel version to prevent automatic updates:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/kernel-pin.sh)"
Use this when you have a stable kernel and want to prevent automatic upgrades that might introduce issues.

System Optimization

Microcode Updates

Install and update CPU microcode for Intel and AMD processors:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/microcode.sh)"

Intel

Installs intel-microcode package and updates Intel CPU firmware

AMD

Installs amd64-microcode package and updates AMD CPU firmware

CPU Scaling Governor

Configure CPU frequency scaling for performance or power savings:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/scaling-governor.sh)"
Available governors:
  • performance: Maximum CPU frequency at all times
  • powersave: Minimum CPU frequency to save power
  • ondemand: Dynamic scaling based on load
  • conservative: Gradual frequency scaling

Hardware Acceleration

Enable hardware video acceleration for Plex, Jellyfin, and other media servers:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/hw-acceleration.sh)"
Supports:
  • Intel Quick Sync Video (QSV)
  • NVIDIA NVENC/NVDEC
  • AMD AMF/VCE
  • VAAPI

NIC Offloading Fix

Resolve network performance issues caused by NIC offloading:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/nic-offloading-fix.sh)"

Backup and Restore

Host Backup

Create backups of important Proxmox host configuration:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/host-backup.sh)"
  • Backs up /etc/ directory by default
  • Custom directory selection available
  • Choose specific subdirectories to include
  • Creates compressed tar archives
  • Saves to custom location (default: /root/)

Container Restore from Backup

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/container-restore-from-backup.sh)"

Core Restore from Backup

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/core-restore-from-backup.sh)"

Monitoring

Monitor All

Automatically monitor and restart failed VMs and containers:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/monitor-all.sh)"
This creates a systemd service that continuously monitors instances. Only instances tagged with mon-restart will be automatically restarted.
How to tag instances:
# For VMs
qm set <vmid> -tags mon-restart

# For Containers
pct set <ctid> -tags mon-restart
Or use the Proxmox web UI: VM/CT → Options → Tags → Add “mon-restart”

FSTRIM Service

Enable periodic FSTRIM for SSD optimization:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/fstrim.sh)"

Version Upgrades

Upgrade to Proxmox VE 8

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/pve8-upgrade.sh)"

Upgrade to Proxmox Backup Server 3

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/pbs3-upgrade.sh)"

Upgrade to Proxmox Backup Server 4

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/pbs4-upgrade.sh)"
Always create backups before performing major version upgrades. Read the official Proxmox upgrade documentation for your specific version.

Specialized Tools

Add IP Tag

Add IP address tags to containers and VMs for easy identification:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/add-iptag.sh)"

USB Passthrough

Configure USB device passthrough to containers:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/usb-passthrough.sh)"

Execute Command Across Containers

Run commands in multiple containers simultaneously:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/execute.sh)"

Repository Update

Update Proxmox repository configuration:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/update-repo.sh)"

Frigate Support

Optimize Proxmox for running Frigate NVR:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/frigate-support.sh)"

PVE Privilege Converter

Convert Proxmox user privileges between different formats:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/pve-privilege-converter.sh)"

Application Updates

Update self-hosted applications running in containers:
bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/tools/pve/update-apps.sh)"
This script detects common self-hosted applications and updates them to the latest versions using their native update mechanisms.

Build docs developers (and LLMs) love