Proxmox PCIe Passthrough — GPU, NVMe, and HBA Setup for Homelabs

Complete Proxmox VE PCIe passthrough guide — GPU for Jellyfin transcoding, NVMe direct access, SAS HBA for NAS VMs. Kernel configs, vfio-pci, IOMMU groups, and working Proxmox VM settings.

May 13, 2026 · 9 min · 1836 words · GnTech

Linux Sysctl Kernel Tuning for Homelabs — Network, Memory, and Docker Performance

Complete Linux sysctl kernel tuning guide for homelab servers. Network buffers, BBR congestion control, OOM management, fs.inotify limits, and Docker-specific sysctl configs.

May 13, 2026 · 12 min · 2356 words · GnTech

Proxmox LXC vs Docker — Picking the Right Container for Every Homelab Job

If you run Proxmox VE, you’ve got two container runtimes at your fingertips — LXC (built into Proxmox) and Docker (nested in an LXC or VM). Both are “containers” in the broad sense, but they solve different problems. Picking wrong means performance you don’t need or isolation you don’t have. This post walks through the decision criteria, backed by configs from an existing homelab running Proxmox 8.x with VLAN segmentation. ...

May 8, 2026 · 5 min · 985 words · GnTech

ZFS on Proxmox — Pool Layout, Snapshots, and Backup Strategies

ZFS is the default filesystem on Proxmox VE for good reason — checksumming, snapshots, compression, and built-in replication. But “default” doesn’t mean one-size-fits-all. Pool layout, recordsize, snapshot cadence, and backup strategy all depend on your workload. This post covers the ZFS setup on my Proxmox host (SRV1), the snapshot pipeline, and how ZFS send/receive + sanoid handle retention and offsite recovery. Pool Layout System: HP ProDesk 600 G4 DM (i5-8500T, 32 GB RAM) Disks: 1× NVMe (OS + VMs), 1× SATA SSD (bulk storage) Boot/OS Pool — rpool Standard Proxmox installation creates rpool on the boot disk. No RAID, no redundancy — just a single NVMe: ...

May 8, 2026 · 9 min · 1707 words · GnTech

Proxmox Backup Server — Installation, Datastore Tuning, and Garbage Collection

Proxmox Backup Server (PBS) is purpose-built backup storage for Proxmox VE. It does one thing and does it well: store, deduplicate, verify, and garbage-collect VM and container backups. No more cramming vzdump archives onto a NFS share and hoping they survive. This guide covers installing PBS on Debian 12, creating a datastore with sane retention, connecting a PVE host, and avoiding the gotchas that’ll eat your disk space. Why PBS Instead of a Simple NFS Export Capability NFS vzdump PBS Deduplication None Chunk-level, across all backups Incremental backups Full dump each time Changed blocks only Integrity verification None Auto-verify after backup Garbage collection None Prunes orphaned chunks Restore granularity Full restore only File-level, single disk, or full VM For a homelab with multiple VMs and LXCs, the deduplication alone saves hours of transfer and disk space. Incremental backups mean daily backups take seconds, not minutes. ...

May 8, 2026 · 6 min · 1268 words · GnTech

Proxmox Networking — Bridges, VLANs, and a Clean Host Topology

Proxmox VE’s networking layer is simple on the surface — bridges, bonds, VLANs — but there’s a gap between “it works” and “it’s maintainable.” A poorly planned bridge topology leads to broadcast storms, accidental cross-VLAN routing, or containers that can’t reach the internet because the bridge isn’t connected to anything. This post breaks down the networking setup on my Proxmox host (SRV1), which connects to a MikroTik router (R1) with VLAN filtering and a trunk port. By the end, you’ll know exactly how bridges map to the physical wire, how VLAN-aware bridges differ from the old approach, and how to assign VLANs to both VMs and LXC containers cleanly. ...

May 8, 2026 · 8 min · 1664 words · GnTech

Deploying Frigate NVR on Proxmox — Tapo C100, OpenVINO, and Telegram Alerts

Frigate is an open-source NVR built for real-time object detection with local processing. No cloud subscriptions, no vendor lock-in — just cameras, a GPU, and decent detection models. This is how I set it up on my Proxmox host, with a Tapo C100 camera, Intel GPU inference via OpenVINO, MQTT eventing, and Telegram notifications. Architecture ┌──────────────┐ RTSP (stream1/stream2) ┌──────────────┐ │ Tapo C100 │ ───────────────────────────▶ │ Frigate │ │ 10.0.50.101 │ │ 10.0.20.15 │ └──────────────┘ │ │ CCTV VLAN (50) │ Web UI:5000 │ │ RTSP :8554 │ ┌──────────┐ │ WebRTC:8555 │ │ Telegram │ ◀──── MQTT events ──────── │ go2rtc:1984 │ │ alerts │ (frigate-notifier) │ API :8971 │ └──────────┘ └──────┬───────┘ │ ┌──────▼───────┐ │ Mosquitto │ │ MQTT:1883 │ └──────────────┘ The camera lives on VLAN 50 (CCTV). Frigate runs on a Debian LXC on VLAN 20 (LAB). The router’s firewall allows Frigate’s host (10.0.20.15) to reach the camera subnet — nothing else touches CCTV. ...

May 7, 2026 · 5 min · 1044 words · GnTech