Hilfe bei PXE Einrichtung

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • 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

    Einmal editiert, zuletzt von Pi-User (4. Dezember 2013 um 22:41)

  • 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/http://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

    Einmal editiert, zuletzt von Pi-User (5. Dezember 2013 um 18:53)


  • 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

    Einmal editiert, zuletzt von Pi-User (8. Dezember 2013 um 10:35)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!