Start aus der Ferne

Geringer Hardware-Aufwand

Um seinen Rechner über das Netz zu booten, muß zunächst die Netzwerkkarte mit einem Boot-ROM ausgestattet, sofern diese einen dafür vorgesehenen Sockel hat. Bei vielen handelsüblichen Interface-Karten trifft das auch zu.

Als nächstes - und damit ist in der Regel die Reihe der Anschaffungen schon abgeschlossen - braucht man die Software. Die ist schnell besorgt, man wendet sich am besten an die Homepages der Bootloader (siehe http://www.slug.org.au/etherboot/ und http://www.han.de/~gero/net boot/index.html). Die Remote-Boot-Pakete für Linux verfügen über zwei Hauptbestandteile:

Ein Makefile zur Erzeugung des Bootloaders. Der Bootloader wird mit einem EPROM-Brenner auf das Boot-ROM geschrieben. Ein Tool zur Erstellung des Client-Kernels. Dieser unterscheidet sich vom kompilierten Kernel, da er Code für die Kommunikation mit dem Bootloader enthält.

Bevor man seinen PC in eine Diskless-Workstation verwandelt, kann der Bootloader zu Testzwecken auch auf eine Diskette geschrieben werden, die statt einer Boot-Diskette den Rechnerstart einleitet.

Wie kommt nun ein Remote-Boot zustande? Sobald der Client-Rechner eingeschaltet wird, schickt der Bootloader einen BOOTP-Broadcast ab. Damit fragt er nach den IP-Adressen des Clients und des Boot-Servers und nach dem Namen des Kernel-Image. Anschließend fordert er vom Boot-Server per TFTP (Trivial File Transfer Protocol) die Übermittlung des Betriebssystem-Kernels an. Wenn der Kernel die Steuerung des Clients übernommen hat, importiert er sein Root-Verzeichnis von einem NFS-Server. Danach ist der Boot-Vorgang abgeschlossen. Häufig wird auch ein Home-Verzeichnis über NFS gemountet, wenn auf dem System Benutzer eingerichtet werden. Swapping über das Netz versucht man zu vermeiden, da es die Netzwerkbelastung erhöht. Entweder macht genügend RAM-Kapazität eine Speicherauslagerung überflüssig, oder der Client hat eine Festplatte, auf der sich eine Swap-Partition einrichten läßt.

Sowohl der Bootloader als auch der Client-Kernel können nicht nur unter Linux erzeugt werden. Die Makefiles sind für die meisten Unix-Systeme ausgelegt. Das Betriebssystem des Clients muß nicht Linux sein. Beide Pakete unterstützen den Remote-Boot von MS-DOS und Windows 95. Auch der Boot-Server muß nicht unter Linux betrieben werden. Der Client-Kernel kann ebensogut auf einem Novell-Server oder auf einem Windows-NT-Rechner verwahrt werden.