Changes between Version 32 and Version 33 of WikiStart


Ignore:
Timestamp:
Feb 13, 2014, 3:44:27 PM (11 years ago)
Author:
walter
Comment:

pxe edit

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v32 v33  
    569569
    570570
    571 Als je nu je soekris 4826 via pxe laat booten dan zie je dat die de pxelinux.0 payload laad echter zie je nog geen installatie menu en kun je nog niet verder! Op een pc/laptop pxe-client zie je wel op het vga scherm een menu met uitgebreiden mogelijkheden om debian te installeren. Het installatie menu van de syslinux bootloader werkt wel enkel voor pc/laptop, door het syslinux configuratie bestand(en) aan te passen kun je ervoor zorgen dat het menu ook via de seriele port te zien is.
    572 
    573 Seriele console support toevoegen aan syslinux bootloader (gebruikt in debian netinstall)
     571=== Boot Menu ===
     572Als je nu je soekris 4826 via pxe laat booten dan zie je dat die de pxelinux.0 payload laad, echter zie je nog geen installatie menu en kun je nog niet verder! Op een pc/laptop pxe-client zie je wel op het vga scherm een menu met uitgebreiden mogelijkheden om debian te installeren. Het installatie menu van de syslinux bootloader werkt standaard voor pc/laptop vga console, door het syslinux configuratie bestand(en) aan te passen kun je ervoor zorgen dat het menu ook via de seriele console te zien is.
     573
     574Seriele console support toevoegen aan syslinux bootloader (gebruikt in debian netinstall). Alhoewel er maar 1 config bestand hoeft te zijn "syslinux.cfg" die het menu beschrijft met mogelijke bootopties, komt de debian net install met talloze txt en submenu-tjes die het editen wat onoverzichtelijk maakt! Dit is pas een probleem als je meerdere OS's aan het menu wil toevoegen, of via de serial console boot-parameters wil editen(die zie je dan niet/goed).
     575
     576/mnt/sda3/tftproot/debian-installer/i386/boot-screens/syslinux.cfg
     577{{{
     578CONSOLE 1           #0=serial only, 1=vga&serial
     579SERIAL 0 38400 0    #0=serialport com 1, 0=8n1 software mode
     580}}}
     581
     582
     583{{{
     584LABEL bootlocaldisk
     585  MENU DEFAULT
     586  MENU LABEL bootlocal disk
     587    localboot 0x80
     588    append SLX=0x80
     589}}}
    574590
    575591=== DHCP + TFTP + NFS ===
    576 PXE boot functionaliteit kan/moet uitgebreid worden met het NFS protocol, om bijvoorbeeld linux desktop livecd's te booten via het netwerk of FREEBSD 9.2 of hogere installatie uit te voeren! Dit omdat niet altijd in een keer zo'n groot iso bestand in het ram geladen van de PXE-client pc geladen kan worden, of omdat betreffend OS zich zelf niet meer kan vinden als deze als iso in het ram geheugen is geladen en hij blijft zoeken naar een CDROM drive die niet bestaat voor zijn installatie bestanden memdisk/mfs ontbreekt in dit geval! Als OS's zullen we ubuntu 10.0.4.4 en 12.04.4 live desktop en FREEBSD 10 CDROM live/install disk nemen. Nogmaals de iso's worden in dit geval wel uitgepakt/loopmount, omdat via nfs eerder besproken bezwaren hierdoor weggenomen worden.
    577 
    578 ubuntu
     592PXE boot functionaliteit kan/moet uitgebreid worden met het NFS protocol, om bijvoorbeeld linux desktop livecd's te booten via het netwerk of FREEBSD 9.2 of hogere installatie uit te voeren! Dit omdat niet altijd in een keer zo'n groot iso bestand in het ram geladen van de PXE-client pc geladen kan worden, of omdat betreffend OS zich zelf niet meer kan vinden als deze als iso in het ram geheugen is geladen en hij blijft zoeken naar een CDROM drive die niet bestaat voor zijn installatie bestanden (kernel module memdisk/mfs ontbreekt in dit geval)! NFS zelf bestaat weer uit twee onderdelen exports/portmap
     593
     594Als OS's zullen we ubuntu 10.0.4.4 en 12.04.4 live desktop en FREEBSD 10 CDROM live/install disk nemen en zullen dit toevoegen aan het bestaande/eerdere debian install menu. Nogmaals de iso's worden in dit geval wel uitgepakt/loopmount, omdat via nfs eerder besproken bezwaren hierdoor weggenomen worden. Om iso bestanden te kunnen mounten onder openwrt moeten er wat kernel modules geladen worden, de freebsd installatie bestanden moeten echt gekopieerd worden omdat er namelijk een paar bestanden/mappen gewijzigd/toegevoegd worden voordat de PXE + NFS install functioneerd!
     595
     596openwrt install iso / nfs packages
     597{{{
     598opkg update
     599opkg install kmod-fs-iso9660
     600opkg install kmod-loop
     601opkg install kmod-nfs-server
     602}}}
     603
     604prepare files ubuntu 10.04.4-i386
    579605{{{
    580606mkdir -p /mnt/sda3/cdroms
    581 mkdir -p /mnt/sda3/exports/ubuntu10.0.4.4
     607mkdir -p /mnt/sda3/exports/ubuntu10.04.4-i386
     608mkdir -p /mnt/sda3/tftproot/ubuntu10.04.4-i386ki
    582609cd /mnt/sda3/cdroms
    583610wget http://old-releases.ubuntu.com/releases/lucid/ubuntu-10.04.4-desktop-i386.iso
    584 
     611mount -t iso9660 -o loop ubuntu-10.04.4-desktop-i386.iso /mnt/sda3/exports/ubuntu10.04.4-i386
     612cp /mnt/sda3/exports/ubuntu10.04.4-i386/casper/vmlinuz /mnt/sda3/exports/ubuntu10.04.4-i386/casper/initrd.lz /mnt/sda3/tftproot/ubuntu10.04.4-i386ki
     613}}}
     614
     615/mnt/sda3/tftproot/debian-installer/i386/boot-screens/menu.cfg #add bootmenu items
     616{{{
     617LABEL ubuntu-10.04.4-desktop-i386
     618  MENU LABEL ubuntu-10.04.4-desktop-i386
     619    KERNEL ubuntu10.04.4-i386ki/vmlinuz
     620    APPEND initrd=ubuntu10.04.4-i386ki/initrd.lz root=/dev/nfs boot=casper netboot=nfs nfsroot=10.0.0.1:/mnt/sda3/exports/ubuntu10.04.4-i386 file=/preseed/ubuntu.seed --
     621
     622    LABEL ubuntu-12.04.1-desktop-i386
     623  MENU LABEL ubuntu-12.04.1-desktop-i386 PAE,CMOV
     624    KERNEL ubuntu12041-32/vmlinuz
     625      APPEND initrd=ubuntu12041-32/initrd.lz root=/dev/nfs boot=casper netboot=nfs nfsroot=10.0.0.1:/mnt/sda3/exports/ubuntu12041-32 --
     626
     627LABEL ubuntu-14.04.p-desktop-amd64
     628  MENU LABEL ubuntu-14.04.p-desktop-amd64 pre-release feb6tf2014
     629    KERNEL ubuntu1404p-64/vmlinuz.efi
     630      APPEND initrd=ubuntu1404p-64/initrd.lz  root=/dev/nfs boot=casper netboot=nfs nfsroot=10.0.0.1:/mnt/sda3/exports/ubuntu1404p-64 --
    585631}}}
    586632
    587633FreeBSD 9.2/10
    588 {{{
    589 
    590 }}}
    591 
    592 == Links ==
     634
     635prepare files FreeBSD 10 disc1 iso
     636{{{
     637mkdir -p /mnt/sda3/exports/freebsd-temp
     638mkdir -p /mnt/sda3/exports/freebsd10-i386-disc1
     639mkdir -p /mnt/sda3/tftproot/freebsd10-i386-ki
     640cd /mnt/sda3/cdroms
     641wget http://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/ISO-IMAGES/10.0/FreeBSD-10.0-RELEASE-i386-disc1.iso
     642mount -t iso9660 -o loop FreeBSD-10.0-RELEASE-i386-disc1.iso /mnt/sda3/exports/freebsd-temp
     643
     644cd /mnt/sda3/exports/freebsd-temp
     645cp boot/pxeboot /mnt/sda3/tftproot/freebsd10-i386-ki
     646cp -a * /mnt/sda3/exports/freebsd10-i386-disc1
     647cp -a .cshrc /mnt/sda3/exports/freebsd10-i386-disc1
     648cp -a .profile /mnt/sda3/exports/freebsd10-i386-disc1
     649cp -a .rr_moved /mnt/sda3/exports/freebsd10-i386-disc1
     650
     651mkdir jails
     652mkdir -p conf/base/jails
     653mkdir conf/default
     654chmod -R 777 conf
     655chmod -R 777 jails
     656
     657}}}
     658
     659etc/fstab #comment FREEBSD_INSTALL mount!
     660{{{
     661#/dev/iso9660/FREEBSD_INSTALL / cd9660 ro 0 0
     662}}}
     663
     664etc/rc.conf #add following line
     665{{{
     666root_rw_mount="NO"
     667}}}
     668
     669{{{
     670LABEL freebsd10-i386nfspxeboot
     671  MENU LABEL freebsd10 i386 pxeboot nfs
     672    pxe freebsd10-i386-ki/pxeboot
     673
     674LABEL freebsd8.4-i386mfsiso
     675  MENU LABEL freebsd8.4 i386 mfs memdisk iso
     676      KERNEL memdisk
     677      APPEND initrd=freebsdx/FreeBSD-8.4-RELEASE-i386-bootonly.iso iso raw
     678}}}
     679
     680/etc/config/dhcp #additional dhcp parameter to supply nfs address
     681{{{
     682config boot linux
     683        ...
     684
     685        ...
     686        list   dhcp_option      'option:root-path,10.0.0.1:/mnt/sda3/exports/freebsd10-i386' #NFS only, needed for dumb OS FREEBSD which cannot find the NFS server
     687}}}
     688
     689/etc/exports
     690{{{
     691/mnt/sda3/exports/ubuntu10.04.4-i386 10.0.0.1/24(ro,no_root_squash,no_subtree_check,async)
     692/mnt/sda3/exports/ubuntu12041-32 10.0.0.1/24(ro,no_root_squash,no_subtree_check,async)
     693/mnt/sda3/exports/ubuntu1404p-64 10.0.0.1/24(ro,no_root_squash,no_subtree_check,async)
     694/mnt/sda3/exports/freebsd10-i386-disc1 10.0.0.1/24(ro,sync,no_root_squash,no_subtree_check)
     695}}}
     696
     697== Links / References==
     698* [https://www.rubysecurity.org/freebsd_pxe-diskless-boot FREEBSD 9 disc1 iso PXE boot install]
    593699* [http://ubuntuforums.org/showthread.php?t=1969041 pxe +nfs ubuntu/debian]
    594700* [http://wiki.hwmn.org/w/PXE_with_serial_console pxe boot]