Ich muss wissen, wie ich dies über di früh / Befehl oder di preseed / run zur Voreinstellung hinzufügen kann, um meinen Spiegel preseed.cfg
aus dem /proc/cmdline
Argument heraus zu setzen.
Wenn ich mache:
d-i preseed/run string ws/ubuntu.sh
#!/bin/sh
for x in `cat /proc/cmdline`; do
case $x in RPHOST*)
eval $x
d-i mirror/http/hostname string ${RPHOST}
d-i mirror/http/mirror string ${RPHOST}
d-i apt-setup/security_host string ${RPHOST}
;;
esac;
done
es schlägt fehl.
Es funktioniert gut in der CentOS Kickstart- %pre
Sektion, aber ich habe keine Ahnung, wie es über Debian / Ubuntu Preseeding gemacht werden soll.
d-i preseed/early_command
anstelle von verwendenrun
.run
tatsächliche Ausführung zur Debatte steht, kann diespreseed/late_command
einigen offenen Fehlern entsprechen. Wenn es also in 16.04 / 18.04 nicht richtig funktioniert, versuchen Sie es mitpreseed/early_command
.Es hört sich so an, als würden Sie versuchen, während eines (PXE?) - Starts einen beliebigen Wert an den Kernel zu übergeben und ihn dann während des Voreinstellens zu erkennen und darauf zu reagieren. Ich denke, es gibt vielleicht bessere Möglichkeiten, dies zu erreichen, aber ich müsste mehr über Ihr spezifisches Szenario wissen. Das Cobbler-Projekt fällt mir allerdings ein.
Unabhängig davon kann eine andere Möglichkeit, dies zu erreichen, darin bestehen, ein bedingtes Include zu verwenden, das auf dem Hostnamen oder der Cmdline basiert und eine Konfigurationsdatei mit den entsprechenden Spiegeleinstellungen enthält, da Include-Dateien Werte aus früheren Dateien überschreiben.
quelle