Lösung 1:
Ich konnte dies folgendermaßen lösen:
- Platzieren Sie die Kickstart-Datei am Anfang von
isolinux
Verzeichnis und vergewissern Sie sich, dass esks.cfg
heißt -
meine
isolinux.cfg
Datei sieht so aus: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
Verwendung der Laufwerksbezeichnung beim Verweis auf ks.cfg
macht das resultierende ISO-Image portabler. (kann in ein bootfähiges USB-Laufwerk umgewandelt werden)
Lösung 2:
Ich habe alles versucht, aber nur das scheint zu funktionieren:Legen Sie die ks.cfg in die initrd. Die folgenden Schritte extrahieren also initrd, fügen die ks.cfg dort hinzu und erstellen sie neu. Getestet mit CentOS7
Mounten Sie zuerst das ursprüngliche .iso-Image auf Ihrem PC und kopieren Sie seinen Inhalt unter tmp/
Dann
#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
Fahren Sie dann wie gewohnt mit dem Erstellen des Images fort:
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 ..
Lösung 3:
Meine bevorzugte Methode ist die Verwendung von UUID, weil sie stabil ist.
Ich verwende zwei Pendrives, zuerst mit CentOS, zweitens mit Kickstart. Nachdem ich einen Kickstart auf dem zweiten Pendrive gespeichert habe, überprüfe ich seine UUID in Linux mit dem Befehl blkid:/dev/sdg1:UUID="885E:0BD1" TYPE="vfat"
Und danach verwende ich es auf der Installationsseite:ks=hd:UUID=885E:0BD1:/ks.cfg
Es funktioniert wirklich!