Instalación Kickstart desde USB - Ubicación Kickstart

12

Después de lograr obtener un ISO de Fedora para reconstruir con éxito (para una memoria USB) después de agregar un archivo kickstart ( /server/548405/ ), ahora tengo un problema con la ubicación del archivo kickstart en el medio USB .

Cuando esto se hace desde un CDROM, simplemente puede comenzar agregando este parámetro para arrancar:

linux ks=cdrom

Esto iniciará kickstart (siempre que el archivo kickstart se llame ks.cfg y esté en la raíz del disco).

Ahora, obviamente, esto será diferente para la unidad USB, así que, según mi investigación, supuse que esta línea haría el trabajo:

linux ks=hd:sdb1:/ks.cfg

Evidentemente esto no funciona. Recibo un error que me informa que esta unidad ya está montada y no se puede volver a montar.

EDITAR: Mensaje de error real:

mount: /dev/sdb1 is already mounted or /run/install/tmpmnt0 busy
Warning: Can't get kickstart from /dev/sdb1:/ks.cfg

Para probar que la sintaxis era correcta, coloqué el archivo kickstart en otra memoria USB y cargué el mismo comando para tomar ks.cfg de la nueva ubicación:

linux ks=hd:sdc1:/ks.cfg

Esto funciona (siempre que las memorias USB estén montadas en orden, arranque -> sdb1, kickstart -> sdc1). La instalación arrancará y completará la instalación sin problemas. Obviamente, tener que usar 2 pen drives es algo frustrante y poco confiable.

¿Hay alguna forma de evitar esto?

dooffas
fuente
Usted hizo intentarlo ks=cdrom, ¿verdad?
Michael Hampton
Sí, lo he hecho, pero no encuentra el archivo kickstart.
dooffas
¿Has probado linux ks = hd: sbd1 / ks.cfg?
Archemar
Los pasos descritos aquí son los que usé para construir mi llave USB.
Vitalii

Respuestas:

4

He intentado todo, pero solo esto parece funcionar: pon el ks.cfg dentro del initrd. Entonces, los pasos a continuación extraen initrd, agregan el ks.cfg allí y lo recrean. Probado con CentOS7

Primero monte la imagen .iso original en su PC y copie su contenido en tmp /

Luego,

#Keep the original file
cp -ai tmp/isolinux/initrd.img initrd.img.orig
mkdir irmod
cd irmod

#Extract initrd in irmod/
xz -d < ../tmp/isolinux/initrd.img | cpio --extract --make-directories --no-absolute-filenames

#Add the ks.cfg in there
cp ../tmp/ks.cfg .

# Recreate the initrd.img inside isolinux/
find . | cpio -H newc --create | xz --format=lzma --compress --stdout > ../tmp/isolinux/initrd.img

#cleanup
cd ..
rm -r irmod

# Add  ks=file:/ks.cfg to the boot parameters in isolinux.cfg. you can do it by hand, this is an example for our own isolinux.cfg
sed -s -i 's|ks=.*ks\.cfg ksdevice=link|ks=file:/k1.cfg|' ../tmp/isolinux/isolinux.cfg ../isolinux.cfg

Luego proceda a crear la imagen como de costumbre:

cd tmp/

imgname="inaccess-centos7-ks1-v1.iso"
xorriso -as mkisofs -R -J -V "CentOS 7 x86_64" -o "../${imgname}" \
        -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4  \
        -boot-info-table -isohybrid-mbr /usr/share/syslinux/isohdpfx.bin .
cd ..
sivann
fuente
Esto es muy parecido a lo que hice en el artículo vinculado (Reconstruir Fedora 19 ISO agregando Kickstart para la instalación USB). Gracias por su respuesta.
dooffas
7

Pude resolver esto haciendo lo siguiente:

  • Coloque el archivo kickstart en la parte superior del isolinuxdirectorio y asegúrese de que se llameks.cfg
  • mi isolinux.cfgarchivo se ve así:

    label linux
      menu label ^Install CentOS 7
      kernel vmlinuz
      append initrd=initrd.img inst.ks=hd:LABEL=CentOS\x207\x20x86_64:/isolinux/ks.cfg inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
    

El uso de la etiqueta de la unidad cuando se ks.cfghace referencia hace que la imagen iso resultante sea más portátil. (puede convertirse en una unidad USB de arranque)

Kelly Brasil
fuente
2

Mi método favorito es usar UUID, porque es estable.

Utilizo dos pendrive, primero con CentOS, segundo con kickstart. Después de guardar un kickstart en el segundo pendrive, verifico su UUID en Linux con el comando blkid: / dev / sdg1: UUID = "885E: 0BD1" TYPE = "vfat"

Y después de eso lo uso en la página de instalación: ks = hd: UUID = 885E: 0BD1: /ks.cfg

¡Realmente funciona!

Przemyslaw Tarnawski
fuente
Estable pero no portátil
Ricardo Cristian Ramirez
1

Debe apuntar a / sda1 porque cuando arranca desde USB sda es el USB, sdb es el primer disco duro, etc.

David Sarmiento
fuente
no, no siempre es así.
sivann
0

Ahora tiene una partición en el dispositivo USB del tamaño de la imagen ISO. Simplemente cree otra partición en la memoria USB usando el espacio de descanso, formatee y coloque allí sus archivos kickstart.

UPD: inténtalo fdisk, ya que partedparece no funcionar este caso.

UPD1: iso debe volverse a colocar con xorriso

UPD2: consulte /server//a/551307/134234

Veniamin
fuente
También he intentado esto, consulte mi otra publicación: serverfault.com/questions/549158
dooffas
@dooffas Lo vi, no tuvo suerte con gparted. ¿Realmente probaste fdisk? Volví a crear tu caso con lvm volume y al menos fdisk creó la segunda partición con éxito.
Veniamin
Intenté fdisk, sin embargo, no lee la tabla de particiones correctamente. Piensa que la partición que contiene la imagen de Fedora ocupa casi 8 GB, lo cual no es cierto. Parece que escribir la imagen de fedora en la unidad corrompe la tabla de particiones.
dooffas
@dooffas Lo siento, en mi laboratorio recreé iso con xorriso pero olvidé anotarlo. Por favor encuentre mis actualizaciones.
Veniamin
Esto no funciona. incluso después de crear particiones, el instalador monta todo el disco y no se pueden usar particiones.
sivann