Ubuntu gets most of the attention in Proxmox tutorials, but there's a solid case for reaching for Debian instead — especially once you realize Proxmox VE itself is built directly on top of it. If you've clicked through the Create VM wizard once or twice already and you're ready for something that just sits quietly and does its job, a Debian guest is a good default: a Pi-hole box, a small Docker host, a Samba share, a reverse proxy. Nothing flashy, nothing that needs babysitting.

This guide walks through installing Debian 13 "Trixie" as a virtual machine on Proxmox VE 9.2, from grabbing the ISO to getting the QEMU Guest Agent running so Proxmox can actually see what's happening inside the VM. None of this assumes you've built a VM before, in Proxmox or anywhere else.

What You Will Learn

  • How to get the Debian netinst ISO onto your Proxmox node
  • How to configure a new VM with settings that actually make sense for a Debian guest
  • How to get through the Debian installer without second-guessing every screen
  • How to install the QEMU Guest Agent so Proxmox can report the VM's IP address and shut it down cleanly
  • What to do when the VM won't boot or can't reach the network

What Is This Feature?

A virtual machine, or VM, is a complete, isolated computer that runs on top of your physical Proxmox host. It gets its own virtual CPU cores, its own slice of RAM, and its own virtual disk, and as far as the operating system inside it is concerned, it's running on real hardware. Proxmox VE handles this using QEMU and KVM — the same virtualization stack under the hood of most enterprise hypervisors, minus the license fee.

Debian is the Linux distribution Proxmox VE itself is built on. Proxmox VE 9.2 runs on Debian 13 (Trixie) under the hood, which is part of why Debian makes such a natural guest OS: package availability is excellent, releases stay stable for years, and if a command works on the Proxmox host's shell, it'll almost certainly behave the same way inside a Debian VM. We'll use the netinst — short for network install — ISO here. It's a small image, a bit under 700 MB, that pulls the actual packages from Debian's mirrors during setup instead of shipping everything on the disc.

Why Would You Use It?

Debian's release cycle is slower and more conservative than Ubuntu's. Some people find that frustrating; I find it relaxing. Fewer bleeding-edge packages means fewer surprises, and for a homelab service you want to set up once and forget about for three years, that's exactly the trade-off you want. A fresh minimal Debian install also sits noticeably lighter on RAM than a default Ubuntu Server install, which starts to matter once you've got a dozen small VMs competing for the same 32 GB of host memory.

Here's a quick side-by-side if you're trying to decide between the two for a given VM:

FactorDebian 13Ubuntu Server 24.04/25.x
Release cadenceRoughly every 2 years, very stableEvery 6 months, LTS every 2 years
Idle RAM after install~150–250 MB~350–500 MB
Package freshnessConservative, backports availableNewer versions, more frequent updates
Good fit forLong-running infra services, Docker hostsApps that specifically target Ubuntu, Snap-based tools

Neither is objectively "better" — it depends on what you're running. If a piece of software's install docs say "tested on Ubuntu," go with Ubuntu. Otherwise, Debian is a perfectly reasonable, slightly leaner default.

Prerequisites

Before you start, make sure you've got the following in place:

  • A working Proxmox VE install (8.x or 9.x) with at least 20 GB of free space on local storage for the ISO and the VM's disk
  • Access to the Proxmox web interface at https://your-node-ip:8006
  • A user account with the VM.Allocate and Datastore.AllocateSpace permissions — root@pam has these by default
  • An internet connection on the Proxmox node itself, and on the network the VM will be attached to (the installer downloads packages during setup)
  • About 15 to 20 minutes, most of which is the installer copying files

Step-by-Step Tutorial

1. Download the Debian netinst ISO

In the Proxmox web UI, expand your node in the left-hand tree and click local (or whichever storage you use for ISOs), then open the ISO Images tab. You've got two options here: upload a file you've already downloaded to your own PC, or click Download from URL and let the Proxmox node fetch it directly. I'd use the second one — it's faster, and you're not tying up your own upload bandwidth.

Paste in the current netinst URL, something like https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-13.6.0-amd64-netinst.iso (the exact point release number changes as Debian ships updates, so check debian.org/download if this one's gone stale). Click Download and wait for it to finish — it's a small file, usually under a minute on any reasonable connection.

2. Create the VM

Click Create VM in the top-right corner. You'll go through several tabs:

  • General — give it a VM ID and a name like debian-13. The ID just needs to be unique; Proxmox will suggest the next free one.
  • OS — select the ISO you just downloaded, set Type to Linux, and pick 6.x - 2.6 Kernel as the version.
  • System — leave the defaults (SeaBIOS, i440fx or q35 machine type, VirtIO SCSI single controller). Tick the Qemu Agent checkbox now — it saves you a step later.
  • Disks — 16 GB is comfortable for a minimal Debian install with room to grow. Leave the bus as VirtIO SCSI, and check Discard if your underlying storage is SSD or ZFS, so deleted blocks get reclaimed instead of silently eating space forever.
  • CPU — 2 cores is plenty for most small services. For Type, pick host if you're never going to migrate this VM to a node with a different CPU brand — it exposes the full instruction set and is noticeably faster for anything CPU-bound.
  • Memory — 2048 MB is a safe starting point; you can adjust it later without reinstalling anything.
  • Network — leave the bridge as vmbr0 and the model as VirtIO (paravirtualized), unless you have a specific reason to change it.

Review the summary on the Confirm tab, then click Finish. Don't tick "Start after created" yet — it doesn't matter either way, but it's one less thing happening while you're still reading the settings.

3. Boot the installer

Select the new VM in the left panel and click Start, then open the Console tab. You'll land on Debian's boot menu. Choose Install (the plain text-mode installer is fine and actually a bit faster over the noVNC console than the graphical one).

Walk through the prompts: language, location, keyboard layout. When it asks for a hostname, use something you'll recognize later in a list of a dozen VMs — not "debian" or "vm1". For the network step, DHCP will just work if your bridge is set up normally; you can switch to a static IP afterward if you'd rather.

At Partition disks, choose Guided – use entire disk and then All files in one partition unless you have a specific reason to split out /home or /var. Confirm the changes and let it write the partition table.

When you reach Software selection, uncheck Debian desktop environment — you don't want a GUI eating RAM on a headless VM — and make sure SSH server and standard system utilities stay checked. That combination gets you a minimal, SSH-ready server with nothing extra bolted on.

The installer finishes by installing GRUB to the virtual disk. Let it, confirm the device it suggests, and reboot when prompted. Proxmox will eject the ISO automatically on most versions; if the VM boots straight back into the installer, see the troubleshooting section below.

4. First boot: update and install the guest agent

Log in with the user account you created during setup, then run:

sudo apt update
sudo apt full-upgrade -y
sudo apt install -y qemu-guest-agent
sudo systemctl enable --now qemu-guest-agent

The guest agent is a small service that lets Proxmox talk to the VM directly — without it, Proxmox has no idea what IP address the VM has, and a "shutdown" from the Proxmox UI is really just a hard power-off request rather than a clean shutdown -h now.

Because you already ticked the Qemu Agent box back in step 2, the virtual channel device is already attached. If you forgot that checkbox, go to the VM's Options tab, enable QEMU Guest Agent, then fully stop and start the VM (not just reboot the guest — the device only gets attached on a cold start).

Commands Explained

CommandWhat it does
apt updateRefreshes the local list of available packages and their versions from the repositories in /etc/apt/sources.list
apt full-upgrade -yInstalls available updates, including ones that need to add or remove packages to satisfy dependencies; -y skips the confirmation prompt
apt install qemu-guest-agentInstalls the agent package that lets Proxmox query and control the guest OS directly
systemctl enable --now qemu-guest-agentStarts the guest agent immediately and sets it to start automatically on every future boot
ip aShows the VM's current network interfaces and IP addresses — handy for confirming DHCP actually assigned one

Common Errors

"No bootable device" — Usually means the ISO isn't attached, or the VM's boot order has the hard disk ahead of the CD-ROM on a completely fresh disk with no OS on it yet. Check the Hardware tab for the CD/DVD drive, and confirm boot order under Options → Boot Order.

Installer can't reach the network / mirror selection fails — Usually a bridge or firewall issue rather than anything wrong with Debian. Double-check the VM's network device is attached to the right bridge, and that the bridge itself has a route to the internet.

Black screen on console — Sometimes the default display type doesn't render well over noVNC. Shut the VM down, go to Hardware → Display, and switch to Serial terminal 0 if you're stuck on a blank screen, or try SPICE for a smoother experience if you're connecting with a SPICE client.

Troubleshooting

VM boots straight back into the Debian installer after finishing setup? The ISO probably wasn't ejected. Stop the VM, go to Hardware, click the CD/DVD row, and set it to Do not use any media, then start the VM again.

Guest agent shows as not running in the Proxmox Summary tab even after you installed it? Three things to check, in order: is the package actually installed (dpkg -l | grep qemu-guest-agent), is the service active (systemctl status qemu-guest-agent), and did you fully stop/start the VM after enabling the agent option in Proxmox, not just reboot the guest.

VM feels sluggish on disk-heavy tasks? Confirm the disk controller is VirtIO SCSI single rather than the default IDE emulation some older configs still carry over from cloning, and that IO thread is enabled on the disk under the Hardware tab.

Best Practices

Take a snapshot before any major apt full-upgrade, especially one that touches the kernel. It costs a few seconds and saves you from rebuilding a VM from scratch if an upgrade goes sideways.

If you find yourself doing this same install more than two or three times, stop and build a Debian cloud-init template instead — it turns a 15-minute manual install into a 30-second clone. That's really a separate topic, but it's worth knowing the option exists once this manual process starts feeling repetitive.

Keep a naming convention for VM IDs if you're running more than a handful — something like 200s for infrastructure VMs, 300s for application VMs — so you're not squinting at a flat list of "VM 214" trying to remember what it does.

Frequently Asked Questions

Do I need the full Debian DVD image, or is netinst enough?

Netinst is enough for almost everyone. It only ships the installer itself; everything else downloads during setup, which also means you're getting current package versions rather than whatever was frozen on the disc image.

Should I use a Debian VM or an LXC container instead?

If the software you're running needs its own kernel, kernel modules, or a full init system, use a VM. For a single lightweight service — a web server, a DNS resolver — an LXC container uses less overhead. This guide covers the VM route because it's the more flexible default when you're not sure yet.

Can I resize the disk after installation?

Yes. Resize it from the VM's Hardware tab in Proxmox, then extend the partition and filesystem from inside the guest with tools like growpart and resize2fs. Shrinking is much riskier and generally not worth attempting.

Does Debian need TPM or Secure Boot settings like a Windows VM does?

No. TPM and UEFI Secure Boot are Windows 11 requirements. A standard Debian install boots fine with SeaBIOS and no virtual TPM device at all.

Is Debian a good choice for running Docker?

Yes, it's a common choice specifically because of how stable and lightweight it is. Install Docker from Docker's own APT repository rather than Debian's, since Debian's packaged version tends to lag behind by a fair margin.

Conclusion

None of this is complicated once you've done it once — download the ISO, click through a wizard that's mostly sensible defaults, answer a handful of installer questions, and install one small package at the end. What you end up with is a VM that's genuinely low-maintenance: slower moving, lighter on resources, and built from the same base Proxmox itself trusts. For anything you want to set up and not think about again for a year, that's a good trade.