28Jun

Cum se instalează discuri Utility Bootable Utilizând PXE

V-am arătat cum să conectați în rețea aplicația Ubuntu LiveCD.În acest articol vom arăta cum să facem alte rețele de utilități bootabile, ceea ce vă va oferi cunoștințele necesare pentru a replica procedura pentru alte utilitare pe care le folosiți.

Notă: acest articol nu este orientat spre începători, deși e binevenit să continuați să citiți!

Imagine de Steve Jurvetson

Prezentare generală

Acest ghid are ca scop să vă ofere instrumentele cu care veți putea converti utilități pentru a fi PXEable.În timp ce, din nefericire, nu va fi posibil să convertiți orice instrument sub soare, nu ne-ar fi geeks dacă nu am încerca cel puțin.

După cum sa menționat în ghidul "Cum să pornești de la rețea( PXE), în Ubuntu LiveCD", dacă nu utilizați deja Ubuntu ca număr unu "mergeți la" pentru depanare, diagnoză și proceduri de salvare, ce așteptați?

Cu acest lucru trebuie să recunoști că există lucruri care nu se pot face simplu în LiveCD-ul Ubuntu( cum ar fi upgrade-urile BIOS-ului) sau că deja folosești un instrument diferit care îți place și mai degrabă folosește din orice motiv.

Recomandări, presupuneri și condiții

  • Se presupune că ați configurat deja serverul FOG așa cum este explicat în ghidul "Ce este boot-ul în rețea( PXE) și cum îl poți folosi?".
  • Veți vedea programul "VIM" folosit ca editor, aceasta fiind în principal pentru că este disponibil pe platforme Linux. Puteți folosi orice alt editor pe care doriți.
  • CD-ul Ultimate Boot( UBCD) este folosit ca un exemplu, spre deosebire de alte colecții de utilități, este gratuit pentru descărcare, iar programele pe care le cuprind sunt libere de utilizat.

De ce nu folosiți doar ISO peste PXE?

Aceasta este adesea prima întrebare pusă atunci când vorbim despre PXEing. Răspunsul scurt este că, în timp ce din punct de vedere tehnic este posibil să se ia o imagine ISO și PXE-ul la mașinile client, aproape întotdeauna conținutul ISO menționat, se așteaptă să aibă manifestare fizică în sine accesibilă pe unitatea fizică CDROM.Prin urmare, ceea ce poate conține conținutul ISO, va încerca să caute fișierele "post-boot-sector" din unitatea fizică CDROM a mașinii client, nu le va găsi și nu va porni .

Cele două metode de a depăși această problemă sunt: ​​

  • Burn ISO și a pus-o în unitatea CDROM a mașinii client - În timp ce simplu, Nu folosind CD-uri, este exact ceea ce încercăm să evităm. ..
  • Deschideți ISO și modificațimodul în care programul funcționează în cadrul acestuia, astfel încât să utilizeze un driver CDROM care știe cum să caute ISO în RAM - Destul de complex și diferit pentru fiecare tip de program bootabil. I.E.nu aceeași procedură pentru Linux, WinPE sau UBCD pentru a menționa câteva.

Având în vedere că ambele învinge mai sus, scopul "de a folosi doar un ISO" este motivul pentru care nu recomandăm urmărirea acestui demers.

Metoda Kernel

În timp ce este foarte rar, uneori programul pe care încercați să îl bootați poate avea nevoie doar de un Kernel pentru a funcționa. Un exemplu tipic al acestui lucru este "memtest86 +".Memtest vine împreună cu majoritatea CD-urilor de instalare a distribuțiilor Linux și cu FOG.Întrucât Memtest trebuie doar să poată comunica cu cele mai de bază capabilități ale hardware-ului testat, I.E.memoria( RAM) și poate funcționa bine fără a suporta chiar și hardware-ul pe care rulează( IE va testa memoria, chiar dacă nu știe că este tipul, viteza & etc) nu are nevoie deorice altceva și poate funcționa complet autonom.

Intrarea în meniul PXE pentru memtest poate arăta la fel de simplă:

LABEL Run Memtest86 +
fuzionare kernel /memtest/ memtest
append -

În acest exemplu, "LABEL Run Memtest86 +" stabilește numele înregistrării, "/memtest/ memtest"spune PXElinux unde să ia nucleul care va fi trimis clientului și "append -" îi spune lui PXElinux să ignore opțiunile de boot suplimentare din * moștenire.

* Notă: în funcție de setarea dvs., acest lucru poate să nu fie chiar necesar și de fapt în FOG nu este folosit.

Metoda Kernel + Initrd

Această metodă este de departe cea mai frecvent utilizată și răspândită pe scară largă din mai multe motive:

  • Multe utilități din ziua de azi provin din lumea Linux.
  • Deoarece Linux are un suport hardware foarte bun și este liber de utilizat, tot mai multe companii își dau seama că Linux este o bază excelentă pentru a-și construi propriile programe de proprietate.

Permite folosirea utilitarului CPUstress al UBCD ca exemplu.

În structura de fișiere UBCD, acest utilitar este localizat în directorul "ubcd /boot/ cpustress".Fișierele pe care le căutăm se numesc "bzImage", care este "kernel" și "initrd.gz", care este "discul inițial de ram".Dacă utilizați configurația FOG pe care am creat-o, vă recomandăm să copiați directorul sub "/tftpboot/howtogeek/ utils".După ce sa terminat, editați fișierul "/tftpboot/howtogeek/menus/ utils.cfg" și adăugați la el intrarea de boot găsită în intrările din meniul UBCD.acest lucru poate fi găsit în "ubcd /menus/syslinux/ cpu.cfg".Cu ajustările pentru setarea FOG, intrarea în meniu ar trebui să arate ca: Eticheta

MENU StressCPU V2.0( necesită CPU cu SSE)
TEXT AJUTOR
Tortură-testați CPU-ul pentru a vă asigura că nu aveți supraîncălzire
Probleme. Necesită procesoare x86 echipate cu SSE.Execută o versiune specială a panourilor
Gromacs care amestecă SSE și instrucțiunile de asamblare normale pentru a încălzi
CPU cât mai mult posibil.
ENDTEXT
KERNEL cum ar fi /utils/cpustress/ bzImage
INITRD howtogeek /utils/cpustress/ initrd.gz
APPEND rădăcină = /dev/ ram0 ramdisk_size = 12000 noapic ubcdcmd = stresscpu2

Unde:

  • MENU LABEL - setează numele înregistrării
  • TEXT HELP - această directivă opțională oferă ajutortextul care va fi afișat în meniu pentru a furniza informații despre intrarea selectată.
  • KERNEL - Specifică locația fișierului "kernel" în directorul TFTPD.
  • INITRD - la fel ca mai sus pentru fișierul "initrd".
  • APPEND - Specifică parametrii suplimentari care ar trebui să fie transmise programului încărcat.

Câteva lucruri de remarcat sunt: ​​

  • Geeks Hardcore ar observa că am înlocuit directiva inițială a "LINUX" cu "KERNEL".Acest lucru se datorează faptului că: A. acest lucru face ca exemplul să fie mai ușor de citit. B. În acest exemplu, nu contează.
    Cu acest lucru a spus, de obicei, atunci când se utilizează directiva "LINUX", este mai bine să o lăsați în acest fel, deoarece îi spune pxelinux / syslinux că nu folosim doar un kernel, ci un Linux.
  • Am luat în mod deliberat directiva "liniștită" din parametrii atașați. Acest lucru se datorează unei schimbări în modul în care Syslinux se ocupă de parametrul "liniștit" în versiunile recente.
  • Este posibil să modificați funcționarea programului "StressCPU", schimbând pur și simplu parametrul atașat "ubcdcmd".Deci, pentru a folosi celelalte funcții, trebuie doar să copiați intrarea și să înlocuiți "stresscpu2" ca fiind: cpuinfo, cpuburn sau mprime24.

Deși acesta este un exemplu foarte simplu, ar trebui să fie suficient pentru a vă face să mergeți.

Metoda Kernel + Initrd + NFS

Această metodă este cea pe care am folosit-o în ghidul "Cum să pornești din rețea( PXE) LiveCD-ul Ubuntu".Această metodă se bazează pe cea precedentă și utilizează faptul că unele distribuții Linux suportă "sistemul de fișiere root" montat din NFS.Ghidul Ubuntu este un exemplu excelent, dar trebuie să fim siguri că deja avem un alt planificat pentru viitorul apropiat."Ține-ți ochii deschiși pentru o ciupercă neagră".

Metoda MEMDISK

MEMDISK este un utilitar distribuit cu pachetul Syslinux. Scopul acestui utilitar este de a vă permite să emulați un "disc"( în special referitor la dischete) folosind imaginea lui. Modul în care funcționează acest utilitar este de a se conecta la locația din RAM care specifică cum să comunice cu unitatea de dischetă( handler de întrerupere A.K.A) și o îndreaptă către o locație nouă care este gestionată de programul MEMDISK.Cu această metodă, "kernel" este utilitarul MEMDISK, iar "initrd" este fișierul de imagine floppy( .img).

Singurul lucru de remarcat este că FOG vine cu o versiune "memdisk" compatibilă cu versiunea pxelinux.0 pe care o folosește. Prin urmare, este recomandat să nu copiați fișierul "memdisk" care însoțește fișierul "img" din sursa lor.

Deoarece această metodă este deja folosită în mod sălbatic, chiar și pentru utilitarele obișnuite și pentru BootCD-urile, de cele mai multe ori este o chestiune simplă de a găsi fișierul "IMG" pe BootCD, copiați-l în directorul TFTPD al serverului PXE și copiați intrarea din meniul ISOlinuxla meniul PXElinux.
Ei spun că "discuția este ieftină", ​​așa că permite să aruncăm o privire asupra modului în care putem adapta una dintre utilitățile care utilizează metoda MEMDISK de la UBCD, pentru a lucra de la PXE.

Utilitarul TestMemIV poate fi găsit pe structura de fișiere UBCD la "ubcd /images/ testmem4.img.gz".Așa cum avem deja utilitarul disc memdisk, trebuie doar să copiați fișierul "img" în directorul "howtogeek /utils/".Cu ajustările pentru configurarea FOG, intrarea în meniu ar trebui să arate ca: Eticheta

MENU TestMemIV
TEXT HELP
Testează memoria sistemului și memoria pe cardurile video Nvidia.
ENDTEXT
LINUX memdisk
INITRD howtogeek /utils/ testmem4.img.gz

Deși acesta este un exemplu de fișier de imagine floppy auto-conținut de la UBCD, majoritatea programelor UBCD, utilizați aceeași bază pentru a începe să lucrați( fdubcd.img.gz) și utilizați parametrul "ubcdcmd" adăugat pentru a porni automat un program de la boot-ul CDROM.Acest lucru înseamnă că nu veți putea să convertiți majoritatea utilităților pentru a fi bootabile în rețea fără o inginerie inversă majoră.În timp ce o astfel de inginerie inversă este posibilă( așa cum se poate vedea aici) și este un exercițiu excelent geek, este dincolo de scopul acestui ghid.

Cu cele spuse mai sus, aveți acum instrumentele necesare pentru a efectua această procedură pentru utilitarul de diagnosticare OEM esoteric sau upgrade BIOS.

Și așa, închis dincolo de Poarta Sângelui și trecut de Sala de Foc, Valor așteaptă ca Eroul Luminii să se trezească. ..