Starten Sie das System von einem initrd neu, ohne eine Kernel-Panik zu verursachen

910
reox

Ich möchte einen Linux-Kernel über pxe boot starten, eine sehr kleine Initram laden, einige Jobs dort ausführen und die Maschine neu starten.

So sieht mein Init-Skript so aus:

#!/bin/sh -e # used for initramfs export PATH . /lib/debian-installer/init-debug debugshell "just booted"  mount /proc mount /sys /lib/debian-installer/start-udev  udhcpc  tftp -l - -r /srv/tftp/welcome_test -g 10.10.10.1 sleep 10  reboot 

Grundsätzlich habe ich das debian netinstaller-Skript kopiert und ein wenig geändert.

Das Problem ist jetzt, wenn ich neu starten will, bekomme ich diese Kernel-Panik:

Kernel Panic - not syncing: Attemted to kill init! 

Wie kann ich also einfach einen Neustart durchführen, nachdem ich meine Arbeit an der Maschine erledigt habe? oder muss ich ein separates Skript über init starten?

1

1 Antwort auf die Frage

0
reox

Okay, ich habe nur die Tatsache überwacht, dass ich noch keinen Init-Prozess erzeugt habe, also lief ich die ganze Zeit im Kernel-Modus ... seltsame Dinge passieren dort: D

also das Skript mit a einstellen

exec busybox init 

und erstellen Sie eine /etc/inittabRegel wie

::sysinit:/bin/bash /bin/reinstall.sh 

es funktioniert wirklich gut!