Hallo zusammen,
ich möchte gerne ein Debian-System per PXE booten und zwar mit einem lokal von CD / USB gestartetem Bootloader (grub?) aus..
Normalerweise funktioniert PXE ja so, das TFTP-Server per DHCP "announced" wird.
Hier beginnt mein Problem, da ich an einer Windows Domäne "hänge", deren DHCP-Server nur den Pfad für die Windows WDS Installation veröffentlicht. Mein Debian TFTP-Server ist dem Windows Active Directory nicht bekannt und wird deshalb nicht zum booten angeboten.
Meine Wunschvorstellung wäre, wenn ich den Clients sagen könnte, von einer bestimmten IP-Adresse aus (quasi am AD vorbei) zu booten.
iPXE (von CD/USB) hatte ich mir schon einmal angesehen, bin aber wegen diverser Probleme wieder davon abgekommen.
Am liebsten hätte ich, wenn ich von den Clients aus mit einer CD / einem USB-Stick in Grub booten könnte und dann bei grub die IP-Adresse des Debian-Servers eingeben könnte. Also in etwa so:
set root=(pxe:192.168.2.73/srv/tftp/boot)
linux /vmlinuz-...
initrd /initrd-...
boot
Die Forum-Suche bezog sich überwiegend noch auf grub 0.97 und aus dem grub-Handbuch bin ich nicht ganz schlau geworden:
http://www.gnu.org/software/grub/manual ... ml#Network
Weiß jemand wie das funktioniert, oder hat es schon mal jemand gemacht?
Grub: PXE-Boot mit IP Adresse
- Livingston
- Beiträge: 1816
- Registriert: 04.02.2007 22:52:25
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: 127.0.0.1
Re: Grub: PXE-Boot mit IP Adresse
Ich habe das vor Jahren mal gemacht, bin mir aber nicht mehr ganz sicher, wie ich das gemacht habe. Soweit ich mich erinnere, lief das so ab:
*
pxelinux lokal installieren: Damit konnte ich dann aussuchen, ob das lokale System gestartet, oder ein pxe-server aus dem Netzwerk genutzt wird.
* Da sich pxelinux den Master Boot Record gekrallt hatte, kommt grub auf eine Partition des lokalen Systems. grub wird also gechainloadet. Sofern Du keine weitere Auswahl für verschiedene Kernel oder lokale Boot-Methoden brauchst, kannst Du auf grub verzichten und pxelinux das lokale Booten auch komplett überlassen.
* Wahrscheinlich lässt sich pxelinux auch so konfigurieren, dass alle lokalen Boot-Varianten darin mit verarztet werden, grub kannst Du Dir dann sparen.
Wie gesagt: Alles Jahre her, ich habe damals noch mit grub legacy gearbeitet. Leider habe ich meine Dokumentation darüber weggeschmissen. Ich hoffe, Du kommst mit den Infos ein wenig weiter.
pxelinux ist ein Derivat des Bootloaders syslinux. Wenn Du mit dem klar kommst, sollte der Rest eigentlich kein Problem mehr sein.
*
![Debian](/pics/debianpackage.png)
* Da sich pxelinux den Master Boot Record gekrallt hatte, kommt grub auf eine Partition des lokalen Systems. grub wird also gechainloadet. Sofern Du keine weitere Auswahl für verschiedene Kernel oder lokale Boot-Methoden brauchst, kannst Du auf grub verzichten und pxelinux das lokale Booten auch komplett überlassen.
* Wahrscheinlich lässt sich pxelinux auch so konfigurieren, dass alle lokalen Boot-Varianten darin mit verarztet werden, grub kannst Du Dir dann sparen.
Wie gesagt: Alles Jahre her, ich habe damals noch mit grub legacy gearbeitet. Leider habe ich meine Dokumentation darüber weggeschmissen. Ich hoffe, Du kommst mit den Infos ein wenig weiter.
pxelinux ist ein Derivat des Bootloaders syslinux. Wenn Du mit dem klar kommst, sollte der Rest eigentlich kein Problem mehr sein.
Re: Grub: PXE-Boot mit IP Adresse
Naja du kannst doch dem Windoof DHCP auch statisch also pro Host eine Konfiguration verpassen bzw Pools.
Damit gibt der DHCP eben für jeden Host einen anderen TFTP Server weiter.
Wäre glaub ich die einfachste Variante. Wir booten in der Firma alle Server über PXE und das funktioniert recht gut solange die MAC Adressen gleich bleiben![Wink ;)](./images/smilies/icon_wink.gif)
Damit gibt der DHCP eben für jeden Host einen anderen TFTP Server weiter.
Wäre glaub ich die einfachste Variante. Wir booten in der Firma alle Server über PXE und das funktioniert recht gut solange die MAC Adressen gleich bleiben
![Wink ;)](./images/smilies/icon_wink.gif)
Re: Grub: PXE-Boot mit IP Adresse
Danke erst einmal für die beiden Vorschläge.
@ Livingston:
pxelinux ist natürlich eine Alternative (die ich noch nicht kenne, die sich aber gut anhört). Bisher kenne ich nur grub und bin auch ganz gut damit gefahren. Die Clients boote ich mit grub von CD / USB und greife dann per NFS auf den Server zu. Aus Gewohnheit möchte ich möglichst auch bei einem (diesem) Bootloader bleiben, sonst wird mir das zu komplex - es sei denn, es geht nicht anders. Werde also zuerst noch ein wenig nach einer Möglichkeit für grub suchen bevor ich mich an pxelinux mache.
@ hec_tech
Ja, das ist auch eine gute Idee. Allerdings habe ich auf dem Active Directory leider keine Rechte. Klar könnte ich den externen Support darum bitten, doch möchte ich meine Konfiguration zuerst übergangsweise auf diesem Weg testen, damit die Kosten nicht zu hoch werden. Langfristig möchte ich ohnehin den GNU/Linux Netzwerkboot mit in das Windows PXE-Bootmenü einbinden lassen und meinen Debian "Server" virtualisieren lassen. Doch der externe Support ist "Windows-only" und wie gesagt zuerst muss der Linux-Part gut getestet sein und funktionieren.
@ Livingston:
pxelinux ist natürlich eine Alternative (die ich noch nicht kenne, die sich aber gut anhört). Bisher kenne ich nur grub und bin auch ganz gut damit gefahren. Die Clients boote ich mit grub von CD / USB und greife dann per NFS auf den Server zu. Aus Gewohnheit möchte ich möglichst auch bei einem (diesem) Bootloader bleiben, sonst wird mir das zu komplex - es sei denn, es geht nicht anders. Werde also zuerst noch ein wenig nach einer Möglichkeit für grub suchen bevor ich mich an pxelinux mache.
@ hec_tech
Ja, das ist auch eine gute Idee. Allerdings habe ich auf dem Active Directory leider keine Rechte. Klar könnte ich den externen Support darum bitten, doch möchte ich meine Konfiguration zuerst übergangsweise auf diesem Weg testen, damit die Kosten nicht zu hoch werden. Langfristig möchte ich ohnehin den GNU/Linux Netzwerkboot mit in das Windows PXE-Bootmenü einbinden lassen und meinen Debian "Server" virtualisieren lassen. Doch der externe Support ist "Windows-only" und wie gesagt zuerst muss der Linux-Part gut getestet sein und funktionieren.
Re: Grub: PXE-Boot mit IP Adresse
Brauchst du zum Testen PXE Boot oder nur NFSROOT?
Für NFSROOT kann ich dir sagen wie man es zum Testen konfiguriert aber leider habe ich noch keine persistente Konfiguration mit Grub2 zusammengebracht.
viewtopic.php?f=33&t=156420
lg
gregor
Für NFSROOT kann ich dir sagen wie man es zum Testen konfiguriert aber leider habe ich noch keine persistente Konfiguration mit Grub2 zusammengebracht.
viewtopic.php?f=33&t=156420
lg
gregor
Re: Grub: PXE-Boot mit IP Adresse
Hallo hec_tech,
im Moment würde mir (zum weiteren Testen) ein NFSROOT im Netzwerk reichen, allerdings nur für eine Zeit lang.
Später möchte ich ganz auf den lokalen Part (DVD/USB) verzichten und das gesamte Debian/ Grub-System in das PXE Bootmenü des Windows Active Directory integrieren (lassen).
Es geht mir dabei um die Installationsroutine von FAI, die ich im Moment noch öfter ändere und die auf den Arbeitsplatzrechnern nur zur Erstinstallation bzw. später bei Problemen ausgeführt werden soll - und nicht um einen Thinclient.
Danke für den Hinweis mit Deinem (leider noch nicht erfolgreichen) Versuch. Das würde mir immerhin das ständige neu Brennen von CDs ersparen.
Viele Grüße
Christian
im Moment würde mir (zum weiteren Testen) ein NFSROOT im Netzwerk reichen, allerdings nur für eine Zeit lang.
Später möchte ich ganz auf den lokalen Part (DVD/USB) verzichten und das gesamte Debian/ Grub-System in das PXE Bootmenü des Windows Active Directory integrieren (lassen).
Es geht mir dabei um die Installationsroutine von FAI, die ich im Moment noch öfter ändere und die auf den Arbeitsplatzrechnern nur zur Erstinstallation bzw. später bei Problemen ausgeführt werden soll - und nicht um einen Thinclient.
Danke für den Hinweis mit Deinem (leider noch nicht erfolgreichen) Versuch. Das würde mir immerhin das ständige neu Brennen von CDs ersparen.
Viele Grüße
Christian
Re: Grub: PXE-Boot mit IP Adresse
Mmmh, ich weiss jetzt ned so recht ob ich Dein Problem richtig verstanden habe, aber ich beziehe meine IP-Adresse auch von einem Win DHCP Server für die PXE Clients, und zwar über dnsmasq. Der kann das über die so genannte Proxy Funktion. Hier mal meine Beispielkonfiguration aus der dnsmasq Konfigurationsdatei:
In meinem Beispiel habe ich auf dem PXE Server (ist übrigens eine QEMU VM, braucht man keine Büchse für) das mit folgenden Paketen installiert:
syslinux 6.03, pxelinux 6.03, dnsmasq 2.73
Code: Alles auswählen
port=0
domain-needed
bogus-priv
filterwin2k
#log enabling in /var/log/syslog
#log-dhcp
#log-queries
enable-tftp
tftp-root=/srv/tftp
mx-host=[*** Deine *** Maildomäne in FQDN],[IP-Adresse MX-Host],50
dhcp-option=option:ntp-server,[IP-Adresse NTP]
dhcp-option=option:domain-search,[Win Domäne FQDN]
# guckst Du in dnsmasq man oder config wegen der dhcp-Optionen
dhcp-range=[IP-Adressbereich, Maske],proxy
dhcp-option=6,[IP-Adresse]
dhcp-option=19,0
dhcp-option=23,50
dhcp-option=42,[IP-Adresse]
dhcp-option=44,[IP-Adresse]
dhcp-option=45,[IP-Adresse]
dhcp-option=46,8
pxe-prompt="PXE Auswahl mit Taste F8 ...", 2
pxe-service=x86PC,"Netzwerk-Start ...",pxelinux
pxe-service=x86PC,"Windows Installation von [Dein Windows Installations-Server] ...", 1, [IP-Adresse dieses Servers]
syslinux 6.03, pxelinux 6.03, dnsmasq 2.73
Viele Grüße, ralfi
Niveau sieht von unten oft wie Arroganz aus ...
Niveau sieht von unten oft wie Arroganz aus ...