Nach diesen Konfigurationsarbeiten sollte Ihr Client-Rechner beim Start das Menü aus Abbildung 1 zeigen und das Diskless-Ubuntu über das Netzwerk vom RasPi laden.
Verfeinerungen
Um mehrere Computer über das Netzwerk mit einem Betriebssystem zu versorgen, erscheint es wenig elegant und obendrein auch nicht für den RasPi optimal, für jeden Client ein komplettes Betriebssystem in einem Verzeichnis des Servers vorzuhalten. Viele Systemverzeichnisse wie /bin, /sbin, /usr/bin, /usr/sbin, /usr/share, /usr/lib oder /usr/lib64 lassen sich stattdessen zentral vorhalten.
Im nächsten Schritt sollte die Benutzerverwaltung nicht mehr lokal auf dem Client, sondern über das Netzwerk und einen LDAP-Server erfolgen. So bietet sich dann auch die Möglichkeit, das Home-Verzeichnis auf den Server auszulagern und per NFS in die Clients zu mounten – dies kennen Sie eventuell aus Unternehmen, wo Sie sich an beliebigen Workstations anmelden können.
Hierbei stoßen Sie jedoch bald an die Grenzen des Raspberry Pi mit einer SD-Speicherkarte als Massenspeicher. Bevor Sie daraufhin Ihren RasPi um eine USB-Festplatte mit eigener Stromversorgung erweitern, sollten Sie daher vielleicht doch lieber an einen ausgewachsenen Server denken. Zum Erlernen der dazu notwendigen Handgriffe eignet sich der RasPi jedoch bestens.
OpenSuse einrichten via PXE
Die Installation einer Linux-Distribution erfolgt üblicherweise aus einem Live-System, das von CD/DVD oder einem USB-Stick gebootet wurde. Live-Systeme lassen sich aber auch recht einfach via PXE übers Netzwerk starten [3]: So fällt das Einrichten einer Netzwerk-Boot-Installation recht leicht, wie wir im Folgenden anhand von OpenSuse 13.1 (64 Bit) demonstrieren.
Nach den aus den vorausgehenden Artikeln bereits bekannten Mustern richten Sie für das Netzwerk-Suse ein eigenes Verzeichnis ein, das Sie dann über NFS freigeben. Dazu bearbeiten Sie abermals die /etc/exports und fügen den Inhalt aus Listing 12 ein. Dann kopieren Sie den gesamten Inhalt der Installations-DVD (Listing 13). Zum Abschluss übertragen Sie den Inhalt aus Listing 14 in die Datei /srv/tftpboot/pxelinux.cfg/default.
Listing 12
/srv/data/nfs/opensuse/13.1.64 192.168.100.0/24(ro,no_root_squash,sync,no_subtree_check)
Listing 13
$ sudo -s $ mkdir -p /srv/data/nfs/opensuse/13.1.64 $ mount -o loop opensuse-dvd-image.iso /mnt $ rsync -a /mnt/ /srv/data/nfs/opensuse/13.1.64/ $ umount /mnt $ mkdir -p /srv/tftpboot/opensuse/13.1.64 $ cp /data/nfs/opensuse/13.1.64/boot/x86_64/loader/linux /srv/tftpboot/opensuse/13.1.64/. $ cp /data/nfs/opensuse/13.1.64/boot/x86_64/loader/initrd /srv/tftpboot/opensuse/13.1.64/. $ exit
Listing 14
[...] LABEL OpenSuse 13.1 (64 Bit) Installer MENU LABEL Install OpenSuse 13.1 64 Bit KERNEL /opensuse/13.1.64/linux APPEND initrd=/opensuse/13.1.64/initrd splash=silent showopts install=nfs://pi.homenet.de:/data/nfs/opensuse/13.1.64/
Die von Suse empfohlene Konfiguration der /srv/tftpboot/pxelinux.cfg/default sieht ein wenig anders aus (Listing 15). Suse hält das Installationsmedium nicht lokal vor, sondern lädt das Image bei Bedarf direkt vom Repository-Server. Das spart zwar Platz auf dem RasPi, doch verzögert der langwierige Download die Installation.
Listing 15
[...] LABEL OpenSuse 13.1 (64 Bit) Installer MENU LABEL Install OpenSuse 13.1 64 Bit KERNEL /opensuse/13.1.64/linux APPEND initrd=/opensuse/13.1.64/initrd splash=silent showopts install=http://download.opensuse.org/distribution/13.1/repo/oss
Beim Autor führte diese Vorgehensweise auch erst einmal nicht zum gewünschten Erfolg: Der zu installierende Client lag hinter einer Firewall, das rudimentäre Linux-System erlaubt jedoch noch keine HTTP-Proxy-Einstellung für den Zugriff auf das Repository. Zur Installation müsste man in diesem Szenario also die Firewall öffnen oder einen transparenten Proxy einrichten.
Das Firewall/Proxy-Problem stellt sich während der Installation des OpenSuse-Systems noch ein zweites Mal, wenn die Abfrage eines externen NTP-Servers scheitert. Hier stellen Sie über den Button Ändern Ihren RasPi als NTP-Server ein (Abbildung 2), sodass die Firewall-Schranke nicht mehr stört.
Fedora-Installation via PXE
Das Einrichten weiterer Linux-Installer für andere Distributionen erfolgt auf die gleiche Weise wie bereits für OpenSuse gezeigt. Lediglich Einzelheiten der Syntax erfordern gezielte Anpassungen. Für Fedora gehen wir daher nur auf die Einträge im PXE-Bootmenü sowie auf die NFS-Exporte ein.







