Hello! Michael Stibane schrieb: > # I just sent this to the developer list which is, I just noted afterwards, > # read only ... d'oooh - sorry. So once again at this place:
No problem, we got both. ;-) > Hi! > > I'm writing an article about OpenThinClient for the german Linux > Intern magazine (Data Becker, issue 04/08 or 01/09). > > Since the docs lack the "Boot process demystified" part I digged a bit > into the directories and came up with this text: > > ---------- > Kasten > Technik unter der Haube > Für das Funktionieren von OpenThinClient ist der JBoss > Applikationsserver zuständig. Mit dieser Software bauen die Entwickler > diverse Netzwerk-Dienste nach, die für eine Thin-Client-Umgebung > unerlässlich sind. Welche das sind, lesen Sie aus den Dateinamen im > Unterverzeichnis server/default/data/nfs/root/deploy/ ab. Hier finden > Sie unter anderem einen DHCP-Proxy, TFTP- und NFS-Dienste. Sendet ein > PXE Bootrom die Broadcast-Anfrage nach einer IP-Adresse aus, > registriert das der DHCP-Proxy. Bekommt der Client die IP-Adresse, > folgt die Suche nach einem TFTP-Server im Netz. Ist der Thin Client > über seine Mac-Adresse in der Verwaltung erfasst, antwortet der JBoss, > dass er diese Service-Anfrage erfüllen kann und liefert das für den > Thin Client in der Verwaltung konfigurierte Kernel-Image (vmlinuz) > nebst der initialen Ramdisk (initrd.img) aus dem Verzeichnis > server/default/data/nfs/root/tftp aus. Hmmm, ja, fast schon richtig. :-) Der PXE-Teil wird hier recht ausführlich beschrieben. http://www.intel.com/design/archives/wfm/downloads/pxespec.htm Ich beschreibe den Teil, den wir einsetzen, hier mal etwas anschaulicher: - JBoss startet Unterdienste PXE-Proxy, TFTP, NFS und LDAP, - PXE-Proxy lauscht auf DHCP-Pakete, die zwischen ThinClient und dem eigentlichen DHCP-Server ausgetauscht werden, - wenn er eine DHCP-Offer erkennt, die für einen konfigurierten ThinClient gedacht ist, sendet er diesem ein weiteres Offer-Paket, in dem er selbst als Bootserver eingetragen ist, - der Client reserviert sich beim DHCP-Server im Netz die IP per DHCP-Request und -Ack - der Client holt sich die Bootinformationen beim DHCP-Proxy-Dienst per weiterem DHCP-Request und -Ack - er holt sich dann per TFTP den pxelinux.0 und startet diesen, - der pxelinux.0 holt per TFTP die (clientspezifische) pxelinux-Config, in der Pfad zum Kernel und Initrd sowie Kernelparamter drin stehen - pxelinux.0 lädt (noch mal per TFTP) Kernel und Initrd und startet den Kernel, der ab da übernimmt, - der Kernel führt die Initrd aus, in der dann per NFS das eigentliche Basissystem von OTC gemounted und anschließend gestartet wird > Kasten > Client-Bootvorgang > Hat der Thin Client Kernel und Ramdisk per TFTP bekommen, beginnt der > für Linux typische Boot-Prozess. Auf dem Bildschirm des Terminals > sehen Sie jetzt die weiß/blaue Box einer Bootsplash-Variante mit > scrollenden Startmeldungen. Genau genommen wird auf dem Client ein > Live-Medium gestartet. Die initiale Ramdisk mountet zunächst ein > Squashfs-Dateisystem (server/default/data/nfs/root/sfs/base.sfs), das > das komplette Wurzelverzeichnis enthält. Die für eine Ubuntu Live-CD > übliche gute Hardware-Erkennung sorgt dafür, dass Grafikkarte, lokale > Speichermedien und Sound korrekt erkannt werden. Ist nichts anderes in > der Verwaltung eingestellt, startet der Xorg-Server mit VESA-Treiber > in 1024x768 Auflösung bei 16 Bit Farbtiefe und präsentiert den GDM > Login-Bildschirm. Die Authentifikation der Benutzer erfolgt gegen den > LDAP des OpenThinClient-Servers, den ebenfalls JBoss serviert. Ist die Ist vielleicht etwas missverständlich. Der JBoss startet den Dienst zwar, auf die Pakete lauscht dann aber schon der LDAP-Server selbst, also nicht wie zum Beispiel der xinetd, der selbst auf dem Port lauscht und dann erst an den Dienst übergibt. > Authentifizierung erfolgreich, mountet das Terminal das > Heimatverzeichnis des in der Verwaltung angelegten Benutzers per NFS. > Es liegt auf der Server-Platte im Unterverzeichnis > server/default/data/nfs/home/ von openthinclient/. Gleiches passiert > übrigens auch mit /var in dem das temporäre Verzeichnis /tmp liegt. In > der Wurzel verweist dann /tmp per Symlink auf /var/tmp. > > Kasten > Zusatzsoftware im Client > Über die Verwaltungsumgebung geben Sie Benutzern oder Thin Clients die > Möglichkeit, auf den Terminals Zusatzsoftware, etwa Firefox, zu > starten. Diese Zusatzsoftware liegt ebenfalls in Form von > Squashfs-Images vor. Mit Hilfe eines transparenten Union-Dateisystems > werden sie einfach auf dem Client eingebunden. Besonders clever wurde > mit Hilfe der Verwaltung die Vorkonfiguration gelöst. In den > Heimatverzeichnissen der Benutzer auf dem Server wird zuerst eine > Verknüpfung für das jeweilige Programm auf dem Desktop in Form einer > „.desktop"-Datei abgelegt. Diese erscheint dann automatisch beim > Booten des Terminals nach Anmeldung des Benutzers. Weiterhin legt fast > jedes Programm unter Linux im Heimatverzeichnis des Benutzers einen > versteckten Ordner mit individuellen Einstellungen an. Am Beispiel des > Firefox richten Sie so in der Verwaltung unter anderem eine > vorgegebene Startseite oder Bookmarks ein, die beim Start des Browsers > auf dem Thin Client vorhanden sein sollen. Physikalisch existieren > diese Einstellungsdateien im Heimatverzeichnis des Benutzers auf dem > Server, etwa unter > server/default/data/nfs/home/test/.mozilla/firefox/. > --------- > > Please proofread the above, correct where I'm wrong and add what I missed. > > Big thanx in advance! > > -- > Best! > STIBS > http://saxenos.com > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > The Open Source Thin Client Solution http://openthinclient.org > [email protected] > https://lists.sourceforge.net/lists/listinfo/openthinclient-user > -- Bye, Tobias Abt levigo systems gmbh ----------- ein unternehmen der levigo gruppe Max-Eyth-Strasse 30 Telefon: 07031 / 4161-10 D-71088 Holzgerlingen Telefax: 07031 / 4161-11 Geschäftsführer: Oliver Bausch http://systems.levigo.de/ Registergericht: Stuttgart HRB 245 180 USt-ID: DE813226078 ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ The Open Source Thin Client Solution http://openthinclient.org [email protected] https://lists.sourceforge.net/lists/listinfo/openthinclient-user
