Slik konfigurerer du nettverksoppstartbare verktøyplater ved hjelp av PXE
Vi har vist deg hvordan du kan starte oppstart av Ubuntu LiveCD. I denne artikkelen vil vi vise hvordan du kan lage noen andre nettverksstartbarheter, noe som vil gi deg kunnskapen om å gjenskape prosedyren for andre verktøy du kan bruke.
Merk: Denne artikkelen er ikke rettet mot nybegynnere, men du er velkommen til å fortsette å lese!
Bilde av Steve Jurvetson
Oversikt
Denne veiledningen tar sikte på å gi deg verktøyene som du vil kunne konvertere verktøy til, være PXEable. Mens det dessverre ikke er mulig å konvertere verktøy under solen, ville vi ikke være nerd hvis vi ikke prøvde minst.
Som nevnt i veiledningen "How to Network Boot (PXE) The Ubuntu LiveCD", Hvis du ikke allerede bruker Ubuntu som nummer et "gå til" for å feilsøke, diagnostisere og redde prosedyrer, hva venter du på?
Med det sagt må man erkjenne at det er ting som bare ikke kan gjøres innenfor Ubuntu LiveCD (som BIOS-oppgraderinger), eller at du allerede bruker et annet verktøy du liker og helst vil fortsette å bruke uansett grunn.
Anbefalinger, antagelser og forutsetninger
- Det antas at du allerede har konfigurert FOG-serveren som forklart i vår "Hva er nettverksstarting (PXE) og hvordan kan du bruke den?" Guide.
- Du vil se "VIM" -programmet som brukes som redaktør, dette er hovedsakelig fordi det er allment tilgjengelig på Linux-plattformer. Du kan bruke andre redaktører som du vil.
- Den Ultimate Boot CD (UBCD) brukes som et eksempel, i motsetning til noen andre verktøy samlinger, er det gratis å laste ned og programmene det bundler er gratis å bruke.
Hvorfor ikke bare bruke ISO over PXE?
Dette er ofte det første spørsmålet som blir spurt når du snakker om PXEing. Det korte svaret er at mens det teknisk er det mulig å ta et ISO-bilde og PXE det til klientmaskinene, vil det nesten alltid være innholdet i ISO-en, som forventer at den fysiske manifestasjonen av seg selv er tilgjengelig i den fysiske CD-ROM-stasjonen. Derfor, hva innholdet av ISO-en kan være, vil det forsøke å lete etter "post boot-sektor" -filene i den fysiske CD-ROM-stasjonen på klientmaskinen, vil ikke finne dem og mislykkes å starte opp.
De to måtene å overvinne dette problemet er:
- Brenn ISO og sett den i CD-ROM-stasjonen på klientmaskinen - mens det er enkelt, Ikke bruker CDer, er akkurat det vi prøver å unngå ...
- Åpne ISO og endre måten programmet fungerer på, slik at det bruker en CD-ROM sjåfør det vet hvordan man skal lete etter ISO i RAM - Rett komplekst og forskjellig for alle typer oppstartsprogram. DVS. ikke samme fremgangsmåte for Linux, WinPE eller UBCD for å nevne noen.
Som begge de ovennevnte nederlag målet om "bare å bruke en ISO", er det derfor vi ikke anbefaler å forfølge dette arbeidet.
Kernelmetoden
Selv om det er svært sjeldent, kan programmet du prøver å starte opp, bare trenge en kjerne for å fungere. Et typisk eksempel på dette er "memtest86 +". Memtest leveres sammen med de fleste Linux-distribusjonsinstallasjons-CDer og med FOG. Som Memtest trenger bare å kunne kommunisere med de mest grunnleggende egenskapene til den testede maskinvaren, I.E. minnet (RAM), og kan fungere helt fint uten at det til og med fullt ut støtter maskinvaren det kjører på (IE det vil teste minnet, selv om det ikke vet at det er type, hastighet og etc), har det ikke noe behov for noe ellers og kan fungere helt autonomt.
PXE menyoppføring for memtest kan se så enkelt ut som:
LABEL Kjør Memtest86+
kjerne tåke / memtest / memtest
føyer -
I dette eksempelet angir "LABEL Run Memtest86 +" navnet på oppføringen, "Kjerne tåke / memtest / memtest" forteller PXElinux hvor du skal ta kjernen som skal sendes til klienten fra og "legge til -" forteller PXElinux å ignorere ekstra boot alternativer fra * arv.
* Merk: Avhengig av oppsettet, kan dette ikke engang kreves, og faktisk i FOG, blir det ikke brukt.
Kernel + Initrd-metoden
Denne metoden er uten tvil den mest brukte og bredt spredt av et par grunner:
- Mange verktøy kommer i dag fra Linux-verdenen.
- Fordi Linux har god maskinvarestøtte og er fri til bruk, innser flere og flere bedrifter at Linux er en utmerket base for å bygge sine proprietære programmer på.
Lar oss bruke UBCDs CPUstress verktøy som et eksempel.
På UBCD-filstrukturen ligger dette verktøyet i katalogen "ubcd / boot / cpustress". Filene vi leter etter, kalles "bzImage", som er "kjernen" og "initrd.gz" som er den "innledende ramdisken". Hvis du bruker FOG-oppsettet vi opprettet, anbefaler vi at du kopierer katalogen under "/ tftpboot / howtogeek / utils". Når du er ferdig, rediger filen "/tftpboot/howtogeek/menus/utils.cfg" og legg til den oppstartsposten som finnes på UBCDs menyoppføringer. Dette kan du finne i "ubcd / menyer / syslinux / cpu.cfg". Med justeringene for FOG-oppsettet, bør menyoppføringen se ut som:
MENY ETIKETT StressCPU V2.0 (krever CPU med SSE)
TEKSTHJELP
Tortur-test CPUen din for å forsikre deg om at du ikke har overoppheting
problemer. Krever SSE-utstyrte x86-CPUer. Utfører en spesiell versjon av
Gromacs innerloops som blander SSE og vanlige monteringsanvisninger for å varme
din CPU så mye som mulig.
ENDTEXT
KERNEL howtogeek / utils / cpustress / bzImage
INITRD howtogeek / utils / cpustress / initrd.gz
APPEND root = / dev / ram0 ramdisk_size = 12000 noapic ubcdcmd = stresscpu2
Hvor :
- MENY LABEL - angir navnet på oppføringen
- TEKSTHJELP - Dette valgfrie direktivet gir hjelpetekst som vises i menyen for å gi informasjon om den valgte oppføringen.
- KERNEL - Angir plasseringen av kjernefilen i TFTPD-katalogen.
- INITRD - det samme som ovenfor bare for "initrd" -filen.
- APPEND - Angir tilleggsparametere som skal sendes til det oppstartede programmet.
Et par ting å merke seg er:
- Hardcore geeks ville merke at vi erstattet det opprinnelige direktivet om "LINUX" med "KERNEL". Dette skyldes: A. Dette gjør eksemplet lettere å lese. B. I dette eksemplet spiller det ingen rolle.
Med det sagt, vanligvis når direktivet "LINUX" brukes, er det bedre å la det på den måten fordi det forteller pxelinux / syslinux at vi ikke bruker bare noen kjerne, men en Linux en. - Vi har bevisst tatt det "stille" direktivet ut av de vedlagte parametrene. Dette skyldes en endring i hvordan Syslinux håndterer "stille" parameteren i nyere versjoner.
- Det er mulig å endre driften av "StressCPU" -programmet ved å bare endre den vedlagte parameteren "ubcdcmd". Så for å kunne bruke de andre funksjonene trenger man bare å kopiere oppføringen og erstatte "stresscpu2" for å være: cpuinfo, cpuburn eller mprime24.
Selv om dette er et veldig enkelt eksempel, bør det være nok til å komme i gang.
Kernel + Initrd + NFS-metoden
Denne metoden, er den vi brukte på "How to Network Boot (PXE) The Ubuntu LiveCD" guide. Denne metoden bygger på den forrige og benytter det faktum at enkelte Linux-distribusjoner støtter å ha sitt "root filesystem" montert fra NFS. Ubuntu-guiden er et utmerket eksempel, men vær trygg på at vi allerede har planlagt en annen i nær fremtid. "Hold øynene åpne for en svart sopp".
MEMDISK-metoden
MEMDISK er et verktøy som distribueres med Syslinux-pakken. Formålet med dette verktøyet er å gjøre det mulig å etterligne en "disk" (hovedsakelig refererer til disketter) ved hjelp av bildet. Måten dette verktøyet fungerer på, er å koble til stedet i RAM som spesifiserer hvordan du kommuniserer med diskettstasjonen (A.K.A. Interrupt handler) og peker den til en ny plassering som håndteres av MEMDISK-programmet. Med denne metoden er "kjernen" MEMDISK-verktøyet, og "initrd" er diskettfilen (.img) -filen.
Den eneste tingen å merke seg er at FOG kommer med en "memdisk" -versjon som er kompatibel med pxelinux.0 versjonen den bruker. Derfor anbefales det ikke å kopiere "memdisk" -filen som følger med "img" -filen fra sin kilde.
Siden denne metoden allerede er mye brukt, selv for vanlige verktøy og BootCDer, er det mest enkelt å finne "IMG" -filen på BootCD, kopiere den til PXEs server TFTPD-katalog og kopiere ISOlinux-menyoppføringen til PXElinux-menyen.
De sier "snakk er billig", så vi kan se hvordan vi kan tilpasse en av verktøyene som bruker MEMDISK-metoden fra UBCD, for å jobbe fra PXE.
TestMemIV-verktøyet kan finnes på UBCD-filstrukturen på "ubcd / images / testmem4.img.gz". Siden vi allerede har minneverktøyet, må man bare kopiere "img" -filen til "howtogeek / utils /" -katalogen. Med justeringene for FOG-oppsettet, bør menyoppføringen se ut som:
MENU LABEL TestMemIV
TEKSTHJELP
Tester systemminne og minne på Nvidia-videokort.
ENDTEXT
LINUX memdisk
INITRD howtogeek / utils / testmem4.img.gz
Selv om dette er et eksempel på en selvstendig diskettfilfil fra UBCD, bruker de fleste av de andre UBCD-programmene det samme basebildet til å begynne å fungere (fdubcd.img.gz) og bruker parameteren "ubcdcmd" til å autostart et program fra CD-ROM-oppstart. Dette betyr at du ikke kan konvertere de fleste av verktøyene sine for å være nettverksstartbar uten noen større revers engineering. Mens en slik omvendt prosjektering er mulig (som det kan ses her) og er en utmerket geekøvelse, er det utenfor rammen av denne veiledningen.
Med det ovennevnte har du nå verktøyene for å utføre denne prosedyren for det esoteriske OEM-diagnostiske eller BIOS-oppgraderingsverktøyet.
Og så, låst forbi Blood Gateway og forbi ildhallen, venter Valor for lysets helt å vekke ...