Ejecutando Proxmox VE en Debian para NICs i226
1. Descripción general de la solución
Esta solución está diseñada para desplegar un entorno de virtualización Proxmox VE en la plataforma ZimaBoard 2 con NICs Intel de la serie i226. El objetivo es resolver el problema de desreferencia de puntero nulo en el controlador de NIC provocado por la gestión de energía PCIe ASPM en los núcleos de Linux de versión alta, evitando así el pánico del núcleo y la falta de respuesta del sistema.
- Plataforma de hardware: ZimaBoard 2
- Versión de software: Debian 12.8.0
- Entorno de red: Se recomienda utilizar una conexión por cable durante todo el proceso. Prepare la información de la subred del enrutador (ejemplo de subred en esta guía:
10.0.0.1/16). - Objetivo principal: Resolver el conflicto de gestión de energía ASPM y el problema de pánico del núcleo (Kernel Panic) de la NIC i226 bajo núcleos de Linux de versión alta, y construir un entorno de virtualización estable.
- Conocimientos previos necesarios: Cuando se habilita PCIe ASPM (especialmente L1 Substates) en la NIC Intel i226-V, a menudo se produce una desreferencia de puntero NULL en el controlador igc durante eventos de enlace físico arriba/abajo, recargas del controlador o renegociación de enlace, lo que resulta en pánico del núcleo o congelamiento del sistema. Esta solución adopta un modelo de despliegue “Base Debian + Núcleo PVE”, limitando y alineando el entorno de gestión de energía y firmware antes de introducir el núcleo Proxmox, logrando una mayor compatibilidad de hardware y flexibilidad de ajuste.
Pasos clave de operación
- Instalar Debian 12.8: ISO de instalación de red, usar todo el disco, arranque UEFI.
- Desactivar ASPM: Editar
/etc/default/grub, añadirpcie_aspm=offaGRUB_CMDLINE_LINUX_DEFAULT, ejecutarupdate-gruby reiniciar. - Configuración básica: Cambiar a espejos nacionales, instalar
firmware-intel-misc; configurar temporalmente la IP y probar la conectividad. - Preparar Proxmox: Configurar
/etc/hosts, agregar el repositorio sin suscripción de Proxmox y la clave GPG. - Instalar Proxmox:
apt install proxmox-ve postfix open-iscsi; si hay conflictos conpve-firmware, ejecutardpkg --force-overwritepara forzar la instalación, luegoapt install -fpara solucionar dependencias. - Configurar red puenteada: Editar
/etc/network/interfaces, agregar la NIC física (por ejemplo,enp1s0) al puentevmbr0, configurar IP/gateway estático y reiniciar la red. - Verificar acceso: Después del reinicio, acceder a
https://<IP>:8006.
2. Pasos de operación
Todos los comandos a continuación se ejecutan bajo el sistema Debian con privilegios de root o sudo.
2.1 Grabar e instalar Debian
Para garantizar la estabilidad y controlabilidad del sistema base, esta solución usa Debian 12.8 como base.
Descargar recursos de software
- Debian 12.8.0: https://chuangtzu.ftp.acc.umu.se/cdimage/archive/12.8.0/amd64/iso-cd/debian-12.8.0-amd64-netinst.iso
- Herramienta de grabación balenaEtcher: https://etcher.balena.io/
Crear una unidad USB de arranque
- Inserte una unidad USB de al menos 8GB.
- Abra balenaEtcher, seleccione la unidad USB como dispositivo de destino.
- Haga clic en “Flash from file”, localice el archivo descargado
debian-12.8.0-amd64-netinst.iso; el software seleccionará automáticamente el disco. - Haga clic en “Flash!” y espere a que termine, luego expulse de manera segura la unidad USB.
Arranque en BIOS
- Inserte la unidad USB preparada en un puerto USB de la ZimaBoard.
- Encienda y presione repetidamente la tecla F11 (algunas máquinas pueden usar ESC o Delete, pero la ZimaBoard 2 por defecto usa F11).
- En el menú de arranque, seleccione la entrada de la unidad USB con “UEFI” en su nombre.
Resumen del procedimiento de instalación
Después de ingresar a la pantalla de bienvenida azul de Debian, siga estas pautas:- Modo de instalación: Se recomienda seleccionar Instalación Gráfica (más amigable para principiantes).
- Idioma y región: Elija “Inglés” o su idioma preferido; selección de teclado “Inglés estadounidense”.
- Particionamiento de disco: Seleccione “Usar todo el disco”, elija la eMMC integrada de la ZimaBoard o SSD instalado, y luego seleccione “Todos los archivos en una partición” como esquema de particionamiento.
2.2 Depuración de la NIC en un sistema Debian limpio
Desactivar PCIe Advanced Power Management (ASPM)
nano /etc/default/grub
Modifique la línea:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_iommu=on iommu=pt pcie_aspm=off"
Guarde y salga, luego actualice GRUB y reinicie:
update-grub
rebootCambiar a servidores DNS más estables (temporalmente)
nano /etc/resolv.conf
Agregue:
nameserver 223.5.5.5
nameserver 114.114.114.114Instalar firmware
# Limpiar caché
rm -rf /var/lib/apt/lists/*
# Actualizar e instalar firmware de la NIC Intel
apt update
apt install firmware-intel-misc -yConfigurar temporalmente la interfaz de la NIC
En este ejemplo, el nombre de la interfaz esenp8s0y la dirección del enrutador es10.0.0.1.# Limpiar configuraciones de IP existentes
ip addr flush dev enp8s0
# Apagar la interfaz
ip link set enp8s0 down
# Configurar IP y gateway
ip addr add 10.0.1.100/16 dev enp8s0
ip route add default via 10.0.0.1
# Encender la interfaz
ip link set enp8s0 upProbar conectividad
ping -I enp8s0 8.8.8.8
Si tiene éxito, la NIC está funcionando correctamente.
2.3 Instalar el núcleo de Proxmox VE
Configurar el archivo de hosts
# Confirmar el nombre de host (en este ejemplo, el nombre de host es "debian")
hostname
nano /etc/hostsAsegúrese de que el archivo contenga:
127.0.0.1 localhost
10.0.1.21 debian.proxmox.com debianAgregar el repositorio de software de Proxmox
# Instalar curl si no está presente
apt update && apt install curl -y
# Agregar la clave GPG
curl -fSsL http://download.proxmox.com/debian/proxmox-release-bookworm.gpg -o /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
# Editar pve-no-subscription.list
nano /etc/apt/sources.list.d/pve-no-subscription.list
# Agregar la siguiente línea
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscriptionInstalar el núcleo PVE y los componentes principales
# Actualizar e instalar una actualización completa
apt update
apt full-upgrade -y
# Instalar paquetes principales de Proxmox VE
apt install proxmox-ve postfix open-iscsi -y- Durante la instalación, si aparece una ventana de configuración de Postfix, presione Tab para seleccionar “Solo local” y continúe.
Debido a que previamente instalamos los paquetes de firmware de Debian, puede haber conflictos de archivos con
pve-firmware. Sobrescríbalos:dpkg -i --force-overwrite /var/cache/apt/archives/pve-firmware_*.deb
# Solucionar problemas de dependencias restantes e instalar el núcleo si es necesario
apt install -f
apt install proxmox-veDespués de la instalación, reinicie y verifique la versión del núcleo:
reboot
# Después del reinicio
uname -aSi la salida muestra algo como
6.8.x-pve, la instalación fue exitosa.
2.4 Configurar la red
Durante la instalación de proxmox-ve, el sistema elimina las herramientas originales de gestión de redes e introduce el modelo de red de Proxmox. Por lo tanto, necesitamos configurar manualmente la interfaz principal.
Edite el archivo de interfaces:
nano /etc/network/interfaces |
Suponiendo que la NIC física sea enp1s0, y queramos una IP estática 10.0.1.21/16 con gateway 10.0.0.1, modifique el archivo de la siguiente manera:
iface enp1s0 inet manual |
Guarde y salga, luego reinicie la red:
systemctl restart networking |
2.5 Verificación y acceso a la interfaz web
Abra un navegador web y navegue a:
https://10.0.1.21:8006 |
Haga clic en “Advanced” -> “Proceed to 10.0.1.21 (unsafe)”, luego inicie sesión con las credenciales de root del sistema Debian. Ahora debería tener acceso a la interfaz web de Proxmox VE.
3. Resolución de problemas
P: ¿Las fuentes de descarga oficiales son lentas o inalcanzables?
- Debian: Visite la lista oficial de espejos, elija un espejo de su país o región, y reemplace
deb.debian.orgysecurity.debian.orgen el tutorial con el dominio de ese espejo. - Proxmox: No hay lista oficial de espejos para Proxmox, pero puede usar espejos de terceros bien conocidos o buscar “proxmox mirror”. Reemplace
download.proxmox.comen el tutorial con la dirección del espejo.
Después de actualizar las fuentes, ejecute apt update para aplicar los cambios.