Netboot-OS-Installation.

Corvo
Beiträge: 13
Registriert: 18 Jul 2008, 09:37

Netboot-OS-Installation.

Beitrag von Corvo »

Hallo zusammen!

Ich wollte mich hier im Forum erkundigen, ob mir jemand kurz und prägnant den genauen Vorgang einer Betriebssystemsinstallation via Netboot erläutern kann?
In den Anleitungen werden immer Querverweise auf andere Opsi-Manuals gemacht. Dort beantworten sich - für mich jedenfalls - auch nicht immer alle offenen Fragen. Meine konkreten Anliegen:

- Wie lege ich ein Image mittels Opsi an und wie kann ich dieses dann via Netboot aufspielen?
- Geht das auch mit zB. Ghost-Images?
- Wo werden welche Scripte aufgerufen, wo müssen diese abgelegt werden (zB WindowsXP.py) und wie sehen die gegenseitigen Abhängigkeiten dieser Scripte aus?

Ich wäre sehr dankbar, wenn mir jemand in diesen Fragen weiterhelfen könnte. Vielleicht hat sich ja schon jemand selbst eine kleine Anleitung zusammengeschrieben für den Ablauf und könnte diese zur Verfügung stellen.

LG Jürgen
Benutzeravatar
Neptunium
Beiträge: 224
Registriert: 03 Jul 2008, 12:08
Wohnort: Marburg - Germany

Re: Netboot-OS-Installation.

Beitrag von Neptunium »

Corvo hat geschrieben:Hallo zusammen!

Ich wollte mich hier im Forum erkundigen, ob mir jemand kurz und prägnant den genauen Vorgang einer Betriebssystemsinstallation via Netboot erläutern kann?
In den Anleitungen werden immer Querverweise auf andere Opsi-Manuals gemacht. Dort beantworten sich - für mich jedenfalls - auch nicht immer alle offenen Fragen. Meine konkreten Anliegen:
Ist mir ganz am Anfang ähnlich gegangen. Man braucht halt ein wenig, bis man weiß, was die einzelnen Komponenten sind und wie sie ineinandergreifen und vor allem, wo man drehen muß, um irgendwas zu bewirken. Dieses KnowHow muß sich aber IMHO jeder selber erwerben.
- Wie lege ich ein Image mittels Opsi an und wie kann ich dieses dann via Netboot aufspielen?
- Geht das auch mit zB. Ghost-Images?
Das geht mit den OPSI-Produkten ntfs-[write/restore]-image.
- Wo werden welche Scripte aufgerufen, wo müssen diese abgelegt werden (zB WindowsXP.py) und wie sehen die gegenseitigen Abhängigkeiten dieser Scripte aus?
Eigentlich solltest du mit den Scripten der W2K / XP / W2K3 Installation eigentlich kaum was zu tun haben. Du solltest Erfahrungen mit unattended Installationen haben und die Datei /opsi/$oem$/unattend/unattend.txt ensprechend angepaßt haben sowie die Treiber für die jeweilige HW noch unter /opsi/$oem$/ einbinden. Dann sollte eigentlich die Netboot-OS-Installation gelingen. Alles weitere kannst du ja dann später noch verfeinern und erweitern.
Ich wäre sehr dankbar, wenn mir jemand in diesen Fragen weiterhelfen könnte. Vielleicht hat sich ja schon jemand selbst eine kleine Anleitung zusammengeschrieben für den Ablauf und könnte diese zur Verfügung stellen.

LG Jürgen
Das Lesen vom Handbuch und hier im Forum bzw. das Stellen konkreter Fragen ist sicherlich die beste Lösung.

Gruß

Dirk
Corvo
Beiträge: 13
Registriert: 18 Jul 2008, 09:37

Re: Netboot-OS-Installation.

Beitrag von Corvo »

Danke für die Antwort! Dann werde ich mich einmal an die Arbeit machen.

Sobald konkrete Fragen/Probleme auftreten, werde ich mich melden, wenn's recht ist...

LG Jürgen
Benutzeravatar
Neptunium
Beiträge: 224
Registriert: 03 Jul 2008, 12:08
Wohnort: Marburg - Germany

Re: Netboot-OS-Installation.

Beitrag von Neptunium »

Hallo Jürgen,

ich würde dir ja gerne direkt auf deinen Beitrag von heute Vormittag antworten, aber ich habe zwar die Benachrichtigungsmail zu deinem Beitrag um 11.15h erhalten, sehe den Beitrag aber merkwürdigerweise hier nicht, egal ob ich das Forum mit Seamonkey oder IE unter Windows oder Icewasel unter Linux aufrufe. :shock:
Deshalb zitiere ich einfach mal aus der Mail:
Hallo nochmals,

ich stelle die Frage nun konkreter, da ich ned wirklich weiterkomme:

Ich möchte ein Image von einem mittels Sysprep versiegelten XP machen. Dazu
verwende ich "write-local-ntfsimage.py". Soweit so gut.
Falsch: Du verwendest das Netbootprodukt ntfs-write-image und DAS verwendet das Script. Du kannst das Python-Script höchstens editieren, falls du es an eigene Bedürdnisse hinsichtlich Namen des Images, Speicherort, Partitionierung oder anderen Parametern abändern willst, wobei die ersten drei Optionen natürlich viel einfacher über die Schalter des Produktes verändert werden können. Aber ich hatte z.B. schon mal darüber nachgedacht, das Datum mit in den Dateinamen einfließen zu lassen und sowas würde ich dann direkt im Python-Script implementieren.
- Wo finde ich nun dieses Script auf dem Opsi-Server bzw. wie verwende ich
es?
- Oder muss man das Script - wie auf S 18 im Handbuch "Linux
Bootimage-Scripts" - selbst anlegen und abspeichern?
- Wenn ja, wo wird das Script agespeichert und wie kann ich es aufrufen?
- Es wird wird im Handbuch von einer master.py geschrieben
(usr/local/bin/master.py). Bei mir sind dort nur 1stboot.py und cleanup.sh.
Wie geschrieben, hast du mit diesen Scripten eigentlich nichts am Hut, wenn du nur ein Image erstellen willst. Also wähle im opsi configuration editor den Client aus, von dem du das Image erstellen willst, gehe dann auf die Netbootseite und wähle dort ntfs-write-image aus, setze rechts unten sinnvolle Werte für den Dateinamen und die Partitionsnummer ein und setze dann die Aktion für das Produkt auf setup. Wenn du dann den Client bootest, sollte er via PXE ein Minilinux starten und darunter das Image an den OPSI-Server schicken, falls z.B. die Dateisystemrechte für das Schreiben des Images OK sind.
Ich wäre für eine konkrete Hilfe sehr dankbar. Ein kostenpflichtiger
Supportvertrag wird nicht angestrebt, da Opsi im universitären Umfeld
verwendet werden sollte und dort Open-Source-Lösungen bevorzugt werden.
OpenSource und Support-Vertrag schließen sich nicht gegenseitig aus! ;-)
OpenSource charakterisiert lediglich die Lizenz, unter der die Software erstellt und verteilt wird (siehe http://de.wikipedia.org/wiki/OpenSource).
Vielen Dank!
Jürgen
Gruß

Dirk
Corvo
Beiträge: 13
Registriert: 18 Jul 2008, 09:37

Re: Netboot-OS-Installation.

Beitrag von Corvo »

Hallo Dirk!

Vielen Dank für Deine Hilfe!
Neptunium hat geschrieben:ich würde dir ja gerne direkt auf deinen Beitrag von heute Vormittag antworten, aber ich habe zwar die Benachrichtigungsmail zu deinem Beitrag um 11.15h erhalten, sehe den Beitrag aber merkwürdigerweise hier nicht, egal ob ich das Forum mit Seamonkey oder IE unter Windows oder Icewasel unter Linux aufrufe.
Ja, ich habe den Beitrag wieder gelöscht, da ich auf Seite 92 der Opsi 3.3-Doku beim Satz "Mit den Produkten ntfs-write-image..." auf die Sprünge gekommen bin. Ich war der Meinung, dass man das Python-Script irgendwie beim Starten des Boot-Linux aufrufen müsste bzw. dieses im Vorfeld irgendwo abspeichern, damit es aufgerufen wird. :)

Heute werde ich jedenfalls zuerst versuchen, ein Image zu erstellen und danach wieder aufzuspielen.

Liebe Grüße
Jürgen
Benutzeravatar
Neptunium
Beiträge: 224
Registriert: 03 Jul 2008, 12:08
Wohnort: Marburg - Germany

Re: Netboot-OS-Installation.

Beitrag von Neptunium »

Corvo hat geschrieben:Ja, ich habe den Beitrag wieder gelöscht, da ich auf Seite 92 der Opsi 3.3-Doku beim Satz "Mit den Produkten ntfs-write-image..." auf die Sprünge gekommen bin. Ich war der Meinung, dass man das Python-Script irgendwie beim Starten des Boot-Linux aufrufen müsste bzw. dieses im Vorfeld irgendwo abspeichern, damit es aufgerufen wird. :)
Dann vielleicht in Zukunft besser statt den Beitrag zu löschen eine Antwort schreiben, daß du die/eine Lösung zum Problem gefunden hast und im optimalen Fall auch noch kurz die Lösung beschreiben. Das irritiert weniger und vielleicht kann ja sogar noch jemand in Zukunft von deiner Erkenntnis / Lösung profitieren. ;)

Gruß

Dirk
Corvo
Beiträge: 13
Registriert: 18 Jul 2008, 09:37

Re: Netboot-OS-Installation.

Beitrag von Corvo »

Hallo zusammen!

Ein wenig weiter bin ich schon. Im opsi-configed hab ich für den Rechner bei den Netboot-Produkten eine Imageerstellung vorgesehen.

Es wird nun am Client das Boot-Linux geladen. Dann wird die Festplatte und deren Partitionen festgestellt. Im Anschluss passiert nichts mehr, sondern es wird ein Passwort gefragt (pcpatch). Das gehört wohl so?!

Wenn ich das Passwort eingebe, erscheint eine Progress-Bar, die bis 99 % geht mit der Meldung: Schreibe ntfs-Image (oder so ähnlich). Dann passiert nichts mehr. Wenn man dann irgenwann auf Return drückt (in meinem Fall nach einer 3/4 Stunde), erscheint die Meldung "Broken Pipe" und die Verbindung zum Opsi-Server wird beendet.

Ich muss dazu sagen, dass ich den Client angelegt habe und dabei nur die MAC-Adresse spezifiert habe. Der gewählte Hostnamen (Imagetest) ist nicht im DNS registriert. Dies sollte imho aber nicht zu diesem Fehler beitragen.

Auf dem Server selbst liegt keine Datei im Ordner /var/lib/opsi/ntfs-images/.

Ich wäre für Hilfe sehr dankbar!

Hier ein Auszug aus dem Logfile (/var/log/opsi/bootimage/)

Code: Alles auswählen

Jul 24 13:36:58 [debug]  -->>> 100.00 percent completed
Jul 24 13:36:58 [debug]  -->>> 100.00 percent completed
Jul 24 13:36:58 [debug]  -->>> Accounting clusters ...
Jul 24 13:36:58 [debug]  -->>> Space in use       : 10943 MB (92.8%)   
Jul 24 13:36:58 [debug]  -->>> Saving NTFS to image ...
Jul 24 14:17:20 [debug]  -->>>   0.00 percent completed
Jul 24 14:17:20 [debug]  -->>> Connection closed by 192.168.253.12
Jul 24 14:17:20 [debug]  -->>> 
Jul 24 14:17:20 [debug]  -->>> gzip: stdout: Broken pipe
Jul 24 14:17:20 [debug]  -->>> ERROR(32): Write failed: Broken pipe
Jul 24 14:17:21 [critical] Traceback:
Jul 24 14:17:21 [critical]      line 562 in '<module>' in file '/usr/local/bin/master.py'
Jul 24 14:17:21 [critical]      line 53 in '<module>' in file '/mnt/opsi/install/ntfs-write-image/ntfs-write-image.py'
Jul 24 14:17:21 [critical]      line 2100 in 'saveImage' in file '/var/lib/python-support/python2.5/OPSI/System.py'
Jul 24 14:17:21 [critical]      ==>>> Fehlgeschlagen: ERROR(32): Write failed: Broken pipe
Jul 24 14:17:21 [debug] Options: {'params': ('ntfs-write-image', 'imagetest.xxxxxxxxxx')}
Jul 24 14:17:21 [debug] jsonrpc string: {"params":["ntfs-write-image","imagetest.xxxxxxxx"],"id":1,"method":"unsetProductActionRequest"}
Jul 24 14:17:21 [debug] requesting: 'https://192.168.253.12:4447/rpc', query '{"params":["ntfs-write-image","imagetest.xxxxxxxxxxxx"],"id":1,"method":"unsetProductActionRequest"}'
Jul 24 14:17:21 [debug] Using method POST
Jul 24 14:17:21 [critical] Traceback:
Jul 24 14:17:21 [critical]      line 261 in '__request' in file '/var/lib/python-support/python2.5/OPSI/Backend/JSONRPC.py'
Jul 24 14:17:21 [critical]      line 928 in 'getresponse' in file '/usr/lib/python2.5/httplib.py'
Jul 24 14:17:21 [critical]      line 385 in 'begin' in file '/usr/lib/python2.5/httplib.py'
Jul 24 14:17:21 [critical]      line 349 in '_read_status' in file '/usr/lib/python2.5/httplib.py'
Jul 24 14:17:21 [critical]      ==>>> 
Jul 24 14:17:21 [warning] Requesting 'https://192.168.253.12:4447/rpc', query '{"params":["ntfs-write-image","imagetest.xxxxxxxx"],"id":1,"method":"unsetProductActionRequest"}' failed: 
Jul 24 14:17:21 [notice] Trying to reconnect...
Jul 24 14:17:21 [info] Opening https connection to 192.168.253.12:4447
Benutzeravatar
Anakim
Beiträge: 116
Registriert: 04 Jul 2008, 07:03

Re: Netboot-OS-Installation.

Beitrag von Anakim »

Hallo Corvo,
Es wird nun am Client das Boot-Linux geladen. Dann wird die Festplatte und deren Partitionen festgestellt. Im Anschluss passiert nichts mehr, sondern es wird ein Passwort gefragt (pcpatch). Das gehört wohl so?!
Nein das ist nicht richtig so, lies dir mal das Kapitel bzgl. pcpatch user und Kennworeingabe durch.. das hat nicht ganz hingehauen. Der Key des Users ist nicht richtig gesetzt bzw. die Gruppenzugehörigkeit .. Er sollte das Kennwort verschlüsselt ohne dein Handeln benutzen können. Das wird bei allen Installationen ob local oder netboot benötigt. ggf. mal ein anders Paket benutzen, dort müsste er bei Dir ebenfalls abbrechen mit dem Hinweis auf fehlden User bzw. Kennwort oder Rechte ..

Zum Rest kann ich Dir nichts sagen, da ich das images aktiv nicht einsetze ..

Grüße
Anakim
Mein Opsi 4.0.5.15 läuft derzeitig auf ESX 5.5 in der jeweils aktuellsten Version. (hoffe ich zumindestens :-))
Benutzeravatar
Neptunium
Beiträge: 224
Registriert: 03 Jul 2008, 12:08
Wohnort: Marburg - Germany

Re: Netboot-OS-Installation.

Beitrag von Neptunium »

Corvo hat geschrieben:Es wird nun am Client das Boot-Linux geladen. Dann wird die Festplatte und deren Partitionen festgestellt. Im Anschluss passiert nichts mehr, sondern es wird ein Passwort gefragt (pcpatch). Das gehört wohl so?!

Das liegt vermutlich daran, daß die Authentifizierung nicht klappt, denn für jeden Client wird ja in /etc/opsi/pckeys zum jeweiligen DNS-Namen ein Schlüssel hinterlegt. Obwohl, ich bin mir nicht sicher, ob das beim Netboot mit dem Minilinux-Image eine Rolle spielen kann, da ja dort immer nur der eine Schlüssel vom Image drin enthalten sein kann.
Wenn ich das Passwort eingebe, erscheint eine Progress-Bar, die bis 99 % geht mit der Meldung: Schreibe ntfs-Image (oder so ähnlich). Dann passiert nichts mehr. Wenn man dann irgenwann auf Return drückt (in meinem Fall nach einer 3/4 Stunde), erscheint die Meldung "Broken Pipe" und die Verbindung zum Opsi-Server wird beendet.
Schau doch auf dem Client mal nach einer Logdatei /tmp/log. Das ist das Clientseitige Gegenstück zu der unten von dir erwähnten Logdatei auf dem OPSI-Server.
Ich muss dazu sagen, dass ich den Client angelegt habe und dabei nur die MAC-Adresse spezifiert habe. Der gewählte Hostnamen (Imagetest) ist nicht im DNS registriert. Dies sollte imho aber nicht zu diesem Fehler beitragen.
Es ist IMHO nicht ratsam, Clients ohne korrekte DNS-Konfiguration des Hostnamens zu verwenden. Ich hatte sogar auch Probleme, als der primäre DNS-Name (also der A-Record) nicht mit dem Windowsnamen übereinstimmte.
Auf dem Server selbst liegt keine Datei im Ordner /var/lib/opsi/ntfs-images/.

Ich wäre für Hilfe sehr dankbar!

Hier ein Auszug aus dem Logfile (/var/log/opsi/bootimage/)

Code: Alles auswählen

Jul 24 13:36:58 [debug]  -->>> 100.00 percent completed
Jul 24 13:36:58 [debug]  -->>> 100.00 percent completed
Jul 24 13:36:58 [debug]  -->>> Accounting clusters ...
Jul 24 13:36:58 [debug]  -->>> Space in use       : 10943 MB (92.8%)   
Jul 24 13:36:58 [debug]  -->>> Saving NTFS to image ...
Jul 24 14:17:20 [debug]  -->>>   0.00 percent completed
Jul 24 14:17:20 [debug]  -->>> Connection closed by 192.168.253.12
Jul 24 14:17:20 [debug]  -->>> 
Jul 24 14:17:20 [debug]  -->>> gzip: stdout: Broken pipe
Jul 24 14:17:20 [debug]  -->>> ERROR(32): Write failed: Broken pipe
Jul 24 14:17:21 [critical] Traceback:
Jul 24 14:17:21 [critical]      line 562 in '<module>' in file '/usr/local/bin/master.py'
Jul 24 14:17:21 [critical]      line 53 in '<module>' in file '/mnt/opsi/install/ntfs-write-image/ntfs-write-image.py'
Jul 24 14:17:21 [critical]      line 2100 in 'saveImage' in file '/var/lib/python-support/python2.5/OPSI/System.py'
Jul 24 14:17:21 [critical]      ==>>> Fehlgeschlagen: ERROR(32): Write failed: Broken pipe
Jul 24 14:17:21 [debug] Options: {'params': ('ntfs-write-image', 'imagetest.xxxxxxxxxx')}
Jul 24 14:17:21 [debug] jsonrpc string: {"params":["ntfs-write-image","imagetest.xxxxxxxx"],"id":1,"method":"unsetProductActionRequest"}
Jul 24 14:17:21 [debug] requesting: 'https://192.168.253.12:4447/rpc', query '{"params":["ntfs-write-image","imagetest.xxxxxxxxxxxx"],"id":1,"method":"unsetProductActionRequest"}'
Jul 24 14:17:21 [debug] Using method POST
Jul 24 14:17:21 [critical] Traceback:
Jul 24 14:17:21 [critical]      line 261 in '__request' in file '/var/lib/python-support/python2.5/OPSI/Backend/JSONRPC.py'
Jul 24 14:17:21 [critical]      line 928 in 'getresponse' in file '/usr/lib/python2.5/httplib.py'
Jul 24 14:17:21 [critical]      line 385 in 'begin' in file '/usr/lib/python2.5/httplib.py'
Jul 24 14:17:21 [critical]      line 349 in '_read_status' in file '/usr/lib/python2.5/httplib.py'
Jul 24 14:17:21 [critical]      ==>>> 
Jul 24 14:17:21 [warning] Requesting 'https://192.168.253.12:4447/rpc', query '{"params":["ntfs-write-image","imagetest.xxxxxxxx"],"id":1,"method":"unsetProductActionRequest"}' failed: 
Jul 24 14:17:21 [notice] Trying to reconnect...
Jul 24 14:17:21 [info] Opening https connection to 192.168.253.12:4447
Du hast überprüft, daß genügend Platz für das Image auf dem Server vorhanden ist und die Rechte sind auch so gesetzt, daß der User pcpatch im entsprechenden Verzeichnis schreiben darf? Wohin läßt du denn die Images schreiben?

Gruß

Dirk
Corvo
Beiträge: 13
Registriert: 18 Jul 2008, 09:37

Re: Netboot-OS-Installation.

Beitrag von Corvo »

Hallo!
Anakim hat geschrieben:Er sollte das Kennwort verschlüsselt ohne dein Handeln benutzen können
Neptunium hat geschrieben: Das liegt vermutlich daran, daß die Authentifizierung nicht klappt, denn für jeden Client wird ja in /etc/opsi/pckeys zum jeweiligen DNS-Namen ein Schlüssel hinterlegt. Obwohl, ich bin mir nicht sicher, ob das beim Netboot mit dem Minilinux-Image eine Rolle spielen kann, da ja dort immer nur der eine Schlüssel vom Image drin enthalten sein kann.
In /etc/opsi/pckeys wurde der Schlüssel automatisch hinzugefügt. Dies wird vermutlich beim PXE-Boot passieren, da ja auf dem Client kein Preloginloader installiert wurde vorher.

Ich habe es jetzt noch mit einem 2. Rechner probiert. Dieser Hostname ist im DNS registriert. Trotzdem hört der Fortschritt bei 99 % auf und beim Drücken der Returntaste nach einiger Zeit, wird eine Broken-Pipe gemeldet.
Neptunium hat geschrieben: Schau doch auf dem Client mal nach einer Logdatei /tmp/log. Das ist das Clientseitige Gegenstück zu der unten von dir erwähnten Logdatei auf dem OPSI-Server.
Wie kann ich mich einloggen auf der Console? Mit dem User Pcpatch geht es nicht - auch nicht mit root (ohne Passwort). Hat die ubi dort einen User mit Passwort in die Live-CD (bzw. ins Bootimage) implementiert? Denn das Log-File ist nicht persistent auf der Festplatte zu finden (unter Windows).
Neptunium hat geschrieben: Du hast überprüft, daß genügend Platz für das Image auf dem Server vorhanden ist und die Rechte sind auch so gesetzt, daß der User pcpatch im entsprechenden Verzeichnis schreiben darf? Wohin läßt du denn die Images schreiben?
Die Images sollen nach /var/lib/opsi/ntfs-images/. Der Ordner wurde dem User Pcpatch "geschenkt". Platz ist auch genügend vorhanden.
Deute ich das richtig, dass das Image direkt über eine ssh-Pipe in den Ordner geschrieben wird? Also es wird nicht lokal am Client vorher was gespeichert und dies später übertragen? Dann müsste man als sofort nach Beginn des Vorganges eine Image-Datei am Opsi-Server sehen... Leider ist dem nicht so.

Naja, vielleicht fällt jemanden noch etwas dazu ein.

Ein schönes Wochenende Euch allen!
Jürgen
Antworten