Sådan opsætes Netværks Bootable Utility Discs ved hjælp af PXE
Vi har vist dig, hvordan du opretter forbindelse til Ubuntu LiveCD. I denne artikel vil vi vise, hvordan du laver nogle andre værktøjer til netværksopstart, hvilket vil give dig viden om at gentage proceduren for andre værktøjer, du muligvis bruger.
Bemærk: Denne artikel er ikke rettet mod begyndere, men du er velkommen til at fortsætte med at læse!
Billede af Steve Jurvetson
Oversigt
Denne vejledning har til formål at give dig de værktøjer, som du vil være i stand til at konvertere værktøjer til at være PXEable. Mens det desværre ikke er muligt at konvertere noget værktøj under solen, ville vi ikke være nørder, hvis vi ikke prøvede mindst.
Som nævnt i vejledningen "How to Network Boot (PXE) Ubuntu LiveCD", hvis du ikke allerede bruger Ubuntu som dit nummer et "gå til" til fejlfinding, diagnostik og redningsprocedurer, hvad venter du på?
Med det sagt må man erkende, at der er ting, der simpelthen ikke kan gøres inden for Ubuntu LiveCD (som BIOS-opgraderinger), eller at du allerede bruger et andet værktøj, du kan lide, og vil hellere fortsætte med at bruge uanset årsag.
Anbefalinger, antagelser og forudsætninger
- Det antages, at du allerede har konfigureret FOG-serveren som forklaret i vores "Hvad er netværksstart (PXE) og hvordan kan du bruge det?" Guide.
- Du vil se "VIM" -programmet, der bruges som redaktør, det skyldes hovedsageligt, at det er bredt tilgængeligt på Linux-platforme. Du kan bruge enhver anden editor, du gerne vil have.
- Ultimate Boot CD (UBCD) bruges som et eksempel, i modsætning til nogle andre nytteværdier samlinger, er det gratis at downloade og de programmer, det bundler er gratis at bruge.
Hvorfor ikke bare bruge ISO over PXE?
Dette er ofte det første spørgsmål, der stilles, når man taler om PXEing. Det korte svar er, at mens det teknisk set er muligt at tage et ISO-billede og PXE det til klientmaskinerne, vil næsten altid indholdet af ISO'en forvente at få den fysiske manifestation af sig selv tilgængelig i det fysiske cd-rom-drev. Derfor kan hvad som helst indholdet af ISO'en være, det forsøger at søge efter "post boot-sector" -filerne i den fysiske cd-rom-drev på klientmaskinen, vil ikke finde dem og svigte at starte.
De to måder at overvinde dette problem på er:
- Brænd ISO og læg det i cd-rom-drevet på klientmaskinen - mens det er enkelt, Ikke ved hjælp af cd'er er det præcis det, vi forsøger at undgå ...
- Åbn ISO og ændre måden programmet fungerer på, så det bruger en cd-rom chauffør der ved, hvordan man kigger efter ISO i RAM - Rigtig kompleks og forskellig for alle typer opstartsprogrammer. DVS. ikke den samme procedure for Linux, WinPE eller UBCD for at nævne nogle få.
Da begge ovennævnte nederlag er målet om at "bare bruge en ISO", er det derfor vi ikke anbefaler at forfølge denne indsats.
Kernelmetoden
Selvom det er meget sjældent, kan det program, du prøver at starte, undertiden kun kræve, at et kerne fungerer. Et typisk eksempel på dette er "memtest86 +". Memtest leveres sammen med de fleste Linux distributioner installations-cd'er og med FOG. Da Memtest kun behøver at kunne kommunikere med de mest basale evner i den testede hardware, I.E. hukommelsen (RAM) og kan fungere fint uden helt selv at understøtte den hardware, den kører på (IE det vil teste hukommelsen, selvom den ikke ved, at den er type, hastighed og osv.), har den ikke brug for noget ellers og kan arbejde helt autonomt.
PXE-menuindgangen til memtest kan se så simpelt ud som:
LABEL Kør Memtest86+
kerne tåge / memtest / memtest
Tilføj -
I dette eksempel angiver "LABEL Run Memtest86 +" navnet på posten, "kernel tåge / memtest / memtest" fortæller PXElinux hvor du skal tage kernen, der sendes til klienten fra og "append -" fortæller PXElinux at ignorere Yderligere boot muligheder fra * arv.
* Bemærk: Det afhænger måske ikke af dit setup, og det kan ikke engang kræves, og faktisk i FOG, er det ikke brugt.
Kernel + Initrd-metoden
Denne metode er langt den mest almindeligt anvendte og bredt spredt af et par grunde:
- En masse hjælpeprogrammer kommer i dag fra Linux-verdenen.
- Fordi Linux har stor hardware support og er gratis at bruge, indser flere og flere virksomheder, at Linux er en glimrende base for at opbygge deres proprietære programmer på.
Lad os bruge UBCDs CPU-stressværktøj som et eksempel.
På UBCD-filstrukturen er dette værktøj placeret i biblioteket "ubcd / boot / cpustress". De filer, vi leder efter, kaldes "bzImage", som er "kernen" og "initrd.gz", som er "initial ram disk". Hvis du bruger den FOG-opsætning, vi oprettede, anbefaler vi at du kopierer mappen under "/ tftpboot / howtogeek / utils". Når du har gjort det, rediger du filen "/tftpboot/howtogeek/menus/utils.cfg" og tilføjer den opstart, der findes på UBCDs menuposter. Dette kan findes i "ubcd / menuer / syslinux / cpu.cfg". Med justeringerne for FOG-opsætningen skal menupunktet se ud:
MENU ETIKET StressCPU V2.0 (kræver CPU med SSE)
TEKSTHJÆLP
Tortur-test din CPU for at sikre, at du ikke har overophedning
problemer. Kræver SSE-udstyrede x86-CPU'er. Udfører en særlig version af
Gromacs innerloops, der blander SSE og normale monteringsanvisninger til varme
din CPU så meget som muligt.
ENDTEXT
KERNEL howtogeek / utils / cpustress / bzImage
INITRD howtogeek / utils / cpustress / initrd.gz
APPEND root = / dev / ram0 ramdisk_size = 12000 noapic ubcdcmd = stresscpu2
Hvor :
- MENU LABEL - angiver navnet på posten
- TEKSTHJÆLP - Dette valgfri direktiv giver hjælpetekst, der vises i menuen for at give oplysninger om den valgte indgang.
- KERNEL - Angiver placeringen af kernen-filen i TFTPD-mappen.
- INITRD - det samme som ovenfor kun for "initrd" filen.
- APPEND - Angiver yderligere parametre, der skal sendes til det startede program.
Et par ting at bemærke er:
- Hardcore geeks ville bemærke, at vi erstattede det oprindelige direktiv af "LINUX" med "KERNEL". Dette skyldes: A. Dette gør eksemplet lettere at læse. B. I dette eksempel er det ikke rigtig noget.
Med det sagt, som regel, når direktivet "LINUX" er brugt, er det bedre at forlade det på den måde, fordi det fortæller pxelinux / syslinux, at vi ikke bruger bare en kerne, men en Linux en. - Vi har bevidst taget det "stille" direktiv ud af de vedhæftede parametre. Dette skyldes en ændring i, hvordan Syslinux håndterer "stille" parameteren i de seneste versioner.
- Det er muligt at ændre driften af "StressCPU" -programmet ved blot at ændre den vedhæftede parameter "ubcdcmd". Så for at kunne bruge de andre funktioner, behøver man kun at kopiere posten og erstatte "stresscpu2" til at være: cpuinfo, cpuburn eller mprime24.
Selv om dette er et meget simpelt eksempel, bør det være nok at komme i gang.
Kernel + Initrd + NFS-metoden
Denne metode er den, vi brugte på vejledningen "How To Network Boot (PXE) The Ubuntu LiveCD". Denne metode bygger på den foregående og udnytter det faktum, at nogle Linux-distributioner understøtter at have deres "root filesystem" monteret fra NFS. Ubuntu-guiden er et glimrende eksempel, men vær sikker på at vi allerede har planlagt en anden i den nærmeste fremtid. "Hold øje åbne for en sort svampe".
MEMDISK-metoden
MEMDISK er et værktøj, der distribueres med Syslinux-pakken. Formålet med dette værktøj er at sætte dig i stand til at efterligne en "disk" (primært henvisende til disketter) ved hjælp af dens billede. Den måde, dette værktøj fungerer på, er at koble til stedet i RAM, der angiver, hvordan man kommunikerer med diskettedrevet (A.K.A. Interrupt handler) og peger det på en ny placering, der håndteres af MEMDISK-programmet. Med denne metode er "kernen" MEMDISK-hjælpeprogrammet, og "initrd" er floppy-billedet (.img) -filen.
Den eneste ting at bemærke er, at FOG leveres med en "memdisk" -version, der er kompatibel med den pxelinux.0 version, den bruger. Derfor anbefales det ikke at kopiere den "memdisk" -fil, der ledsager "img" -filen fra deres kilde.
Da denne metode allerede er vildt brugt, selv for regelmæssige værktøjer og BootCD'er, er det for det meste simpelt at finde "IMG" -filen på BootCD, kopiere den til PXEs server TFTPD-mappe og kopiere menuen ISOlinux-menu til menuen PXElinux.
De siger "Talk er billig", så lad os se på, hvordan kan vi tilpasse en af de værktøjer, der bruger MEMDISK-metoden fra UBCD til at arbejde fra PXE.
TestMemIV-værktøjet findes på UBCD-filstrukturen på "ubcd / images / testmem4.img.gz". Da vi allerede har memdisk-diskværktøjet, behøver man kun at kopiere "img" -filen til "howtogeek / utils /" -mappen. Med justeringerne for FOG-opsætningen skal menupunktet se ud:
MENU LABEL TestMemIV
TEKSTHJÆLP
Tester systemhukommelse og hukommelse på Nvidia-videokort.
ENDTEXT
LINUX memdisk
INITRD howtogeek / utils / testmem4.img.gz
Selv om dette er et eksempel på en selvstændig floppy-billedfil fra UBCD, bruger de fleste af de andre UBCD-programmer det samme basebillede til at begynde at arbejde (fdubcd.img.gz) og bruge parameteren "ubcdcmd" til at autostarte et program fra CD-ROM-poststart. Det betyder, at du ikke kan konvertere de fleste af deres hjælpeprogrammer til at være bootable uden nogen større reverse engineering. Selv om en sådan omvendt teknik er mulig (som det kan ses her) og er en fremragende geek øvelse, ligger det uden for denne vejledning.
Med ovenstående har du nu værktøjerne til at udføre denne procedure for det esoteriske OEM diagnostiske eller BIOS opgraderingsværktøj.
Og så, låst forbi blodets port og forbi ildsalen, venter Valor for lysets helt at vække ...