5 votos

¿Cómo puedo pasar argumentos del kernel a través de PXE para Ubuntu-como OS ISO del instalador?

Estoy en una situación difícil en la que necesito para realizar una instalación remota de un QuantaStor (basada en Ubuntu - siseo) dispositivo en hardware con limitado fuera-de-banda de la funcionalidad de acceso.

El sistema de destino es un HP ProLiant DL180 G6 servidor, que tiene una licencia de Lights-Out LO100i remoto KVM. Este es un gran paso hacia abajo desde la ILO3 o ILO4 procesadores de gestión. El reto con este hardware es que el LO100i virtual de los medios de comunicación las funciones no son fiables. Como Java versiones han progresado, este OIT se ha convertido en menos útil. Ahora, no puedo conseguir que el sistema de arranque a través de los medios de comunicación a distancia, incluso a pesar de que esta función ha funcionado bien en el pasado.

Así que mi siguiente paso fue el intento de arranque de PXE este servidor utilizando el QuantaStor de imagen ISO. Curiosamente, hay una serie de versiones contradictorias de cómo uno puede de arranque de PXE una imagen ISO directamente sin encadenamiento de los gestores de arranque, etc. Después de algunos experimentos, me di cuenta de que podía arrancar un ISO usando memdisk a través del servidor PXE. Puedo controlar el DNS y DHCP en este entorno, así que me fui a la ruta estándar de la modificación de la /etc/dhcpd.conf archivo de configuración para reflexionar:

# Begin temporary PXE boot
allow booting;
allow bootp;
option option-128 code 128 = string;
option option-129 code 129 = text;
next-server 172.30.27.5;
filename "/pxelinux.0";
# End temporary PXE boot

Para mi PXE config, me /tftpboot/pxelinux.cfg/default para:

default menu.c32
prompt 0
timeout 300
ONTIMEOUT local

MENU TITLE PXE Menu

LABEL QuantaStor
        MENU LABEL QuantaStor
        KERNEL memdisk
        APPEND iso initrd=images/osn_quantastor_v3.8.2.5441.iso raw

En conjunto, estas características me permitió conseguir el sistema para iniciar el arranque de la ISO. Por desgracia, el control remoto KVM console produjo el siguiente confusa salida de vídeo:

enter image description here

La instalación de la aplicación la pantalla debe tener este aspecto:

enter image description here

Varios reinicios y después de algunos conceptos básicos de la investigación, descubrí que el LO100 remoto KVM comparte esta framebuffer síntoma con algunos de Supermicro IPMI tablas. La solución es pasar vga16fb.modeset=0 a los argumentos de arranque. Esto es exclusivo de Ubuntu (suspiro).

¿Cómo puedo obtener esta declaración en el argumento de la línea de la PXE arrancar la ISO?

Donde debo agregar la instrucción?

Los intentos de hacerlo en el "ANEXAR" línea de la /tftpboot/pxelinux.cfg/default que no parece ayudar. El Ubuntu sugerencias sugerir la adición de la línea presionando F6 en la ISO pantalla de arranque. Mi control remoto de KVM es distorsionado por ese punto, y no soy capaz de añadir manualmente.

Alguna idea?


Actualización:

He extraído la ISO y modificado el isolinux.cfg archivo para cambiar el instalador del soporte de frame buffer en el núcleo ANEXAR línea. El sistema se inicia y el instalador aparece al trabajo... excepto que ahora me aparece un error sobre el cd-ROM. Estoy asumiendo mi PXE método es incorrecta.

¿Cuál es la forma correcta de usar un ISO a través de PXE en este contexto?

enter image description here

5voto

Shane Madden Puntos 81409

La alteración de la append con los parámetros deseados definitivamente no ayuda de PXELINUX en esta configuración, como el disco de arranque tiene su propio ISOLINUX el manejo de la de arranque del kernel.

Dos maneras de solucionar esto.

La opción más simple: extraer la ISO, modificar el isolinux/isolinux.cfg archivo append línea con la necesaria argumentos de arranque, re-pack de la ISO. Han PXELINUX de la cadena para la modificación de la ISO.

El más complejo (pero posiblemente mejor, ya que elimina el encadenamiento) opción: en lugar de usar memdisk para el arranque de la ISO, directamente de arranque de la misma manera que la ISO ISOLINUX estaría haciendo.

Edit: más claro los pasos para arrancar el SO dentro de la ISO:

  • Extraer el ISO a /tftpboot/quantastore
  • Copie el archivo preseed/quantastor.seed desde que se extrae la ISO a la web de la root de un servicio HTTP que se ejecutan en el servidor PXE para que esté disponible en http://172.30.27.5/quantastor.seed
  • Cambiar su pxelinux.cfg/default archivo para arrancar directamente el contenido extraído de la ISO. La eliminación de la actual LABEL QuantaStor y reemplazar con:

    LABEL QuantaStor
      menu label QuantaStor
      kernel quantastor/install/vmlinuz
      append preseed/url=http://172.30.27.5/quantastor.seed locale=en_US.UTF-8 keyboard-configuration/layoutcode=us initrd=quantastor/install/initrd.gz ramdisk_size=16384 nodmraid acpi=off root=/dev/ram vga16fb.modeset=0 rw quiet
    

Esto debe hacerse de una instalación correcta para la mayor parte, pero los comandos que QuantaStor se ejecuta al final de la instalación fallará, ya que están buscando directamente /cdrom. De la quantastor.seed archivo:

 d-i preseed/late_command string mkdir -p /target/lib/plymouth/themes/quantastor; \
 chroot /target echo "creating package dirs, setting up splash screens" >> /var/log/qs_install.log; \
 mkdir /target/qs-pkgs; \
 mkdir -p /target/qs-pkgs/drivers; \
 mkdir -p /target/opt/osnexus/quantastor/raid-tools; \
 cp /cdrom/finisher/raid-tools/* /target/opt/osnexus/quantastor/raid-tools; \
 cp /cdrom/finisher/deb/*.deb /target/qs-pkgs; \
 cp /cdrom/finisher/qs_preseed.sh /target/qs-pkgs; \
 cp /cdrom/finisher/drivers/* /target/qs-pkgs/drivers; \
 cp /cdrom/finisher/splash/* /target/lib/plymouth/themes/quantastor; \
 cp /cdrom/finisher/osnexus.gpg /target/qs-pkgs; \
 cp /cdrom/finisher/osnexus.list /target/etc/apt/sources.list.d/osnexus.list; \
 cp /cdrom/finisher/rc.local /target/etc/rc.local; \
 cp /cdrom/finisher/qs_runonce.sh /target/etc/qs_runonce.sh; \
 chroot /target /qs-pkgs/qs_preseed.sh

Probablemente sólo tiene que ejecutar esas cosas manualmente después de la instalación se completa la primera vez (la eliminación de la /target cosas) - si está trabajando aparte de eso, podemos adaptar estos comandos para poner sus cosas en su lugar, sin depender del CD en la unidad.

2voto

Michael Hampton Puntos 88271

Tipo "a ciegas"?

Golpear Entrar tan pronto como el (ilegible) selección de idioma aparece, ya que se agota rápidamente.

A continuación, pulsa F6, Esc, escriba vga16fb.modeset=0 y pulse Enter.

Probablemente faltan los tenga que pulsar Esc a la derecha después de F6.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: