Ein squashFS und eine initrd in einer einzigen Datei zusammenführen (PXE-Booten)

1395
sebastian nielsen

Ich habe eine Initrd und eine Cloop (SquashFS). Was ist der einfachste Weg, diese beiden Dateien in einer einzigen initrd-Datei zusammenzuführen, um das gesamte Image auf einmal per PXE-Boot zu starten, ohne einen Bootstrapping-Vorgang durchzuführen?

Natürlich wird es ein Live-Linux-System sein, also sollte es schreibgeschützt sein. Größenbeschränkungen spielen keine Rolle, da das Zielsystem über viele RAM verfügt und das Netzwerk, über das es booten soll, schnell ist.

0

1 Antwort auf die Frage

0
Pat

Was Sie zu tun versuchen, ist kein guter Ansatz. es wird eine sicherlich zu große TFTP-Übertragung erzwingen.

Es ist besser, wenn Sie die initrd modifizieren, um den SAMBA / NFS-Client zu aktivieren, oder sogar wget für eine HTTP-Übertragung verwenden, die Ihre squashfs-Datei beim Booten bringt.

Sie können sehen, wie dieser Ansatz von Serva verwendet wird (ich stehe mit Serva-Entwicklung in Verbindung), wenn PXE die meisten heute verfügbaren Live-Distributionen bootet / installiert.

http://vercot.com/~serva/an/NonWindowsPXE3.html

Sie müssen keine komplett neue initrd zusammenbauen, sondern nur eine ergänzende erstellen und die fehlenden Komponenten (falls vorhanden) und das entsprechend aktualisierte Init-Skript hinzufügen.

Ich verstehe, dass es eine große TFTP-Übertragung geben wird, aber ich hätte das lieber als einen 2-Schritt-Prozess. Der Grund ist, dass sich in der Schleife ein Authentifizierungsprozess befindet, bevor die PXE abschaltet. Es ist möglich, das TFTP-Abbild so zu definieren, dass nur autorisierte Computer oder Benutzer dieses abrufen können. Es ist jedoch nicht möglich, die Authentifizierungsdetails an den HTTP-Abruf zu übergeben, ohne den TFTP-Server stark zu ändern oder ein Bild pro Benutzer und Computer hochzuladen. Also möchte ich alles in einem Schritt machen. sebastian nielsen vor 9 Jahren 0
Wenn die TFTP-Übertragung je nach den Netzbedingungen groß wird (> ~ 800 MB), werden Probleme auftreten. Es spielt keine Rolle, dass Sie alles in einem einzigen Authentifizierungsschritt ausführen können, wenn die TFTP-Übertragungen häufig abbrechen. Vertrau mir! Ihr Design aus PXE-Sicht ist nicht gut. Pat vor 9 Jahren 0
Es ist nicht 800 MB. Es ist ein kleineres Bild, wie 200-300 MB. sebastian nielsen vor 9 Jahren 0
dann machen Sie "OK", erstellen Sie einfach eine ergänzende initrd, die die squashfs-Datei enthält, und laden Sie sie nach dem initrd in der Zeile "append" (siehe Serva). Pat vor 9 Jahren 0
Dann wird der PXE-Client die Authentifizierung im zweiten Schritt nicht weitergeben. Wenn Sie nach DSL schauen, haben sie eine initrd, die ALLES enthält, um das gesamte System einschließlich des Desktops in einer einzigen Datei zu starten. (dsl-4.4.10-initrd.iso), wobei sich das gesamte Dateisystem in einer initrd befindet, die als minirt24 bezeichnet wird. sebastian nielsen vor 9 Jahren 0
es gibt keinen zweiten Schritt; nur 2 TFTP-Transfers 2 initrd. Wenn Ihnen der 2-initrd-Ansatz nicht gefällt, wählen Sie 1 initrd. Viel Spaß beim Ändern des Init-Skripts. Ihr Authentifizierungssystem ist ein Durcheinander; was Sie zu tun versuchen, ist ein Durcheinander. Pat vor 9 Jahren 0
iPXE (http://ipxe.org) ist ein NPB mit http-Unterstützung. Es sind keine langsamen TFTP-Übertragungen mehr erforderlich, abgesehen von der anfänglichen Belastung von ipxe. NiKiZe vor 8 Jahren 0
iPXE ist kein Standard, es ist sehr fehlerhaft und wird nur teilweise von UEFI unterstützt. nicht wirklich eine gute Option. Pat vor 8 Jahren 0