Netboot-PXE-Server als LXC-Container

vorhergehende Artikel in: Linux Links Virtualisierung
18.09.2020

Ich habe meine IT-Infrastruktur modernisiert und nachhaltiger gemacht - keine Boot-CDs und keine USB-Sticks mehr für mich...

Nachdem ich erfahren habe, dass dnsmasq auch als Proxy arbeiten kann, wuchs in mir der Wunsch, einen eigenen PXE-Server aufzusetzen - das letzte Mal hatte ich mich mit Network-Boot beschäftigt, als ich Mittel und Wege suchte, alte Laptops einer Nachnutzung zuzuführen: dnsmasq als Proxy bedeutet, dass ein Rechner per DHCP um eine IP-Adresse nachsucht und ihm diese von einem DHCP-Server zugeteilt wird. Das kann zum Beispiel eine Fritz-Box oder auch ein OpenWrt-Router sein. dnsmasq sieht diese Kommunikation und schickt ein Paket hinterher, das den Client darüber informiert, dass ein Server bereitsteht, von dem er per Netzwerk booten könnte.

Dadurch muss man das bestehende Netzwerk nicht ändern - speziell ist keine Änderung des bestehenden DHCP-Servers notwendig - und kann trotzdem den Rechnern im Netzwerk neue Boot-Optionen eröffnen. Darunter fallen Möglichkeiten, über das Netzwerk neue Betriebssysteme zu installieren, Rettungssysteme wir Clonezilla, GParted oder Desinfec't zu starten oder einfach Live-Distributionen wie zum Beispiel Slax zu nutzen.

Seit der Ankunft von UEFI ist das ein wenig schwieriger geworden, weil ein PXE-Server heutzutage darauf vorbereitet sein muss, beides zu unterstützen. Aber mit Linux ist auch das kein Problem - man kann einen PXE-Server aufsetzen, der beide Systeme unterstützt - das ist genau das, was ich getan habe.

Die Tests wurden mit 6 verschiedenen Systemen durchgeführt:

  • KVM-Container (amd64, BIOS)
  • Physischer Rechner, Mainboard 2020 (amd64, BIOS)
  • Physischer Rechner, Mainboard 2012 (amd64, BIOS)
  • Physischer Rechner, Centrino, non-PAE (i686, BIOS)
  • Physischer Rechner, Schenker-Laptop ca. 2014 (amd64, UEFI)
  • Virtual Box VM (i686, BIOS)

Auf allen Testsystemen funktionierte die Erkennung des PXE-Systems fehlerfrei und die entsprechend passenden Bootoptionen wurden fehlerfrei ausgeführt.

Hier folgen einige Links, die mich bei der Einrichtung des Systems auf die richtige Fährte brachten:

Artikel, die hierher verlinken

Raspi booten übers Netz mit PXE und NFS

17.12.2020

Nach meinen Experimenten mit einem Rock64 war ein Raspi 3B+ für Experimente freigeworden - und in Vorbereitung meiner durch eben diesem Rock64 inspirierten Projektideen für diesen Winter wollte ich einiges ausprobieren - zuerst das Booten über das Netzwerk mit persistentem Speicher im Netz - so dass am Pi gar kein Massenspeicher mehr benötigt würde - weder als SD-Karte noch sonstwie.

Installation von Ubuntu 20.04 auf Raid-0

12.12.2020

Ich habe nach der erfolgreichen Arbeit an meinem PXE-Bootserver weitere Experimente folgen lassen - unter anderem habe ich für Debian als weitere Install-Option hinzugefügt. Weiterhin bietet der Server jetzt für Debian und Ubuntu 20.04 Automatik-Installationen an, die mit minimaler Nutzerinteraktion (Hostname und Passwort) auskommen

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Fährnisse des Buildprozesses unter Windows

    17.07.2019

    Nachdem ich begonnen hatte, mich mit der Beschleunigung der Berechnung des Mandelbrot-Fraktals unter Zuhilfenahme der Shadereinheiten in Graphikkarten zu beschäftigen und erste Erfolge feiern konnte, wollte ich das mal auf einer richtigen Graphikkarte ausprobieren...

    Weiterlesen...

Neueste Artikel

  • Datenvalidierung UTF8 mit BiDi-Steuerzeichen (TrojanSource 2.0)

    Ich bin heute nochmal inspiriert worden, weiter über die Trojan Source Vulnerability nachzudenken. Meiner Meinung nach bestehen hier noch Probleme - speziell bei Nutzereingaben oder Daten, die über externe Schnittstellen ampfangen werden.

    Weiterlesen...
  • OpenStreetMap Navi als Docker-Container

    Ich habe die auf OpenStreetMap basierende OpenSource Navigationslösung Graphhopper in einen Docker-Container gepackt und als neuestes Mitglied in meinem Docker-Zoo willkommen geheißen.

    Weiterlesen...
  • SQL-Aggregatfunktionen in SQLite als BeanShell-Scripts

    Ich habe neulich über eine Möglichkeit berichtet, SQLite mittels der sQLshell und Beanshell-Skripten um SQL-Funktionen zu erweitern. In diesem Artikel versprach ich auch, über eine solche Möglichkeit für Aggregatfunktionen zu berichten.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.