Esta guía describe cómo instalar Proxmox VE 9.x sobre una instalación mínima de Debian 13 (Trixie). Está orientada a entornos caseros y de laboratorio. Para producción, sigue la documentación oficial de Proxmox.
¿Alguna vez has querido montar tu propio servidor de virtualización pero te has encontrado con el instalador estándar de Proxmox y has sentido que te falta control sobre la base del sistema? A veces, la mejor forma de construir una infraestructura sólida es empezar desde abajo: una instalación limpia de Debian y construir Proxmox encima.
Esta guía es para ti si buscas un entorno de laboratorio o un servidor casero donde tú decidas exactamente qué paquetes se instalan y cómo se configura el sistema base. Vamos a transformar una instalación mínima de Debian 13 (Trixie) en una potente estación de virtualización con Proxmox VE 9.
Requisitos previos
Antes de lanzar el primer comando, asegúrate de tener lo siguiente:
- Sistema base: Debian 13 minimal (amd64) con red y acceso sudo
- Nombre de host configurado (FQDN recomendado)
- Actualizaciones aplicadas y reinicio si el kernel lo requiere
- Acceso root o usuario con sudo
1) Preparar el sistema
Lo primero es poner la casa en orden. Necesitamos que el sistema esté al día y que cuente con las herramientas necesarias para gestionar repositorios y certificados.
Actualiza el sistema y paquetes esenciales:
sudo apt update && sudo apt full-upgrade -y
sudo apt install -y curl gnupg lsb-release ca-certificates apt-transport-https
El siguiente paso es crítico: la identidad de tu servidor. Configura el hostname y /etc/hosts (asegúrate de ajustar pve01 y el dominio a tu propia red):
echo "pve01.example.lan" | sudo tee /etc/hostname
sudo hostnamectl set-hostname pve01.example.lan
cat <<'EOF' | sudo tee -a /etc/hosts
# Proxmox
192.168.1.10 pve01.example.lan pve01
EOF
Un detalle que muchos olvidan pero que Proxmox recomienda para evitar problemas de rendimiento es deshabilitar la swap:
sudo swapoff -a
sudo sed -i.bak '/\sswap\s/s/^/#/' /etc/fstab
Finalmente, asegúrate de que la hora sea exacta. En un entorno de virtualización, un desfase de reloj puede romper la autenticación y los logs:
sudo timedatectl set-timezone Europe/Madrid
sudo apt install -y systemd-timesyncd && sudo timedatectl set-ntp true
2) Repositorios Proxmox
Ahora que Debian está listo, necesitamos decirle dónde encontrar el software de Proxmox. Como estamos en un entorno de laboratorio, utilizaremos el repositorio pve-no-subscription.
Añade el repositorio para Proxmox 9 en Debian 13 (trixie):
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://enterprise.proxmox.com/debian/proxmox-release-trixie.gpg | sudo tee /etc/apt/keyrings/proxmox-release.gpg > /dev/null
echo "deb [signed-by=/etc/apt/keyrings/proxmox-release.gpg] http://download.proxmox.com/debian/pve trixie pve-no-subscription" | sudo tee /etc/apt/sources.list.d/pve-no-subscription.list
3) Instalar Proxmox VE
Con los repositorios configurados, es hora de la verdad. Actualizamos los índices e instalamos el corazón de nuestro hipervisor.
sudo apt update
sudo apt install -y proxmox-ve postfix open-iscsi
Ten en cuenta un par de cosas durante este proceso:
– Selecciona No configuration en Postfix si no tienes intención de enviar correos desde el host.
– El instalador puede intentar eliminar os-prober y otros paquetes; si te lo solicita, acepta para mantener la coherencia de Proxmox.
Una vez terminada la instalación, reinicia para que el nuevo kernel y los servicios entren en juego:
sudo reboot
4) Primer acceso Web UI
Tras el reinicio, ya no necesitarás la terminal para el día a día. Proxmox ofrece una interfaz web excelente. Accede vía navegador a:
- URL:
https://pve01.example.lan:8006 - Usuario:
root - Autenticación:
PAM(por defecto)
Nota: Es normal que el navegador te dé un aviso de certificado SSL no válido; es un certificado auto-firmado. Puedes continuar sin problemas. Si aparece un aviso de suscripción, puedes ocultarlo instalando el paquete alternativo de la comunidad o simplemente ignorarlo si estás en un entorno de pruebas.
5) Ajustes recomendados
Ya tienes el panel de control, pero para que tu laboratorio sea realmente eficiente, te recomiendo realizar los siguientes ajustes:
- Actualiza el sistema desde la propia
Shellde la Web UI o mediante terminal. - Configura
Datacenter → Storagesegún tus discos (LVM-Thin, ZFS, NFS, CIFS). - Asegúrate de que
open-iscsiesté activo para el almacenamiento remoto:
sudo systemctl enable --now iscsid
- Si decides usar ZFS y tu RAM es limitada, ajusta el ARC para que no consuma todo el sistema:
echo "options zfs zfs_arc_max=$((4*1024*1024*1024))" | sudo tee /etc/modprobe.d/zfs.conf
sudo update-initramfs -u
- Configuración de Red: Si tus puentes de red (
vmbr0) no se crearon automáticamente, puedes configurarlos. Aquí tienes un ejemplo usandosystemd-networkd:
cat <<'EOF' | sudo tee /etc/systemd/network/10-ens18.network
[Match]
Name=ens18
[Network]
Bridge=vmbr0
EOF
cat <<'EOF' | sudo tee /etc/systemd/network/20-vmbr0.netdev
[NetDev]
Name=vmbr0
Kind=bridge
EOF
cat <<'EOF' | sudo tee /etc/systemd/network/21-vmbr0.network
[Match]
Name=vmbr0
[Network]
Address=192.168.1.10/24
Gateway=192.168.1.1
DNS=1.1.1.1 8.8.8.8
EOF
sudo systemctl restart systemd-networkd
Posibles fallos o cambios necesarios (ifupdown: /etc/network/interfaces)
En Proxmox es habitual gestionar la red con el método clásico ifupdown, editando /etc/network/interfaces. Si tu sistema no usa systemd-networkd o prefieres el método tradicional, estos ejemplos te serán de gran ayuda.
- Primero, asegúrate de permitir archivos adicionales:
sudo mkdir -p /etc/network/interfaces.d
printf "source /etc/network/interfaces.d/*\n" | sudo tee -a /etc/network/interfaces >/dev/null
- Ejemplo 1: Interfaz física en modo manual + puente
vmbr0con IP estática:
auto lo
iface lo inet loopback
# Interfaz física sin IP; la IP va en el bridge
auto eno1
iface eno1 inet manual
# Bridge principal para VMs/CTs
auto vmbr0
iface vmbr0 inet static
address 192.168.1.10/24
gateway 192.168.1.1
bridge-ports eno1
bridge-stp off
bridge-fd 0
- Ejemplo 2: Bonding 802.3ad (LACP) sobre dos NICs y bridge encima:
# Bond LACP
auto bond0
iface bond0 inet manual
bond-slaves eno1 eno2
bond-miimon 100
bond-mode 802.3ad
bond-xmit-hash-policy layer3+4
lacp-rate 1
# Bridge con IP sobre el bond
auto vmbr0
iface vmbr0 inet static
address 192.168.1.10/24
gateway 192.168.1.1
bridge-ports bond0
bridge-stp off
bridge-fd 0
- Opcional: Bridge consciente de VLANs (gestión sin IP o con IP en una VLAN):
# Bridge VLAN-aware (sin IP)
auto vmbr0
iface vmbr0 inet manual
bridge-ports bond0
bridge-stp off
bridge-fd 0
bridge-vlan-aware yes
# Interfaz VLAN para la gestión (ej. VLAN 10)
auto vmbr0.10
iface vmbr0.10 inet static
address 192.168.10.10/24
gateway 192.168.10.1
- Para aplicar los cambios y verificar:
sudo ifreload -a || sudo systemctl restart networking
ip -br a
bridge link
💡 Consejos de resolución de problemas:
– Verifica nombres de interfaz (ej.ip -br a), pueden variar (ens18,enp3s0, etc.).
– Comprueba que no haya dos puertas de enlace simultáneas o DHCP activo en la misma red.
– Si usas LACP, configura el puerto del switch como LAG/802.3ad y que todos los miembros del bond coincidan.
– Evita conflictos con NetworkManager: deshabilítalo si gestiona las mismas NICs (systemctl disable --now NetworkManager).
6) Limpieza del repositorio enterprise (opcional)
Para evitar que el sistema se queje de que tienes el repositorio Enterprise activado sin tener una suscripción válida, ejecuta lo siguiente:
sudo sed -i.bak 's/^deb /# deb /' /etc/apt/sources.list.d/pve-enterprise.list || true
sudo apt update
7) Backup y snapshots
No seas el administrador que solo se acuerda de los backups cuando algo falla.
- Configura
Datacenter → Backupcon un almacenamiento local o remoto (NFS/SMB). - Realiza un
backupmanual y prueba la restauración de una VM de prueba para asegurar que todo funciona. - Pro-tip: Habilita el
Guest Agenten tus máquinas virtuales para permitir que Proxmox gestione mejor el apagado y la información del sistema operativo invitado.
8) CLI útil
Cuando la interfaz web no sea suficiente, ten estos comandos a mano:
# Estado de clúster y servicios
pveversion -v
systemctl status pvedaemon pve-cluster pveproxy
# Discos y ZFS
lsblk
zpool status
# Redes
ip -br a
bridge link
# Gestionar repos
proxmox-backup-manager datastore list || true
9) Referencias
Si necesitas profundizar más, te dejo la documentación esencial:
- Documentación oficial: https://pve.proxmox.com/wiki/Main_Page
- Repos Proxmox: https://enterprise.proxmox.com/debian/pve
- Guía Proxmox 9 en Debian: https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_13_Trixie
¡Y listo! Ya tienes un hipervisor profesional corriendo sobre una base Debian limpia. Ahora, a desplegar contenedores y máquinas virtuales.
