# Instalación de pfSense en Proxmox VE: Resolución del error "running without device atpic requires a local apic"

- Link: https://binariocero.com/linux/instalacion-de-pfsense-en-proxmox-ve-resolucion-del-error-running-without-device-atpic-requires-a-local-apic
- Published: 2025-07-05T08:37:34+02:00
- Author: Juan José Fernández Durán

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

## Objetivo

Este artículo tiene como objetivo guiar la instalación exitosa de **pfSense** en
una máquina virtual (VM) de **Proxmox VE**, abordando específicamente el error:

    ```wp-block-preformatted
    running without device atpic requires a local apic
    ```

Este mensaje suele presentarse durante la carga del sistema operativo basado en 
FreeBSD (como pfSense), especialmente en entornos virtualizados donde la configuración
del hardware virtual no satisface los requisitos del kernel.

## Descripción del problema

Durante el arranque de pfSense en una VM de Proxmox, el sistema puede mostrar el
mensaje de error:

    ```wp-block-preformatted
    running without device atpic requires a local apic
    ```

Esto significa que el sistema no puede continuar porque ha sido configurado para**
no usar el controlador de interrupciones legacy (ATPIC)**, pero **tampoco tiene 
habilitado un Local APIC**, que es el controlador moderno de interrupciones.

### Conceptos clave:

 * **ATPIC (8259A PIC)**: Antiguo controlador de interrupciones usado en arquitecturas
   x86.
 * **Local APIC (Advanced Programmable Interrupt Controller)**: Sistema moderno 
   de gestión de interrupciones presente en procesadores actuales.
 * **FreeBSD**: pfSense está basado en este sistema, el cual puede desactivar explícitamente`
   atpic` si detecta un entorno moderno.

## Causa técnica

Este error se presenta cuando la VM:

 * Desactiva el **controlador de interrupciones antiguo** (ATPIC), lo cual es común
   en sistemas modernos.
 * Pero no dispone del **Local APIC habilitado** en el entorno de virtualización,
   lo que impide al kernel manejar interrupciones correctamente.

## Solución en Proxmox VE

### Opción 1: Configuración desde la interfaz gráfica (GUI)

 1. **Apagar la VM** desde el panel de Proxmox.
 2. Ir al menú **"Hardware"** de la VM.
 3. Entrar en **"Procesador"** y configurar:
 4.  * **Tipo de CPU**: `host` (recomendado) o una CPU moderna (`Broadwell`, `Haswell`,
       etc.).
 5. En el menú **"Opciones"**:
 6.  * **Tipo de BIOS**:
        - `SeaBIOS` si usas versiones de pfSense basadas en FreeBSD 12 o anterior.
        - `OVMF (UEFI)` para versiones modernas si la imagen lo soporta.
     * **Máquina**: Preferentemente `q35` o `i440fx`.

### Opción 2: Configuración vía consola

 1. Acceder al nodo Proxmox por SSH o desde la Shell web.
 2. Editar el archivo de configuración de la VM: 
    `nano /etc/pve/qemu-server/VMID.conf`
    Sustituir `VMID` por el ID real de tu VM.
 3. Verificar o añadir las siguientes líneas: 
    `machine: pc-i440fx-8.0 cpu: host` También
    puedes usar `q35` como valor de `machine` si lo prefieres.
 4. Guardar y cerrar el archivo.
 5. Iniciar nuevamente la VM.

## Recomendaciones adicionales

 * Asegúrate de estar utilizando una **imagen ISO oficial y reciente de pfSense**.
 * Si usas un ISO personalizado de FreeBSD o un kernel modificado, **no elimines
   el soporte a `device atpic`** sin confirmar que `apic` está funcional.
 * Puedes usar `-no-acpi` en entornos como QEMU puro, pero no es necesario en Proxmox.

## Conclusión

El error `"running without device atpic requires a local apic"` indica una configuración
de virtualización inadecuada para sistemas FreeBSD como pfSense. Afortunadamente,
se puede resolver fácilmente ajustando el tipo de CPU y la máquina virtual en Proxmox.
Siguiendo los pasos descritos, la instalación y ejecución de pfSense debería completarse
sin problemas.
