PXE boot with router

imageVirittelin “äkkiseltään” pystyyn PXE bootti kyvyn myös tomato reitittimelleni. Olen tähän saakka käyttänyt Serva PXE:tä, jota ajan pääserverilläni. Ajattelin vetäistä serverille muistitestin, mutta koska pääserveri on se kone, joka toimii myös PXE palvelimena, josta muistitestiohjelman lataisin homma ei toimi. Seuraava vaihtoehto olisi tehdä boottaava USB-tikku tai CD, mutta sellaisen tekemiseen menee ehkä vartti.  Joten nopeinta on vain rakentaa toinen PXE palvelin Winking smile. 8 tuntia myöhemmin voin iloisesti todeta, että reititn toimii hienosti PXE palvelimena ja useita päiviä myöhemmin voin todeta, että muistitestiä ei koskaan ajettu ! \o/ Mutta piru vie on hieno palvelu rullaamassa reitittimellä Open-mouthed smile

Keitto-ohje PXE palvelun virittämiselle Tomato firmikselle.

PXE vaatii 2 eri uutta komponenttia sekä muutoksen DHCP serverin konfiguraatioon. TFTP protokollalla siirretään data, joten sitä varten tarvitaan oma TFTP palvelin. Varsinainen boottiälli eli PXE binäärit tarvitaan ja sitten vielä pitää osata konfiguroida DHCP kertomaan PXE ympäristöstä.

TFTP

Tarvitsemme TFTP serverin, joten

ipkg-opt install atftp

Itselläni asennus päättyi virheeseen

Configuring atftp
postinst script returned status 1
ERROR: atftp.postinst returned 1
Nothing to be done
Successfully terminated.

asennuksessa itsestään ei ollut mitään vikaa, skriptin viimeinen tappokäsky vain tuottaa virheen, koska en käytä vielä mitään xined palvelua, joten editoin skriptin äkkiseltään toimimaan, muuttamalla sen aina raportoimaan onnistumisen Winking smile. Näinikkään:

vi /opt/lib/ipkg/info/atftp.postinst

lisätään viimeiselle riville

return 0

ja ajetaan

ipkg-opt upgrade

Sitten pitää konfiguroida tftpboot hakemisto. Oletuksena tftpboot hakemisto sijaitsee /opt/tftpboot – mikä ei valitettavasti minulle käy. ATFP:n konfiguraatiotiedosto löytyy hakemistosta

/opt/etc/xinetd.d/atftp

Sinne parametrien muutos ja näin TFTP on kunnossa. Kyky siirtää tiedostoja on kasassa. Sitten se boottiympäristö kasaan:

Itse PXE boottiympäristö

Sitten tarvitaan palat PXE ympäristölle. Käytän itse PXELINUX –palvelua.

  1. Imuroi syslinux-XXX.tar.gz PXELINUX sivujen kautta
  2. Pura paketista alla olevat tiedostot tftpboot/pxesys –hakemistoon
    1. lpxelinux.0
    2. pxelinux.0
    3. menu.c32
    4. ldlinux.c32
    5. libutil.c32
    6. memdisk
  3. Luo hakemisto pxelinux.cfg (- kyllä, hakemisto) tftpboot/pxesys –hakemiston alle

 

DHCP parametrit

Lisää Advanced valikkoon DHCP/DNS osuuteen Dnsmasq Custom configuraatioon rivi

dhcp-boot=pxesys/lpxelinux.0,,192.168.8.1

Like so:

Image

Nyt runko on valmis. Seuraavaksi käyn läpi peruskonffitiedostot.

Leave a Reply