Raspberry Pi PXE boot: Teil 2

Raspberry Pi PXE boot

Hallo zusammen,

Ja mei. Der Sommer ist rum und ich schulde euch noch immer den versprochenen Raspberry Pi PXE boot: Teil 2. Macht nichts. Jetzt kommen die noch fehlenden Infos, versprochen. ūüôā

F√ľr all diejenigen, die meinen ersten Teil mit der gesamten openSUSE Leap 42.1 spezifischen Konfiguration nicht gelesen haben, hier mein erster Teil.

Die richtigen Kernel-Parameter

Die Kernel-Parameter m√ľssen in der Datei cmdline.txt im tftpboot-Verzeichnis angepasst werden:

sudo vi /srv/tftpboot/cmdline.txt

Meine cmdline.txt sieht komplett so aus:

dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/nfs rootfstype=nfs nfsroot=192.168.178.27:/srv/nfs/rpi3,udp,vers=3 smsc95xx.turbo_mode=N rw ip=dhcp rootwait elevator=deadline

Wichtig sind vor allem folgende Parameter f√ľr den PXE-Boot:

root=/dev/nfs
 --> verweist auf das nfs-device als root-Partition
rootfstype=nfs
 --> nur um Unklarheiten zu vermeiden: Ja, das Dateisystem ist vom Typ nfs
nfsroot=192.168.178.27:/srv/nfs/rpi3,udp,vers=3
 --> Die IP-Adresse ist nat√ľrlich die eures Boot-Servers. Aus Kompatibilit√§tsgr√ľnden verwenden wir UDP als √úbertragungsprotokoll und verweisen gleichzeitig auf das NFS Protokoll-Version 3. Ohne diesen "downgrade" der Protokolle hat es nicht bei mir nicht funktioniert.

Anpassen des Filesystem Table

Da im Standard die Konfiguration der Datei fstab auf die SD-Karte f√ľr die root bzw. boot-Partition verweist, muss das nat√ľrlich auch noch ge√§ndert werden:

sudo vi /srv/nfs/rpi3/etc/fstab

Hier der Inhalt meiner fstab:

proc            /proc           proc    defaults          0       0
#/dev/mmcblk0p1  /boot           vfat    defaults          0       2
#/dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
# a swapfile is not a swap partition, no line here
#   use  dphys-swapfile swap[on|off]  for that

Wichtig ist vor allem, dass ihr die Verweise auf die SD-Karte auskommentiert. Die Zuweisung der root-Partition auf den NFS-Mountpoint habt ihr oben in der cmdline.txt schon hinterlegt. *daumenhoch*

Die wichtigsten Links auf die Seiten des Raspberry Pi Projektes hierzu sind:

Pi 3 booting part II: Ethernet
Network Boot Your Raspberry Pi

Als Fazit l√§sst sich sicher sagen, dass es durchaus reizbar ist seinen Raspberry Pi ohne eine SD-Karte betreiben zu k√∂nnen. Sicherlich auch, da bei h√§ufigen I/O-Prozessen die Karte auch mal √ľber den Jordan gehen kann. Wer aber Performance f√ľr den Zugriff auf das Dateisystem braucht kann auch dar√ľber nachdenken die SD-Karte weiterhin als Datenablage zu verwenden. Sprich: Boot aus dem Netz, Datenbank auf der SD-Karte.

Als weiterf√ľhrendes Projekt kann ich mir auch vorstellen den Bootserver so auszubauen, dass unterschiedliche Raspberry-Pi davon booten k√∂nnen. Dabei w√ľrde uns die von UNIX vererbte Ordner- und Dateistruktur sicher entgegenkommen. Eine Automation – z.B. auf Basis von cobbler – welche neue Raspberry Pi automatisch mit eigener Konfiguration versorgt, w√ľrde uns viel manuelle Arbeit abnehmen. Auf jeden Fall ein interessantes Projekt!

Viele Späße,
swarkn

swarkn

swarkn

Stefans Schwerpunkte liegen im Umfeld von Betriebssystemen, serverbasierten Diensten und im weitesten Sinne in allgemeiner technischer Infrastruktur. Tags√ľber mit strategischen IT-Themen besch√§ftigt, tackert er Nachts doch mal gerne ins schwarze Loch.
swarkn

Letzte Artikel von swarkn (Alle anzeigen)

pinterest
swarkn

Autor: swarkn

Stefans Schwerpunkte liegen im Umfeld von Betriebssystemen, serverbasierten Diensten und im weitesten Sinne in allgemeiner technischer Infrastruktur. Tags√ľber mit strategischen IT-Themen besch√§ftigt, tackert er Nachts doch mal gerne ins schwarze Loch.

Ein Gedanke zu „Raspberry Pi PXE boot: Teil 2“

Schreib uns einen Kommentar :)