Erstellen Sie einen GRUB-Eintrag zum Booten in CentOS-Installationsmedien

Erstellen Sie einen GRUB-Eintrag zum Booten in CentOS-Installationsmedien

Normalerweise laden Sie bei der Installation von CentOS 7 die ISO-Datei herunter, schreiben sie auf einen USB-Stick und booten sie. Ich habe jedoch ein einzigartiges Szenario, bei dem ich die CentOS 7-Installationsdateien auf einer Systempartition platzieren /boot/und einen benutzerdefinierten GRUB2Eintrag erstellen möchte, der in diese Umgebung booten kann. Dieser kann dann verwendet werden, um CentOS 7 auf demselben System zu installieren.

Ich weiß, das klingt albern, aber ich habe meine Gründe.

Nach einigen Recherchen versuche ich herauszufinden, wie das funktioniert. Folgendes sehe ich derzeit in meinem Kopf:

  1. GRUB2würde den CentOS 7-Kernel laden vmlinuzund initrd.img.
  2. Nachdem der Kernel initialisiert und in den Speicher geladen wurde , startet initrd.imgder Dienst.dracut-initqueue
  3. Die dracut-initqueueProzesse versuchen dann, das stage2Image zu laden, das die Installationslaufzeit enthält (in diesem Fall Anaconda).
  4. Schließlich wird der CentOS-Installationsprozess gestartet.

Also, um zu beginnen, ich...

  1. Habe die ISO-Datei heruntergeladen, gemountet und die Dateien und /images/pxeboot/vmlinuz( die meiner Meinung nach das Image enthalten) auf meine Partition kopiert./images/pxeboot/initrd.img/LiveOS/squashfs.imgstage2/boot/
  2. Der folgende Eintrag wurde hinzugefügt /etc/grub.d/40_custom.
menuentry "CentOS 7 Installation" {
set root=(hd0,msdos1)
linux   /centos7-install/vmlinuz initrd=initrd.img stage2=/centos7-install/squashfs.img
initrd  /centos7-install/initrd.img
}

Nachdem ich das oben Genannte getan habe, würde ich hoffen, dass ich zumindest Anaconda laden könnte, aber stattdessen wird es einfach mit der Meldung „dracut-initqueue timeout“ geladen. Leider hatte ich kein Glück, Protokolle zu finden, die genau darauf hinweisen, was schiefgelaufen ist.

Hat jemand zufällig eine Idee, wie man das anstellen könnte?

Antwort1

Ersetzen Sie die folgende Zeile

linux   /centos7-install/vmlinuz initrd=initrd.img stage2=/centos7-install/squashfs.img

mit

linux   /centos7-install/vmlinuz inst.repo=<source>

wo <source>kann http://host/patheine vollständige Kopie der Verzeichnisse und Dateien auf der vollständigen Installations-DVD sein. Optional können Sie Dateien aus dem "Boot"-ISO extrahieren und nur .treeinfoDateien aus dem "DVD"-ISO kopieren. Weitere Optionen (wie NFS) finden Sie imDokumentation.

Natürlich ist Netzwerkzugriff erforderlich, um diese Methode „wie sie ist“ zu verwenden.

verwandte Informationen