proxmox

SKILL.md

Proxmox Home Lab Manager

Sysadmin skill for managing Proxmox VE home lab infrastructure.

Connection

# Proxmox host (requires 2FA - password then OTP)
ssh proxmox

# Synology NAS (see ~/.ssh/config for Host entry)
ssh nas

Discovery Commands

List All Infrastructure

# All containers with status, IPs
ssh proxmox "pct list"

# All VMs
ssh proxmox "qm list"

# Detailed resource usage (CPU, memory, disk) for everything
ssh proxmox "pvesh get /cluster/resources --type vm --output-format json" | jq

# Container config (shows IP, mounts, resources)
ssh proxmox "pct config <CTID>"

# VM config
ssh proxmox "qm config <VMID>"

Network Discovery

# Find container IP
ssh proxmox "pct exec <CTID> -- ip -4 addr show eth0"

# What's listening in a container
ssh proxmox "pct exec <CTID> -- ss -tlnp"

# Host network config
ssh proxmox "cat /etc/network/interfaces"

Storage Discovery

# Storage pools
ssh proxmox "pvesm status"

# Storage config
ssh proxmox "cat /etc/pve/storage.cfg"

# NFS mounts
ssh proxmox "mount | grep nfs"

# Disk usage
ssh proxmox "df -h"

Container Management

# Start/stop/restart
ssh proxmox "pct start <CTID>"
ssh proxmox "pct shutdown <CTID>"   # graceful
ssh proxmox "pct stop <CTID>"       # force
ssh proxmox "pct reboot <CTID>"

# Enter container shell
ssh proxmox "pct enter <CTID>"

# Run command in container
ssh proxmox "pct exec <CTID> -- <command>"

VM Management

ssh proxmox "qm start <VMID>"
ssh proxmox "qm shutdown <VMID>"
ssh proxmox "qm stop <VMID>"        # force
ssh proxmox "qm reboot <VMID>"
ssh proxmox "qm status <VMID>"

Service Debugging

Find and Check Services

# List systemd services in container
ssh proxmox "pct exec <CTID> -- systemctl list-units --type=service --state=running"

# Check specific service
ssh proxmox "pct exec <CTID> -- systemctl status <service>"

# Service logs
ssh proxmox "pct exec <CTID> -- journalctl -u <service> -n 100 --no-pager"

# Follow logs live
ssh proxmox "pct exec <CTID> -- journalctl -u <service> -f"

# All recent logs in container
ssh proxmox "pct exec <CTID> -- journalctl -n 100 --no-pager"

Common Service Names

Most containers run a single main service. Discover with:

ssh proxmox "pct exec <CTID> -- systemctl list-units --type=service --state=running" | grep -v systemd

Typical patterns: jellyfin, AdGuardHome, caddy, sonarr, radarr, sabnzbd, tailscaled

Host Health

# Overview
ssh proxmox "pvesh get /nodes/pve/status"

# Quick health
ssh proxmox "uptime && free -h && df -h /"

# ZFS status
ssh proxmox "zpool status"

# Host logs
ssh proxmox "journalctl -n 100 --no-pager"

Backups

# Backup job config
ssh proxmox "cat /etc/pve/jobs.cfg"

# List backups in storage
ssh proxmox "pvesm list <storage-name> --content backup"

Troubleshooting

Container Won't Start

ssh proxmox "pct config <CTID>"                    # check config
ssh proxmox "df -h"                                 # disk space
ssh proxmox "ls /var/lock/pve-manager/pve-config/" # stale locks

Service Not Responding

# 1. Container running?
ssh proxmox "pct status <CTID>"

# 2. Service running?
ssh proxmox "pct exec <CTID> -- systemctl status <service>"

# 3. Logs
ssh proxmox "pct exec <CTID> -- journalctl -u <service> -n 100 --no-pager"

# 4. Port listening?
ssh proxmox "pct exec <CTID> -- ss -tlnp"

# 5. Restart
ssh proxmox "pct exec <CTID> -- systemctl restart <service>"

NFS Mount Issues

ssh proxmox "mount | grep nfs"           # current mounts
ssh proxmox "cat /etc/fstab | grep nfs"  # configured mounts
ssh proxmox "mount -a"                   # remount all

Tailscale (if present)

# Find tailscale container
ssh proxmox "pct list" | grep -i tail

# Check status (replace CTID)
ssh proxmox "pct exec <CTID> -- tailscale status"

Documentation Reference

Detailed infrastructure docs (IPs, service configs, setup history) are in: ~/obsidian/Notes/PROXMOX_SETUP.md

Read this file if you need static reference info not discoverable via commands.

Weekly Installs
15
GitHub Stars
1
First Seen
Jan 27, 2026
Installed on
opencode14
gemini-cli14
claude-code14
antigravity13
codex13
cursor13