Arranque el Proveedor Simplificado

Arranque desde el ISO Proveedor Simplificado

  • Si usted está usando dispositivos físicos como una unidad CD-ROM:

    • Copie el Simplified Provisioner ISO descargado a un CD-ROM

    • Utilice el CD-ROM para arrancar el dispositivo IoT dedee él.

  • Si está usando Máquinas Virtuales, puede usar el comando virt-install para arrancar desde el Simplified Provisioner ISO.

    # virt-install --connect qemu:///system \
                   --name "fedora-iot-device" \
                   --os-variant "fedora-40" \
                   --boot uefi,loader.secure=false \
                   --vcpus 1 --memory 3072 \
                   --network network=default,model=virtio \
                   --disk pool=default,size=30 \
                   --cdrom Fedora-IoT-provisioner-40.*.iso

Arrancar Simplified Provisioner desde un Dispositivo Flash USB

  • Copie el archivo de imagen ISO al dispositivo flsh USB (Necesitará un dispositivo flash USB de al menos 8 Gb)

  • Conecte el dispositivo flsh USB al puerto del ordenador que desea arrancar.

  • Arrancar el dispositivo desde la unidad flash USB.

Arranca el Proveedor Simplificado desde el Arranque HTTP UEFI

  • Copia el contenido del ISO Proveedor Simplificado a un directorio

    mount Fedora-IoT-provisioner-40.*.iso /mnt
    cp -r /mnt Fedora-40-IoT-Simplified-Provisioner
    cd Fedora-40-IoT-Simplified-Provisioner
  • Modifica el archivo grub.cfg dentro del directorio EFI/BOOT y sustituye todas las instancias de linux y initrd por linuxefi y initrdefi respectivamente.

    sed -i -e 's|linux /|linuxefi /|' \
           -e 's|initrd /|initrdefi /|' \
           EFI/BOOT/grub.cfg
  • Utilice un Servidor HTTP para servir el contenido sobre la red, p.e.:

    python3 -m http.server 9080
    firewall-cmd --add-port=9080/tcp
  • La URL correcta para realizar UEFI HTTPBoot depende en la arquitectura ISO (x86_64 o aarch64)

    • Para el hardware x86_64 el HTTP URL correspondiente del archivo EFI/BOOT/BOOTX86.EFI será utilizado para arrancar (p.e. http://192.168.122.1: 9080/EFI/BOOT/BOOTX86.EFI)

    • Para el hardware aarch64`el HTTP URL correspondiente del archivo `EFI/BOOT/BOOTAA64.EFI será utilizado para arrancar (p.ej., http://192.168.122.1:9080/EFI/BOOT/BOOTAA64.EFI)

Arrancando Servidores Físicos

  • Si utilizan un servidor físico por favor compruebe el manual o Interfaz IU de Gestión para ver si el sistema admite UEFI HTTPBoot y sigue los pasos dentro del manual de arranque manualmente o en una manera automática desde la URL de arranque (vea más adelante)

Arrancar Máquinas Virtuales

  • Utilice la instrucción virt-install (o cualquier otra herramienta que admita arrancar MVs UEFI) para arrancar una MV. P.e.:

    virt-install --connect qemu:///system \
                 --name "fedora-iot-device" \
                 --os-variant "fedora-40" \
                 --boot uefi,loader.secure=false \
                 --vcpus 1 --memory 3072  \
                 --network network=default,model=virtio \
                 --disk pool=default,size=30 \
                 --import
  • Presione la tecla "[Esc]" repetidamente para entrar en el interfaz de gestión UEFI

  • Seleccione "Gestor de Dispositivo" y pulse "[Intro]"

  • Seleccione "Listado de Dispositivo de Red" y presione "[Intro]"

  • Seleccione la dirección MAC correspondiente al interfaz que desea utilizar para realizar HTTPBoot de UEFI y pulse "[Intro]"

  • Seleccione "Configuración de Arranque HTTP" y presione "[Intro]"

  • Seleccione "URI de Arranque" y presione "[Intro]"

  • Introduzca la URL HTTPBoot (vea arriba) (p.ej.: http://192.168.122.1:9080/EFI/BOOT/BOOTX86.EFI) y presione "Intro]"

  • Presione la tecla "[F10]" para guardar los cambios y después presione "[Y]" para configurar la acción

  • Presione "[Esc]" cuatro veces hasta que vuelva a la pantalla principal

  • Seleccione "Gestor de Arranque"

  • Seleccione "UEFI HTTP" y pulse "[Intro]"

  • La MV realizaría el UEFI HTTPBoot.

También es posible realizar los mismos pasos dentro de una manera automatizada modificando las vars UEFI tras crear la máquina virtual. Para eso necesitaremos instalar los paquetes qemu-img y python3-virt-firmware:

dnf install -y python3-virt-firmware qemu-img
  • Crea una máquina virtual unificada y detenida (asegúrese que admita UEFI), p.ej.:

    virt-install --connect qemu:///system \
                 --name "fedora-iot-device" \
                 --os-variant "fedora-40" \
                 --boot uefi,loader.secure=false \
                 --vcpus 1 --memory 3072  \
                 --network network=default,model=virtio \
                 --disk pool=default,size=30 \
                 --import --noautoconsole --noreboot
  • Conecte el QCOW2 conteniendo las variables UEFI de MV a un disco NBD tal que podamos modificarlos en su lugar:

    modprobe nbd
    qemu-nbd --connect /dev/nbd0 /var/lib/libvirt/qemu/nvram/fedora-iot-device_VARS.qcow2
  • Utilice la herramienta virt-fw-vars para modificar las variables UEFI y configurar la MV para arrancar desde el HTTP URL, p. ej.:

    virt-fw-vars --input /dev/nbd0 --set-boot-uri http://192.168.122.1:9080/EFI/BOOT/BOOTX64.EFI
  • Desconecte el dispositivo NBD:

    qemu-nbd --disconnect /dev/nbd0
  • Arranque la MV:

    virsh --connect qemu:///system \
          start fedora-iot-device
  • La MV realizaría un UEFI HTTPBoot desde el URL configurado