Hilfe bei PXE Einrichtung

  • Guten Abend zusammen,


    Ich habe mir mal den Spaß erlaubt und einen kleinen PXE Server eingerichtet :D
    Ich bin nach der Anleitung von Heise vorgegangen.


    Es funktioniert alles soweit, das die Clients eine IP zugewiesen bekommen, jedoch weiß ich nicht, wie man das Bootmenü konfigurieren muss, welche Dateien da benötigt werden.


    Ich kann vom Server nix starten, egal was ich versuche.
    Hat da villeicht jemand eine Idee, wie das funktionieren könnte?


    Grüße


    Pi-User

    Edited once, last by Pi-User ().

  • In meinem LAN hatte ich PXE mal für diverse Distros eingerichtet. Sieh mal hier nach ob das Dir weiterhilft.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert :fies: Bei mir tut das raspiBackup automatisch :shy:

  • Er will die Pi als PXE Server einsetzen .. nicht als Client :shy:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."

    Linus Benedict Torvalds, 28.9.2003


    Hast Du die Woche schon Deine Raspberry gesichert :fies: Bei mir tut das raspiBackup automatisch :shy:

  • Eigentlich ist auf der heise-Seite alles beschrieben.
    Für neue Einträge kann man analog vorgehen.


    Also:
    die Datei /etc/dnsmasq.d/desinfect erweitern. Z.B. so:


    Code
    port=0
    log-dhcp
    enable-tftp
    tftp-root=/srv/tftp
    dhcp-range=192.168.3.0,proxy
    pxe-prompt="Taste F8 zeigt Auswahl",10
    pxe-service=X86PC,"OpenSuse",fokus/pxelinux
    pxe-service=X86PC,"Mit Desinfec't starten",ct/pxelinux
    pxe-service=X86PC,"Starten von Festplatte",0



    Ein neues Verzeichnis anlegen, in meinem Beispiel also /srv/tftp/fokus.
    Dort sieht es so aus:


    Code
    lrwxrwxrwx 1 root root   30 27. Apr 2013  pxelinux.0 -> /usr/share/syslinux/pxelinux.0                                     
    drwxr-xr-x 2 root root 4096 21. Nov 16:00 pxelinux.cfg                                                                     
    lrwxrwxrwx 1 root root   16 21. Nov 13:17 suse -> /iso/suse13.1-32


    Die Datei /srv/tftp/fokus/pxelinux.cfg/default dann so :

    Code
    LABEL opensuse13.1
    
    
            MENU LABEL OpenSuse
            DEFAULT suse/boot/i386/loader/linux initrd=suse/boot/i386/loader/initrd ip=dhcp


    In diesem Beispiel wird eine Installation-DVD von OpenSuse gestartet, die als ISO-Datei auf dem Server liegt und in das Verzeichnis /iso/suse13.1-32 gemountet ist.


    Mit einem Eintrag wie:


    Code
    DEFAULT suse/boot/vmlinuz netboot=nfs root=/dev/nfs ip=dhcp nfsroot=192.168.3.20:/mnt/nexus/suse12.2-remote initrd=suse/boot/initrd


    läßt sich ein Linux starten.


    Natürlich passen die Pfade nur mit meinem Beispiel und müssen angepasst werden. Die LABELs kann man beliebig setzen.

    Keep it simple [,&] stupid

  • Danke für diesen Beitrag :thumbs1:,


    Aber genau da liegt mein Problem. Ich verstehe noch nicht so ganz, mit welchen befehlen man da Arbeiten muss. Was ist dies vmlinuz oder initrd für eine Datei, die da in diesem Befehl auftauchti?
    Habe es bisher nur geschaft, das ich mit Menu.c32 ein grafisches Auswahlmenü bekomme, da hört es dann aber auch schon auf.


    Kennst du eine möglicheit, das ich über den PXE GRUB4DOS starten könnte? Habe bisher nur mit dem gearbeitet und schon einen bootfäghigen stick hinbekommen.
    Versuche ich GRUB4DOS aber über Menu.c32 mit dem Befehl


    LABEL grub4dos.pxe
    MENU LABEL GRUB4DOS with PXE
    kernel /grub.exe

    zu starten, ladet er mit grub4dos zwar, findet aber die Menu.lst nicht
    Wenn er die laden würde, könnte ich meine Listen alle weiterverwenden


    Hättest du da eine Idee?


    Grüße


    Pi-User

    Edited once, last by Pi-User ().



  • Danke für diesen Beitrag :thumbs1:,


    Aber genau da liegt mein Problem. Ich verstehe noch nicht so ganz, mit welchen befehlen man da Arbeiten muss.
    Habe es bisher nur geschaft, das ich mit Menu.c32 ein grafisches Auswahlmenü bekomme, da hört es dann aber auch schon auf :(


    Kennst du eine möglicheit, das ich über den PXE GRUB4DOS starten könnte? Habe bisher nur mit dem gearbeitet und schon einen bootfäghigen stick hinbekommen.
    Versuche ich GRUB4DOS aber über Menu.c32 mit dem Befehl


    LABEL grub4dos.pxe
    MENU LABEL GRUB4DOS with PXE
    kernel /grub.exe

    zu starten, ladet er mit grub4dos zwar, findet aber die Menu.lst nicht :(
    Wenn er die laden würde, könnte ich meine Listen alle weiterverwenden


    Hättest du da eine Idee?


    Grüße


    Pi-User

  • Sorry, aber bei grub4dos kann ich dir nicht weiterhelfen.
    MS-DOS, nee, da lad ich mir doch was Vernünftiges :no_sad:
    Aber mit "grub4dos PXE" habe ich bei Google genug Infos.


    Der Rest ist einfacher.
    Egal ob mit grub, grub2, lilo oder pxe gebootet, die notwendigen Informationen müssen vorliegen.


    Also bei Linux zunächst der Ort und der Name des Betriebssytemkerns.
    Im Beispiel ist es suse/boot/vmlinuz
    Schau ich in das Verzeichnis /boot steht da z.B.:


    OpenSuse 13.1

    Code
    lrwxrwxrwx  1 root root       24 25. Nov 14:12 vmlinuz -> vmlinuz-3.11.6-4-desktop
    -rw-r--r--  1 root root  5210216  1. Nov 19:33 vmlinuz-3.11.6-4-desktop


    Debian 7.1

    Code
    -rw-r--r--  1 root root  2835648  Sep 20 05:46 vmlinuz-3.2.0-4-amd64


    Im 1. Fall ist vmlinuz also ein Link auf den Kernel, im 2. Fall muss man den vollen Namen einsetzen oder einen Link setzen.


    Der Kernel kann "nur" die Grundfunktion des Betriebssystems. Entsprechend der verwendeten Hardware müssen noch weitere Module (z.B. Treiber) geladen werden.
    Dies kann man nun einzeln - oder in einer Datei zusammen gefasst machen. Dies ist die initrd.
    Diese wird bei der Installation gebildet, kann man auch selbst machen, ist aber eine eigene Geschichte.


    Da wir über Netzwerk booten wollen, brauchen wir sehr früh eine Netzwerkadresse. Mit ip=dhcp hoffen wir, dass wir eine erhalten.
    Die ganz harte Tour ist:
    ip=192.168.3.22:192.168.3.20:192.168.3.1:255.255.255.0:fokus:eth0:none:192.168.3.1


    Dann muss gesagt werden, wo ist die Wurzel des Dateisystems, was wird nach / gemountet?
    Dies ist hier ein über einen nfs-Server freigegebenes Verzeichnis.


    Es gibt noch eine ganze Menge weiterer Parameter, die man mitgeben kann. Beispiele sind über den Link von framp zu finden.


    Über Netzwerk booten ist ein spannendes Thema, kann aber beliebig komplex sein.

    Keep it simple [,&] stupid

  • Guten Morgen zusammen,


    nach langem rumprobieren und suche im Internet habe ich es endlich geschaft das ich etwas vom PXE gestartet bekomme :)


    Habe es geschaft mit hilfe von Memdisk Iso Dateien zu starten. Das dauert zwar sehr lange, funktioniert jedoch schonmal.


    Code
    LABEL Kaspersky
    MENU Kaspersky
    KERNEL memdisk
    INITRD /iso/rescue.iso
    APPEND iso


    Habe es auch dank einer Anleitung geschaft, AVG ohne Memdisk einzubinden


    Code
    MENU LABEL AVG Rescue CD 
        KERNEL /iso/avg/isolinux/vmlinuz
        INITRD /iso/avg/isolinux/initrd.lzm


    jetzt werde ich mal versuchen, dies abzuleiten um die Programme schneller starten zu können


    Grüße


    Pi-User

    Edited once, last by Pi-User ().