From 0bf6bda39e02d0c73a8793b69c855edb853aa932 Mon Sep 17 00:00:00 2001 From: Proxmox Backup Date: Sun, 5 Jul 2026 03:00:03 -0500 Subject: [PATCH] =?UTF-8?q?[pve]=20Weekly=20backup=202026-07-05=20?= =?UTF-8?q?=E2=80=94=20=2020=20files=20changed,=20228=20insertions(+),=207?= =?UTF-8?q?1=20deletions(-)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pve/cron/root | 2 + pve/scripts/backup-status-collect.sh | 119 ++++++++++++++++++++++++++ pve/scripts/jarvis-netscan.sh | 8 +- pve/scripts/jarvis-phone-probe.sh | 40 ++++++--- pve/scripts/jarvis-ping-probe.py | 5 +- pve/scripts/msp360-mount-ensure.sh | 36 ++++++++ shared/jobs.cfg | 3 +- shared/nodes/pve/lxc/110.conf | 4 +- shared/nodes/pve/qemu-server/100.conf | 2 +- shared/nodes/pve/qemu-server/103.conf | 6 +- shared/nodes/pve/qemu-server/105.conf | 2 +- shared/nodes/pve/qemu-server/106.conf | 7 +- shared/nodes/pve/qemu-server/107.conf | 18 ---- shared/nodes/pve/qemu-server/109.conf | 8 +- shared/nodes/pve/qemu-server/112.conf | 4 +- shared/nodes/pve/qemu-server/118.conf | 11 ++- shared/nodes/pve/qemu-server/120.conf | 4 +- shared/nodes/pve/qemu-server/211.conf | 4 +- shared/storage.cfg | 14 +-- shared/user.cfg | 2 +- 20 files changed, 228 insertions(+), 71 deletions(-) create mode 100755 pve/scripts/backup-status-collect.sh create mode 100755 pve/scripts/msp360-mount-ensure.sh delete mode 100644 shared/nodes/pve/qemu-server/107.conf diff --git a/pve/cron/root b/pve/cron/root index 64be10a..a9087e3 100644 --- a/pve/cron/root +++ b/pve/cron/root @@ -4,3 +4,5 @@ */3 * * * * /usr/local/bin/jarvis-netscan.sh >>/var/log/jarvis-netscan.log 2>&1 * * * * * /usr/local/bin/jarvis-phone-probe.sh >/dev/null 2>&1 0 3 * * 0 /usr/local/bin/proxmox-backup >> /var/log/proxmox-backup.log 2>&1 +*/15 * * * * /usr/local/bin/msp360-mount-ensure.sh +0 6 * * * /usr/local/bin/backup-status-collect.sh >> /var/log/backup-status-collect.log 2>&1 diff --git a/pve/scripts/backup-status-collect.sh b/pve/scripts/backup-status-collect.sh new file mode 100755 index 0000000..c364307 --- /dev/null +++ b/pve/scripts/backup-status-collect.sh @@ -0,0 +1,119 @@ +#!/bin/bash +# Collects MSP360 backup plan status from all known hosts and writes a JSON +# status file, then pushes it to web.orbishosting.com (VM110). +set -u +CBB="/opt/local/MSP360 Backup/bin/cbb" +SSHPW="Joker1974!!!" +OUT=/tmp/backup-status.json +NOW="$(date -u +%Y-%m-%dT%H:%M:%SZ)" +BACKUP_ROOT=/mnt/nas-backups/MSPBackups + +get_plan_status() { + # $1=host $2=user $3=planname $4=mode(local|hop) + local host="$1" user="$2" plan="$3" mode="$4" out + if [ "$mode" = "local" ]; then + out="$("$CBB" plan -l 2>&1)" + elif [ "$mode" = "hop" ]; then + out="$(sshpass -p "$SSHPW" ssh -o StrictHostKeyChecking=no -o ConnectTimeout=8 "$user@$host" "'$CBB' plan -l 2>&1")" + fi + local state result id + state=$(echo "$out" | grep 'State:' | head -1 | sed 's/.*State: *//') + result=$(echo "$out" | grep 'Last result:' | head -1 | sed 's/.*Last result: *//') + id=$(echo "$out" | grep 'Id:' | head -1 | sed 's/.*Id: *//') + echo "${state:-unreachable}|${result:-unreachable}|${id:-}" +} + +# Reads the destination generation folders on the NAS (mounted locally on +# PVE1) to find the last backup that actually completed and wrote data. +# More trustworthy than the plan's self-reported "Last result", since a +# plan can report Warning/Fail on a run after previously succeeding, and +# we want to know how stale the actual backed-up data is. +get_last_success() { + local nas_folder="$1" plan_id="$2" latest + [ -z "$plan_id" ] && { echo "null"; return; } + latest=$(ls "$BACKUP_ROOT/$nas_folder/CBB_Configuration/${plan_id}.cbb\$/" 2>/dev/null | sort | tail -1) + if [ -z "$latest" ]; then + echo "null" + else + date -u -d "${latest:0:4}-${latest:4:2}-${latest:6:2} ${latest:8:2}:${latest:10:2}:${latest:12:2}" +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || echo "null" + fi +} + +echo "[" > "$OUT" +first=1 + +emit() { + local name="$1" ip="$2" state="$3" result="$4" last_success="$5" + [ "$first" -eq 1 ] && first=0 || echo "," >> "$OUT" + if [ "$last_success" = "null" ]; then + cat >> "$OUT" <> "$OUT" </dev/null | sort | tail -1) + if [ -z "$latest_dump" ]; then + emit "$name" "$ip" "Unknown" "unreachable" "null" + return + fi + + ts=$(basename "$latest_dump" | sed -E 's/vzdump-qemu-[0-9]+-([0-9_]+-[0-9_]+)\.vma\.zst/\1/') + iso=$(date -u -d "$(echo "$ts" | sed -E 's/(....)_(..)_(..)-(..)_(..)_(..)/\1-\2-\3 \4:\5:\6/')" +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || echo "") + + latest_log="$dump_dir/vzdump-qemu-$vmid-$ts.log" + if [ -f "$latest_log" ] && grep -q "Finished Backup" "$latest_log"; then + result="Success" + else + result="Warning" + fi + state="Proxmox nightly" + + if [ -n "$iso" ]; then + emit "$name" "$ip" "$state" "$result" "$iso" + else + emit "$name" "$ip" "$state" "$result" "null" + fi +} + +collect "PVE1" "10.48.200.90" "" "local" "CBB_pve" +collect "JARVIS" "10.48.200.211" "root" "hop" "CBB_JARVIS-211" +collect "NovaCPX" "10.48.200.110" "root" "hop" "CBB_NovaCPX-110" +collect "Jellyfin" "10.48.200.33" "root" "hop" "CBB_Jellyfin-33" +collect "MediaStack" "10.48.200.35" "root" "hop" "CBB_MediaStack-35" +collect_proxmox_vm "Homebridge" "10.48.200.18" "118" + +echo "]" >> "$OUT" + +python3 -c " +import json +data = json.load(open('$OUT')) +data = {'updated': '$NOW', 'hosts': data} +json.dump(data, open('$OUT', 'w'), indent=2) +" + +sshpass -p "$SSHPW" scp -o StrictHostKeyChecking=no "$OUT" root@10.48.200.110:/home/webacct/public_html/downloads/backup-status.json diff --git a/pve/scripts/jarvis-netscan.sh b/pve/scripts/jarvis-netscan.sh index 75b58d3..57ecbab 100755 --- a/pve/scripts/jarvis-netscan.sh +++ b/pve/scripts/jarvis-netscan.sh @@ -2,9 +2,13 @@ # JARVIS Network Scanner — runs on PVE1, pushes nmap results to JARVIS # Cron: */3 * * * * /usr/local/bin/jarvis-netscan.sh >/dev/null 2>&1 -JARVIS_URL="https://165.22.1.228" +JARVIS_URL="http://10.48.200.211" JARVIS_HOST="jarvis.orbishosting.com" -REG_KEY="f846a9aaf7ce9a61742c63c87c4186052a71d2a580c65518" +REG_KEY=$(cat /etc/jarvis-agent/reg-key 2>/dev/null) +if [ -z "$REG_KEY" ]; then + echo "$(date): ERROR: /etc/jarvis-agent/reg-key not found" >&2 + exit 1 +fi SUBNET="10.48.200.0/24" TMPFILE=$(mktemp) diff --git a/pve/scripts/jarvis-phone-probe.sh b/pve/scripts/jarvis-phone-probe.sh index cac47bf..936fe70 100755 --- a/pve/scripts/jarvis-phone-probe.sh +++ b/pve/scripts/jarvis-phone-probe.sh @@ -3,9 +3,13 @@ # Pings all Yealink phones + checks FusionPBX SIP registration (read-only) # 200.3 is on an external FusionPBX — ping only, no SIP check -JARVIS_URL="https://165.22.1.228" +JARVIS_URL="http://10.48.200.211" JARVIS_HOST="jarvis.orbishosting.com" -REG_KEY="f846a9aaf7ce9a61742c63c87c4186052a71d2a580c65518" +REG_KEY=$(cat /etc/jarvis-agent/reg-key 2>/dev/null) +if [ -z "$REG_KEY" ]; then + echo "$(date): ERROR: /etc/jarvis-agent/reg-key not found" >&2 + exit 1 +fi FUSION_HOST="134.209.72.226" # IP|alias|extension(none=skip SIP check)|mac @@ -21,19 +25,17 @@ PHONES=( REG_OUTPUT=$(ssh -o StrictHostKeyChecking=no -o ConnectTimeout=5 -o BatchMode=yes \ root@$FUSION_HOST "fs_cli -x 'show registrations'" 2>/dev/null || echo "") -DEVICES="[" -FIRST=1 +# Collect results as TSV, delegate JSON building to python3 to avoid injection +RESULTS="" for PHONE in "${PHONES[@]}"; do IFS='|' read -r IP ALIAS EXT MAC <<< "$PHONE" - # Ping probe if ping -c 1 -W 2 "$IP" > /dev/null 2>&1; then STATUS="online" else STATUS="offline" fi - # SIP check — skip for external phones (ext=none) if [ "$EXT" = "none" ]; then SIP="external" elif [ -n "$REG_OUTPUT" ] && echo "$REG_OUTPUT" | grep -q "^${EXT},"; then @@ -42,15 +44,31 @@ for PHONE in "${PHONES[@]}"; do SIP="unregistered" fi - [ $FIRST -eq 0 ] && DEVICES+="," - DEVICES+="{\"ip\":\"$IP\",\"alias\":\"$ALIAS\",\"mac\":\"$MAC\",\"vendor\":\"Yealink\",\"status\":\"$STATUS\",\"sip_status\":\"$SIP\",\"extension\":\"$EXT\"}" - FIRST=0 + RESULTS="${RESULTS}${IP}\t${ALIAS}\t${MAC}\t${STATUS}\t${SIP}\t${EXT}\n" done -DEVICES+="]" + +JSON=$(printf "%b" "$RESULTS" | python3 -c " +import sys, json +devices = [] +for line in sys.stdin: + line = line.rstrip('\n') + if not line: + continue + parts = line.split('\t') + if len(parts) < 6: + continue + ip, alias, mac, status, sip, ext = parts[:6] + devices.append({ + 'ip': ip, 'alias': alias, 'mac': mac, + 'vendor': 'Yealink', 'status': status, + 'sip_status': sip, 'extension': ext, + }) +print(json.dumps({'devices': devices})) +") curl -sk --max-time 10 \ -X POST "$JARVIS_URL/api/netscan" \ -H "Host: $JARVIS_HOST" \ -H "Content-Type: application/json" \ -H "X-Registration-Key: $REG_KEY" \ - -d "{\"devices\":$DEVICES}" > /dev/null 2>&1 + -d "$JSON" > /dev/null 2>&1 diff --git a/pve/scripts/jarvis-ping-probe.py b/pve/scripts/jarvis-ping-probe.py index 36375ae..72e68f8 100755 --- a/pve/scripts/jarvis-ping-probe.py +++ b/pve/scripts/jarvis-ping-probe.py @@ -11,7 +11,7 @@ import urllib.request import urllib.error import ssl -JARVIS_URL = "https://165.22.1.228" +JARVIS_URL = "http://10.48.200.211" HOST_HEADER = "jarvis.orbishosting.com" # Devices to probe: agent_id → api_key @@ -93,8 +93,7 @@ def main(): status = "online" if alive else "offline" print(f"{agent_id} ({ip}): {status}", flush=True) heartbeat(agent_id, api_key, alive) - if alive: - update_status(agent_id, api_key, status) + update_status(agent_id, api_key, status) if __name__ == "__main__": main() diff --git a/pve/scripts/msp360-mount-ensure.sh b/pve/scripts/msp360-mount-ensure.sh new file mode 100755 index 0000000..ac4b56e --- /dev/null +++ b/pve/scripts/msp360-mount-ensure.sh @@ -0,0 +1,36 @@ +#!/bin/bash +# Ensures the NAS CIFS mount and the MSP360 bind-mount are both live. +# MSP360's pre-flight check does `mountpoint ` on the exact configured +# storage Path (/mnt/nas-backups/MSPBackups). Since that's a subdirectory of +# the real CIFS mount (/mnt/nas-backups), it never registers as a mountpoint +# on its own -- so we bind-mount it onto itself to make it one. +set -u +MOUNT=/mnt/nas-backups +SUBDIR="$MOUNT/MSPBackups" +LOG=/var/log/msp360-mount-ensure.log + +log() { echo "$(date '+%F %T') $1" >> "$LOG"; } + +if ! mountpoint -q "$MOUNT"; then + log "CIFS mount down, remounting $MOUNT..." + if mount "$MOUNT" 2>>"$LOG"; then + log "CIFS remount OK" + umount "$SUBDIR" 2>/dev/null || true + else + log "CIFS remount FAILED" + exit 1 + fi +fi + +if ! mountpoint -q "$SUBDIR"; then + log "Bind mount down, rebinding $SUBDIR..." + mkdir -p "$SUBDIR" + if mount --bind "$SUBDIR" "$SUBDIR" 2>>"$LOG"; then + log "Bind mount OK" + else + log "Bind mount FAILED" + exit 1 + fi +fi + +exit 0 diff --git a/shared/jobs.cfg b/shared/jobs.cfg index 0555642..4231c35 100644 --- a/shared/jobs.cfg +++ b/shared/jobs.cfg @@ -1,4 +1,5 @@ vzdump: backup-aa6b1890-23c0 + schedule 21:00 all 1 compress zstd enabled 1 @@ -7,6 +8,6 @@ vzdump: backup-aa6b1890-23c0 node pve notes-template {{guestname}} notification-mode notification-system - schedule 21:00 + prune-backups keep-last=3 storage SynologyProx diff --git a/shared/nodes/pve/lxc/110.conf b/shared/nodes/pve/lxc/110.conf index d78cd4f..1d33fc4 100644 --- a/shared/nodes/pve/lxc/110.conf +++ b/shared/nodes/pve/lxc/110.conf @@ -2,12 +2,12 @@ arch: amd64 cores: 2 features: nesting=1,keyctl=1 hostname: WireGuard-19 -memory: 1024 +memory: 4096 nameserver: 10.48.200.90 net0: name=eth0,bridge=vmbr0,gw=10.48.200.1,hwaddr=BC:24:11:46:1E:70,ip=10.48.200.67/24,type=veth onboot: 1 ostype: alpine -rootfs: GoFlex:110/vm-110-disk-0.raw,size=8G +rootfs: SynologyLVM:vm-110-disk-0,size=8G swap: 512 timezone: America/Chicago unprivileged: 1 diff --git a/shared/nodes/pve/qemu-server/100.conf b/shared/nodes/pve/qemu-server/100.conf index 6401614..a88b2d1 100644 --- a/shared/nodes/pve/qemu-server/100.conf +++ b/shared/nodes/pve/qemu-server/100.conf @@ -3,7 +3,7 @@ audio0: device=AC97,driver=none boot: order=ide0;ide2;net0 cores: 2 cpu: host -ide0: GoFlex:100/vm-100-disk-0.raw,cache=writeback,discard=on,size=100G +ide0: SynologyLVM:vm-100-disk-0,cache=writeback,discard=on,size=100G ide2: none,media=cdrom machine: pc-q35-10.1 memory: 8192 diff --git a/shared/nodes/pve/qemu-server/103.conf b/shared/nodes/pve/qemu-server/103.conf index 3d6eeb9..9e5f9ea 100644 --- a/shared/nodes/pve/qemu-server/103.conf +++ b/shared/nodes/pve/qemu-server/103.conf @@ -4,7 +4,6 @@ cipassword: $5$tLqUKTpU$CYpX9cKbAdJ8JwaimzUUrcrPqwLvkm69PERl8AtvQg8 ciuser: root cores: 4 ipconfig0: ip=10.48.200.35/24,gw=10.48.200.1 -lock: backup machine: q35 memory: 4096 meta: creation-qemu=11.0.0,ctime=1780635620 @@ -13,8 +12,11 @@ nameserver: 10.48.200.90 net0: virtio=BC:24:11:84:40:0E,bridge=vmbr0 onboot: 1 ostype: l26 -scsi0: GoFlex:103/vm-103-disk-0.qcow2,discard=on,size=50G +scsi0: SynologyLVM:vm-103-disk-0,discard=on,size=50G scsihw: virtio-scsi-pci smbios1: uuid=48b8e543-f0bb-49a3-857f-90603379193a sshkeys: ssh-rsa%20AAAAB3NzaC1yc2EAAAADAQABAAACAQDNYf4z78s4%2BK4HoiUiHoqPbCCEFngCAXKP7mGwhCAc86TTbAosTpAnG1HycPzb2s2B3K3geQPUzQzcLvWdBX8hJM8IamvAZ%2FWXPtOszWTuVnaYM6BQY7ldIdXi3a%2BxscWr%2BM8dM6OexXqdCAy66HXmgl98%2BCg2uEbxCFelH81%2F5d3cuoCXllpvUawyYZe5UjFjPeBpPc%2FQyhDxG4ovYYpcCeHbzLXc9jIfawjwJTDcYfeXVHFisMdSUp0%2BeXndRM1TybeSOfT4oQbuijdsy4IQo0md5fRYgZuXxHMIgy7obNB3OPf9szgbWTEWK6jNFhkQHIZXPSRxSM9L1a0RkarQk%2BxqTf96wTJL%2FUz6hSyImYjhtPvcOoBRejaQaK96HuWGe3At96%2BI6WjvJNEDM%2FjF9tosp2nbdhcGRitYmxREdv7M8AYM393MKT94BBrulr6tI504%2B0dDTH7IaojYc8SBAtu1TrUwinLA9zQ35Ney5Ry%2FMr7tNOLU1Ni3lkqNRWysEjWxEizM%2F1sK7u2fbAzx3kE%2BTRpyzmFv6gSiGHqjs5j%2FtG6daK7Hv6OvbHSWwV%2FpW6CKslJWFAsa5tVv%2BFw8cXdcMMyb6%2FCYTUtcFMgcF0hhtsd1g6YfnOWRGLcUxFe9odiayhMlstne%2FdqeyvQCjStrzOxUT5ta9L9JZifDkQ%3D%3D%20root%40pve%0A vmgenid: ebe24bf0-94b7-4ba5-a207-c709c360c2fa + +[PENDING] +memory: 16384 diff --git a/shared/nodes/pve/qemu-server/105.conf b/shared/nodes/pve/qemu-server/105.conf index 0a41f1f..ede464f 100644 --- a/shared/nodes/pve/qemu-server/105.conf +++ b/shared/nodes/pve/qemu-server/105.conf @@ -14,7 +14,7 @@ nameserver: 8.8.8.8 1.1.1.1 net0: virtio=BC:24:11:67:1D:47,bridge=vmbr0 onboot: 1 ostype: l26 -scsi0: GoFlex:105/vm-105-disk-0.raw,discard=on,size=20G,ssd=1 +scsi0: SynologyLVM:vm-105-disk-0,discard=on,size=20G,ssd=1 scsihw: virtio-scsi-pci smbios1: uuid=726b96f7-8643-4d68-a49a-fa971561d20d sshkeys: ssh-rsa%20AAAAB3NzaC1yc2EAAAADAQABAAACAQDNYf4z78s4%2BK4HoiUiHoqPbCCEFngCAXKP7mGwhCAc86TTbAosTpAnG1HycPzb2s2B3K3geQPUzQzcLvWdBX8hJM8IamvAZ%2FWXPtOszWTuVnaYM6BQY7ldIdXi3a%2BxscWr%2BM8dM6OexXqdCAy66HXmgl98%2BCg2uEbxCFelH81%2F5d3cuoCXllpvUawyYZe5UjFjPeBpPc%2FQyhDxG4ovYYpcCeHbzLXc9jIfawjwJTDcYfeXVHFisMdSUp0%2BeXndRM1TybeSOfT4oQbuijdsy4IQo0md5fRYgZuXxHMIgy7obNB3OPf9szgbWTEWK6jNFhkQHIZXPSRxSM9L1a0RkarQk%2BxqTf96wTJL%2FUz6hSyImYjhtPvcOoBRejaQaK96HuWGe3At96%2BI6WjvJNEDM%2FjF9tosp2nbdhcGRitYmxREdv7M8AYM393MKT94BBrulr6tI504%2B0dDTH7IaojYc8SBAtu1TrUwinLA9zQ35Ney5Ry%2FMr7tNOLU1Ni3lkqNRWysEjWxEizM%2F1sK7u2fbAzx3kE%2BTRpyzmFv6gSiGHqjs5j%2FtG6daK7Hv6OvbHSWwV%2FpW6CKslJWFAsa5tVv%2BFw8cXdcMMyb6%2FCYTUtcFMgcF0hhtsd1g6YfnOWRGLcUxFe9odiayhMlstne%2FdqeyvQCjStrzOxUT5ta9L9JZifDkQ%3D%3D%20root%40pve%0A diff --git a/shared/nodes/pve/qemu-server/106.conf b/shared/nodes/pve/qemu-server/106.conf index b452c47..1afc38c 100644 --- a/shared/nodes/pve/qemu-server/106.conf +++ b/shared/nodes/pve/qemu-server/106.conf @@ -3,23 +3,22 @@ boot: order=scsi0 cicustom: vendor=local:snippets/jarvis-vendor.yml cipassword: $5$3l1elEQR$uF3zLlu1mHjuEHrGG8oi8i7J.K/7zl4GL1p/R6bUEV/ ciuser: root -cores: 4 +cores: 8 cpu: host ide2: SynologyProx:106/vm-106-cloudinit.raw,media=cdrom ipconfig0: ip=10.48.200.210/24,gw=10.48.200.1 -memory: 8192 +memory: 32768 meta: creation-qemu=11.0.0,ctime=1781725674 name: Ollama-95 nameserver: 8.8.8.8 1.1.1.1 net0: virtio=BC:24:11:F6:ED:73,bridge=vmbr0 onboot: 1 ostype: l26 -scsi0: GoFlex:106/vm-106-disk-1.raw,discard=on,size=30G,ssd=1 +scsi0: SynologyLVM:vm-106-disk-0,discard=on,size=30G,ssd=1 scsihw: virtio-scsi-pci searchdomain: local smbios1: uuid=7c666354-b26d-427c-9ce3-67023c547bb8 sockets: 1 sshkeys: ssh-rsa%20AAAAB3NzaC1yc2EAAAADAQABAAACAQDNYf4z78s4%2BK4HoiUiHoqPbCCEFngCAXKP7mGwhCAc86TTbAosTpAnG1HycPzb2s2B3K3geQPUzQzcLvWdBX8hJM8IamvAZ%2FWXPtOszWTuVnaYM6BQY7ldIdXi3a%2BxscWr%2BM8dM6OexXqdCAy66HXmgl98%2BCg2uEbxCFelH81%2F5d3cuoCXllpvUawyYZe5UjFjPeBpPc%2FQyhDxG4ovYYpcCeHbzLXc9jIfawjwJTDcYfeXVHFisMdSUp0%2BeXndRM1TybeSOfT4oQbuijdsy4IQo0md5fRYgZuXxHMIgy7obNB3OPf9szgbWTEWK6jNFhkQHIZXPSRxSM9L1a0RkarQk%2BxqTf96wTJL%2FUz6hSyImYjhtPvcOoBRejaQaK96HuWGe3At96%2BI6WjvJNEDM%2FjF9tosp2nbdhcGRitYmxREdv7M8AYM393MKT94BBrulr6tI504%2B0dDTH7IaojYc8SBAtu1TrUwinLA9zQ35Ney5Ry%2FMr7tNOLU1Ni3lkqNRWysEjWxEizM%2F1sK7u2fbAzx3kE%2BTRpyzmFv6gSiGHqjs5j%2FtG6daK7Hv6OvbHSWwV%2FpW6CKslJWFAsa5tVv%2BFw8cXdcMMyb6%2FCYTUtcFMgcF0hhtsd1g6YfnOWRGLcUxFe9odiayhMlstne%2FdqeyvQCjStrzOxUT5ta9L9JZifDkQ%3D%3D%20root%40pve%0A -unused0: GoFlex:106/vm-106-disk-0.raw vga: std vmgenid: 25331e1a-8884-4b61-bd92-5297618596bb diff --git a/shared/nodes/pve/qemu-server/107.conf b/shared/nodes/pve/qemu-server/107.conf deleted file mode 100644 index 4fb47b8..0000000 --- a/shared/nodes/pve/qemu-server/107.conf +++ /dev/null @@ -1,18 +0,0 @@ -agent: 1,fstrim_cloned_disks=1 -boot: order=scsi0;ide2;net0 -cores: 2 -cpu: host -ide2: none,media=cdrom -machine: q35 -memory: 4096 -meta: creation-qemu=10.1.2,ctime=1775177879 -name: Claude-DHCP -net0: virtio=BC:24:11:2D:C6:85,bridge=vmbr0,firewall=1 -numa: 0 -onboot: 1 -ostype: l26 -scsi0: GoFlex:107/vm-107-disk-0.raw,iothread=1,size=150G -scsihw: virtio-scsi-single -smbios1: uuid=b0b1c8aa-c799-4e2a-b393-748ed55cf6c0 -sockets: 2 -vmgenid: b2c71a5a-2356-43b9-b815-5acba58ac22f diff --git a/shared/nodes/pve/qemu-server/109.conf b/shared/nodes/pve/qemu-server/109.conf index 74f166d..862c830 100644 --- a/shared/nodes/pve/qemu-server/109.conf +++ b/shared/nodes/pve/qemu-server/109.conf @@ -1,18 +1,18 @@ -agent: enabled=1 +agent: 0 bios: ovmf boot: order=sata0 cores: 4 cpu: kvm64 -efidisk0: GoFlex:109/vm-109-disk-0.raw,efitype=4m,pre-enrolled-keys=0,size=528K +efidisk0: SynologyLVM:vm-109-disk-1,efitype=4m,pre-enrolled-keys=0,size=4M machine: q35 -memory: 16384 +memory: 32768 meta: creation-qemu=11.0.0,ctime=1782605900 name: HomeAssistant-97 net0: virtio=BC:24:11:A3:BD:26,bridge=vmbr0 numa: 0 onboot: 1 ostype: l26 -sata0: GoFlex:109/vm-109-disk-1.qcow2,discard=on,size=32G,ssd=1 +sata0: SynologyLVM:vm-109-disk-0,discard=on,size=150G,ssd=1 scsihw: virtio-scsi-pci smbios1: uuid=b0d7ba62-72df-4573-bcc4-fcfc5c9b24e8 sockets: 2 diff --git a/shared/nodes/pve/qemu-server/112.conf b/shared/nodes/pve/qemu-server/112.conf index 8789f99..d352af4 100644 --- a/shared/nodes/pve/qemu-server/112.conf +++ b/shared/nodes/pve/qemu-server/112.conf @@ -3,7 +3,7 @@ boot: order=scsi0 cipassword: $5$XnJRY7/D$aqDdg7nCNwAoNv2qhwxbn4awlik1g3LslC3ckCxWCcD ciuser: root cores: 2 -ide2: GoFlex:112/vm-112-cloudinit.qcow2,media=cdrom +ide2: SynologyLVM:vm-112-cloudinit,media=cdrom,size=4M ipconfig0: ip=10.48.200.33/24,gw=10.48.200.1 machine: q35 memory: 4096 @@ -13,7 +13,7 @@ nameserver: 10.48.200.90 net0: virtio=BC:24:11:B9:CD:D9,bridge=vmbr0 onboot: 1 ostype: l26 -scsi0: GoFlex:112/vm-112-disk-0.qcow2,discard=on,iothread=1,size=50G +scsi0: SynologyLVM:vm-112-disk-0,discard=on,iothread=1,size=50G scsihw: virtio-scsi-single searchdomain: local smbios1: uuid=5bed9e81-9d6d-4195-8129-60ed9c44b6c5 diff --git a/shared/nodes/pve/qemu-server/118.conf b/shared/nodes/pve/qemu-server/118.conf index 0abcec9..8820e50 100644 --- a/shared/nodes/pve/qemu-server/118.conf +++ b/shared/nodes/pve/qemu-server/118.conf @@ -2,20 +2,23 @@ agent: 1 boot: order=scsi0 cipassword: $5$NQ7B8hO2$gPudtAlk/B.29SOFizc4a.VleFYAieTK0VCuzpg660/ ciuser: myron -cores: 1 -ide2: GoFlex:118/vm-118-cloudinit.qcow2,media=cdrom +cores: 2 +cpu: kvm64 +ide2: SynologyLVM:vm-118-cloudinit,media=cdrom,size=4M ipconfig0: ip=10.48.200.18/24,gw=10.48.200.1 machine: q35 -memory: 1024 +memory: 4096 meta: creation-qemu=11.0.0,ctime=1782570349 name: HomeBridge-26 nameserver: 10.48.200.90 net0: virtio=BC:24:11:68:FA:DB,bridge=vmbr0 +numa: 0 onboot: 1 ostype: l26 -scsi0: GoFlex:118/vm-118-disk-0.qcow2,discard=on,iothread=1,size=20G +scsi0: SynologyLVM:vm-118-disk-0,discard=on,iothread=1,size=20G scsihw: virtio-scsi-single searchdomain: local smbios1: uuid=c6c0a84a-6052-43fe-ade3-9ff137b94e59 +sockets: 1 sshkeys: ssh-rsa%20AAAAB3NzaC1yc2EAAAADAQABAAACAQDNYf4z78s4%2BK4HoiUiHoqPbCCEFngCAXKP7mGwhCAc86TTbAosTpAnG1HycPzb2s2B3K3geQPUzQzcLvWdBX8hJM8IamvAZ%2FWXPtOszWTuVnaYM6BQY7ldIdXi3a%2BxscWr%2BM8dM6OexXqdCAy66HXmgl98%2BCg2uEbxCFelH81%2F5d3cuoCXllpvUawyYZe5UjFjPeBpPc%2FQyhDxG4ovYYpcCeHbzLXc9jIfawjwJTDcYfeXVHFisMdSUp0%2BeXndRM1TybeSOfT4oQbuijdsy4IQo0md5fRYgZuXxHMIgy7obNB3OPf9szgbWTEWK6jNFhkQHIZXPSRxSM9L1a0RkarQk%2BxqTf96wTJL%2FUz6hSyImYjhtPvcOoBRejaQaK96HuWGe3At96%2BI6WjvJNEDM%2FjF9tosp2nbdhcGRitYmxREdv7M8AYM393MKT94BBrulr6tI504%2B0dDTH7IaojYc8SBAtu1TrUwinLA9zQ35Ney5Ry%2FMr7tNOLU1Ni3lkqNRWysEjWxEizM%2F1sK7u2fbAzx3kE%2BTRpyzmFv6gSiGHqjs5j%2FtG6daK7Hv6OvbHSWwV%2FpW6CKslJWFAsa5tVv%2BFw8cXdcMMyb6%2FCYTUtcFMgcF0hhtsd1g6YfnOWRGLcUxFe9odiayhMlstne%2FdqeyvQCjStrzOxUT5ta9L9JZifDkQ%3D%3D%20root%40pve%0A vmgenid: e936e7a9-2e76-41d4-9abb-825e9a51df8d diff --git a/shared/nodes/pve/qemu-server/120.conf b/shared/nodes/pve/qemu-server/120.conf index 18d7be2..0b460d2 100644 --- a/shared/nodes/pve/qemu-server/120.conf +++ b/shared/nodes/pve/qemu-server/120.conf @@ -5,7 +5,7 @@ cipassword: $5$PHfGFCU6$CXXrwjtXLw0wYmQVMhFnGIHOdS.t3x.dswMJJOWJ769 ciuser: root cores: 4 cpu: host -efidisk0: local-lvm:vm-120-disk-0,size=4M +efidisk0: SynologyLVM:vm-120-disk-1,size=4M ide2: local-lvm:vm-120-cloudinit,media=cdrom ipconfig0: ip=10.48.200.110/24,gw=10.48.200.1 machine: q35 @@ -15,7 +15,7 @@ name: NovaCPX-110 nameserver: 10.48.200.90 net0: virtio=BC:24:11:18:2E:8B,bridge=vmbr0 ostype: l26 -scsi0: local-lvm:vm-120-disk-1,discard=on,size=50G +scsi0: SynologyLVM:vm-120-disk-0,discard=on,size=50G scsihw: virtio-scsi-pci smbios1: uuid=2d98fed4-0522-475c-b9a7-9e0f7dae8549 sockets: 1 diff --git a/shared/nodes/pve/qemu-server/211.conf b/shared/nodes/pve/qemu-server/211.conf index fa532e1..c1db7c1 100644 --- a/shared/nodes/pve/qemu-server/211.conf +++ b/shared/nodes/pve/qemu-server/211.conf @@ -4,7 +4,7 @@ cipassword: $5$deY08jA9$Jk3go7Gq6WM6CUTN6F2OXt16XjsgOJJoQZNZiEciTr7 ciuser: root cores: 8 cpu: host -ide2: GoFlex:211/vm-211-cloudinit.qcow2,media=cdrom +ide2: SynologyLVM:vm-211-cloudinit,media=cdrom,size=4M ipconfig0: ip=10.48.200.211/24,gw=10.48.200.1 machine: q35 memory: 16384 @@ -14,7 +14,7 @@ nameserver: 10.48.200.90 net0: virtio=BC:24:11:36:52:ED,bridge=vmbr0 onboot: 1 ostype: l26 -scsi0: GoFlex:211/vm-211-disk-0.qcow2,discard=on,size=50G,ssd=1 +scsi0: SynologyLVM:vm-211-disk-0,discard=on,size=50G,ssd=1 scsihw: virtio-scsi-pci searchdomain: local smbios1: uuid=507ccb4f-d721-496a-adfa-5cf90479655e diff --git a/shared/storage.cfg b/shared/storage.cfg index a39518d..dad78a5 100644 --- a/shared/storage.cfg +++ b/shared/storage.cfg @@ -1,26 +1,18 @@ dir: local path /var/lib/vz - content vztmpl,snippets,iso,rootdir,backup,images + content iso,images,rootdir,snippets,backup,vztmpl shared 0 lvmthin: local-lvm thinpool data vgname pve - content rootdir,images - -dir: GoFlex - path /mnt/goflex - content snippets,rootdir,vztmpl,images - nodes pve - prune-backups keep-all=1 - shared 1 - snapshot-as-volume-chain 1 + content images,rootdir cifs: SynologyProx path /mnt/pve/SynologyProx server 10.48.200.249 share homes - content snippets,iso,rootdir,backup,images,import,vztmpl + content iso,import,rootdir,images,snippets,backup,vztmpl prune-backups keep-all=1 snapshot-as-volume-chain 1 subdir /NAS/ProxMoxBackups diff --git a/shared/user.cfg b/shared/user.cfg index 88dc963..9c00731 100644 --- a/shared/user.cfg +++ b/shared/user.cfg @@ -1,6 +1,6 @@ user:pveb@pam:1:0:::::: user:root@pam:1:0:::myronblair@outlook.com::: -token:root@pam!homeassistant:0:0:: +token:root@pam!hoa:0:1:: token:root@pam!jarvis:0:0:Jarvis Monitoring: token:root@pam!pdm-admin-pdm:0:0:auto-generated by PDM host 'pdm' on Wed, 11 Feb 2026 07%3A18%3A36 -0600: token:root@pam!pdm-admin-pve35:0:0:auto-generated by PDM host 'pdm' on Wed, 18 Mar 2026 09%3A22%3A08 -0500: