PXE Boot über TFTP UBUNTU Server mit MS DHCP Server
Hallo ihr lieben,
ich versuche gerade einen Ubuntu 20.04.1 Server für PXE boot zu konfigurieren.
Es gibt schon einen DHCP im Netzwerk mit MS 2016 Standard Server Betriebssystem.
Ich habe so gut wie keine Erfahrung mit Ubuntu Server.
Ich habe nach dieser Anleitung meinen Ubuntu Server konfiguriert:
http://www.thurnhofer.net/pxe-server-unter-linux-installieren/
habe allerdings auch Bruchteile aus dieser Anleitung übernommen:
https://www.foxplex.com/sites/pxe-boot-server-unter-ubuntu-einrichten/
Mit Bruchteilen ist eigentlich hauptsächlich der Pfad des tftpboot Ordners jetzt nicht "/tftpboot", sondern "/var/lib/tftpboot"
Was ich auch nicht übernommen habe aus der thurnhofer.net Anleitung sind die DHCP Zeilen in der dnsmasq.conf, also:
019 dhcp-range=...
und
020 dhcp-boot=...
Im DHCP Server habe ich 066 und 067 aktiviert in der 066 ist die IP Adresse des Ubuntu Servers hinterlegt.
Mir ist allerdings nicht ganz klar was bei 067 rein muss.
Wenn ich einen Client über Netzwerk starte bekommt er eine IP Adresse zugewiesen dann kommt aber folgendes:
TFTP.
PXE-T01: File not found
PXE-E3B: TFTP Error - File Not found
PXE-M0F: Exiting Intel PXE ROM.
Ich vermute es liegt an der 067 oder die Freigabe des Ordners hat nicht geklappt. Vielleicht auch beides
Müsste ich über Windows auf die Freigabe vom tftpboot zugreifen können?
Beim booten des Linux Servers tritt auch ein Fehler bei dnsmasq auf, irgendwas mit DHCP ich kann es nicht lesen, da es so schnell durchläuft.
Ich hoffe mir kann hier jemand unkompliziert helfen.
Liebe Grüße
Carmen
ich versuche gerade einen Ubuntu 20.04.1 Server für PXE boot zu konfigurieren.
Es gibt schon einen DHCP im Netzwerk mit MS 2016 Standard Server Betriebssystem.
Ich habe so gut wie keine Erfahrung mit Ubuntu Server.
Ich habe nach dieser Anleitung meinen Ubuntu Server konfiguriert:
http://www.thurnhofer.net/pxe-server-unter-linux-installieren/
habe allerdings auch Bruchteile aus dieser Anleitung übernommen:
https://www.foxplex.com/sites/pxe-boot-server-unter-ubuntu-einrichten/
Mit Bruchteilen ist eigentlich hauptsächlich der Pfad des tftpboot Ordners jetzt nicht "/tftpboot", sondern "/var/lib/tftpboot"
Was ich auch nicht übernommen habe aus der thurnhofer.net Anleitung sind die DHCP Zeilen in der dnsmasq.conf, also:
019 dhcp-range=...
und
020 dhcp-boot=...
Im DHCP Server habe ich 066 und 067 aktiviert in der 066 ist die IP Adresse des Ubuntu Servers hinterlegt.
Mir ist allerdings nicht ganz klar was bei 067 rein muss.
Wenn ich einen Client über Netzwerk starte bekommt er eine IP Adresse zugewiesen dann kommt aber folgendes:
TFTP.
PXE-T01: File not found
PXE-E3B: TFTP Error - File Not found
PXE-M0F: Exiting Intel PXE ROM.
Ich vermute es liegt an der 067 oder die Freigabe des Ordners hat nicht geklappt. Vielleicht auch beides
Müsste ich über Windows auf die Freigabe vom tftpboot zugreifen können?
Beim booten des Linux Servers tritt auch ein Fehler bei dnsmasq auf, irgendwas mit DHCP ich kann es nicht lesen, da es so schnell durchläuft.
Ich hoffe mir kann hier jemand unkompliziert helfen.
Liebe Grüße
Carmen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 639635
Url: https://administrator.de/forum/pxe-boot-ueber-tftp-ubuntu-server-mit-ms-dhcp-server-639635.html
Ausgedruckt am: 23.12.2024 um 15:12 Uhr
32 Kommentare
Neuester Kommentar
Such dir eine PXE Anleitung von Windows raus, da siehst du was du unter 66 und 67 eintragen musst, übrigens auch unter 60.
z.B. hier
https://www.itnator.net/pxe-boot-dhcp-einstellungen/
Die Linux Meldungen werden im Log gespeichert, da kannst du dem Fehler auf den Grund gehen.
Vermutlich unter
/var/log/syslog
oder
/var/log/messages
z.B. hier
https://www.itnator.net/pxe-boot-dhcp-einstellungen/
Die Linux Meldungen werden im Log gespeichert, da kannst du dem Fehler auf den Grund gehen.
Vermutlich unter
/var/log/syslog
oder
/var/log/messages
Das weiss ich leider nicht, ich habe es nie ausprobiert. Aber du könntest es ausprobieren. Wenn keine Fehlermeldung beim erzeugen kam, wird es wohl geklappt haben.
Du kannst auch überprüfen ob der Client versucht hat die Datei per TFTP abzuholen. Also die Logs vom TFTP kontrollieren, bzw ggfls einschalten.
Du kannst auch überprüfen ob der Client versucht hat die Datei per TFTP abzuholen. Also die Logs vom TFTP kontrollieren, bzw ggfls einschalten.
Grundsätzlich ja... Wenn ich mich recht erinnere, musst du neben der Datei noch die IP des Servers angeben. Schnelles googlen brachte mir gerade sowas: dhcp-boot=pxelinux.0,pxeserver,192.168.1.14 - Wobei die 192.168.1.14 die IP des Boot-Servers ist.
Das funktioniert nicht
Welchen Fehler bekommst du?
Hier steht genau wie es geht:
Netzwerk Management Server mit Raspberry Pi
https://www.heise.de/select/ct/2020/26/2019014044217819695
Netzwerk Management Server mit Raspberry Pi
https://www.heise.de/select/ct/2020/26/2019014044217819695
Hi,
erstmal:
für das klassische, aber veraltete PXE boot (mit pxelinux.0) brauchst du folgende Windows DHCP Server Option:
066 = IP Adresse des TFTP Servers = scheint bei die OK zu sein
067 = pxelinux.0
pxelinux.0 muß im TFTP root Ordner liegen , lt deiner Angabe in /var/lib/tftpboot.
eboso muß in diesem Ordner ein Ordner(!) pxelinux.cfg erstellt werden und in diesem Ordner eine Datei default , welche das Boot Menü enthält.
Welche Dateien und Ordner zusätzlich noch in /var/lib/tftpboot vorhanden sein müssen ist von deiner Syslinux version und von deinem Boot Menü abhängig. Poste mal dein Boot Menü.
Firewall auf dem Ubuntu Server muß für UDP/69 eingehend offen sein und die Berechtigungen im Ordner /var/lib/tftpboot müssen auch OK sein.
erweitere mal deine /etc/default/tftp-hpa auf TFTP_OPTIONS="-s -c -l -vvv".
Wo du die Logfiles genau findest kann ich dir leider nicht sagen, da ich kein Ubuntu verwende.
wnn du das logfile gefunden hast:
tail <logfile> dann boote einen Client und schau welche dateien geladen werden, bzw. vermisst werden.
BTW: PXE boot mit pxelinux.0 ist "etwas" veraltet, zum üben noch zu gebrauchen, aber nichts für die Produktion.
Aktuell ist iPXE moderner und ggf. viel schneller
Gruß
CH
erstmal:
für das klassische, aber veraltete PXE boot (mit pxelinux.0) brauchst du folgende Windows DHCP Server Option:
066 = IP Adresse des TFTP Servers = scheint bei die OK zu sein
067 = pxelinux.0
pxelinux.0 muß im TFTP root Ordner liegen , lt deiner Angabe in /var/lib/tftpboot.
eboso muß in diesem Ordner ein Ordner(!) pxelinux.cfg erstellt werden und in diesem Ordner eine Datei default , welche das Boot Menü enthält.
Welche Dateien und Ordner zusätzlich noch in /var/lib/tftpboot vorhanden sein müssen ist von deiner Syslinux version und von deinem Boot Menü abhängig. Poste mal dein Boot Menü.
Firewall auf dem Ubuntu Server muß für UDP/69 eingehend offen sein und die Berechtigungen im Ordner /var/lib/tftpboot müssen auch OK sein.
erweitere mal deine /etc/default/tftp-hpa auf TFTP_OPTIONS="-s -c -l -vvv".
Wo du die Logfiles genau findest kann ich dir leider nicht sagen, da ich kein Ubuntu verwende.
wnn du das logfile gefunden hast:
tail <logfile> dann boote einen Client und schau welche dateien geladen werden, bzw. vermisst werden.
BTW: PXE boot mit pxelinux.0 ist "etwas" veraltet, zum üben noch zu gebrauchen, aber nichts für die Produktion.
Aktuell ist iPXE moderner und ggf. viel schneller
Gruß
CH
Zitat von @DieAzubinne:
Wenn sich in den Logs nichts tut, kontrollier mal ob TFTP überhaupt läuft. Und ob er auch auf Port 69 überhaupt zuhört.
service --status-all und bei tftpd-hpa ein + davor. Ist das, das richtige? und heißt der Dienst läuft?Hmm, ich will Dir ja nicht zu nahe treten, aber wenn Du das nicht selber weißt, ist das vielleicht nicht das richtige Projekt für Dich. Du wirst immer wieder auf solche "Tools" zurükgreifen müssen um dein LTSP sauber ans Laufen zu bekommen oder Fehler zu suchen. Und wenn es dann unter Zeitdruck ist, hast Du nicht die Zeit zu fragen. Ich empfehle Dir also Dich schnellstmöglich mit den Standardbefehlen und deren Funktion sowie Schaltern vertraut zu machen. Sonst läufst Du in offene Messer.
🖖
Das wollte ich damit nicht sagen. Ich begrüße es sehr, wenn man über den Tellerrand schaut. Aber wenn Du wegen solch einer einfachen Sache fragen mußt, gehe ich davon aus, das Du in Linux noch nicht sehr versiert bist. Und gerade bei Linux kann man (wenn man nicht so genau weiß was man tut) sehr schnell das System "verbasteln". Daher meine Empfehlung Dich schnellstmöglich mit den wichtigsten Befehlen vertraut zu machen. Wir haben alle mal klein angefangen.
Also: wie NordicMike schon sagte -> Google ist Dein Freund.
🖖
Hi,
Ohne -vvv siehst du nur: hpa-tftpd startet oder stopped, was dir bei der Fehlersuche nicht weiterhilft, da keine Logs generiert werden.
Ist zwar ein Windows Tool, die Konfigurationsdateien zeigen aber sehr viele PXE boot Beispiele und können dann auf deinen Ubuntu Server adaptiert werden.
Wenn ich deine /pxelinux.cfg/default sehe: Wo hast du die denn her ?
die Pfadangaben /var/lib/tftpboot/ubuntu-installer/*/*.* sind meines Wissens nach verkehrt.
TFTP root ist ja /var/lib/tftpboot/ ,also müssen die Pfadangaben ubuntu-installer/*/*.* sein.
Soll ich das hinzufügen oder soll ich die vorhandene TFTP_OPTIONS Zeile um die Atributte erweitern?
ersetzte die Attribute. wichtig ist -vvv ,damit siehst du im log welche dateien angefordert werden und welche Dateien ausgeliefert werden, bzw. welche Fehler auftreten.Ohne -vvv siehst du nur: hpa-tftpd startet oder stopped, was dir bei der Fehlersuche nicht weiterhilft, da keine Logs generiert werden.
Hast du eine detaillierte Anleitung wie man diesen installiert?
Nein, schau dir mal den Tiny PXE Server an.Ist zwar ein Windows Tool, die Konfigurationsdateien zeigen aber sehr viele PXE boot Beispiele und können dann auf deinen Ubuntu Server adaptiert werden.
Wenn ich deine /pxelinux.cfg/default sehe: Wo hast du die denn her ?
die Pfadangaben /var/lib/tftpboot/ubuntu-installer/*/*.* sind meines Wissens nach verkehrt.
TFTP root ist ja /var/lib/tftpboot/ ,also müssen die Pfadangaben ubuntu-installer/*/*.* sein.
nfsroot=192.168.178.10:/var/lib/tftpboot/ubuntu/amd64/ ro initrd=/var/libtftpboot
Oha, noch eine nfs Freigabe; stimmt die IP und die Pfadangaben ?kernel /var/li btftpboot/ubuntu/amd64/casper/vmlinuz.efi
Du wechselst von BIOS boot zu UEFI boot, das wird wahrscheinlich schiefgehen.