27Jun

IT Geek: come avviare in rete( PXE) il disco di ripristino di WinPE con PXElinux v5 &Wimboot

65666352_efaebd0345_o1

Hai mai desiderato di poter ottenere la "Console di ripristino di emergenza di Windows" in esecuzione per quella procedura di manutenzione o il programma che desideri utilizzare, senza dover ricordare dove hai dimenticato il CD?HTG spiega come avviare WinPE da PXE.

Photo Credit: Alfred Hermida tramite Compfight cc

Windows L'ambiente di pre-esecuzione( WinPE) è la versione di Windows che la maggior parte delle persone conosce come quella che si avvia dal CD di installazione. Nel corso degli anni, sono stati creati interi progetti per dare la possibilità di avere una sorta di ambiente "Windows Live" come molte distribuzioni Linux. In questa guida, avremo Windows PE dall'avvio del CD di installazione da PXE solo per consentirci di eseguire l'utilità di aggiornamento del BIOS Dell. Sei incoraggiato a continuare l'esplorazione di questo pozzo senza fondo di geek bontà. .. Panoramica

Ti abbiamo mostrato cos'è PXE e come puoi installare facilmente un server per questo( e molto altro) con FOG, oggi aggiungeremo ancoraun'altra estensione a FOG.Generalmente la procedura di oggi sarà:

  1. Aggiorna PXElinux alla v5.01 o successiva, se non già installata.
  2. Aggiungi il modulo wimboot.
  3. Copia l'immagine WIM e i file di supporto dal CD di installazione di Windows.
  4. Aggiungi la voce di menu.
  5. Utilizzare il WinPE avviato per ottenere una "Console di ripristino di Windows" funzionante.

Faremo quanto sopra, perché il "normale" Windows Automated Installation Kit( WAIK) ti obbliga, nel migliore dei casi, a installarlo sulla tua macchina e ad attraversare un processo non così semplice da manipolare il file WIM e il suosupporta i file nel loro modulo WDS / RIS.Sebbene esistano alternative Linux, come quella del progetto UDA( che è il server PXE che ho usato prima che arrivasse FOG), usando in questo modo si sostituiscono semplicemente alcuni file sul server PXE una volta( cosa che probabilmente avresti comunque alla fine) e copia ilfile WIM inalterato e file di supporto direttamente dal CD di Windows nel server PXE.

L'unica cosa da notare, è che mentre sembrerà possibile avviare la procedura di installazione di Windows in questo modo, non è effettivamente possibile completarla, e rendere possibile ciò va oltre lo scopo di questa guida.

Ottiene cracking:)

Aggiorna PXElinux a V5.01

Al momento della stesura di questo documento, la versione di Syslinux nel repository di Ubuntu è ancora 4.05.Immagino che questo sia dovuto al fatto che il team di Syslinux ha deciso di scuotere le cose con il ramo V5 e hanno cambiato il modo in cui i loro moduli COM32 funzionano( ora basato su ELF) e cambiato il "core" per richiedere una libreria( ldlinux.c32) per nulla oltre "puro avvio".Questo rende molto possibile incontrare rotture, per chiunque sia abituato al "vecchio modo".Non preoccuparti, scaricheremo manualmente i file richiesti e fare in modo che la tua installazione FOG non perda un battito.

Useremo la versione 5.01 poiché è l'ultima versione stabile rilasciata dal ramo V5 al momento della stesura di questo articolo ed è quella su cui il team Syslinux ha lavorato insieme al team di Wimboot per far funzionare questa procedura specifica.

Nota : Un'altra ragione per cui l'ultima versione non è ancora parte del repository di Ubuntu( IMHO), è che almeno su Citrix-Xen, gli ospiti HVM non possono avviare nulla oltre ai menu PXE.Altri hypervisor come VMware, Hyper-V e amp;VirtualBox, così come le macchine fisiche stanno bene con la nuova versione.

Se la nota sopra non ti riguarda, procedi.

Ottenere la versione 5.01 di PXElinux direttamente da Kernel.org ed estrarlo sul server FOG da:

wget https: //www.kernel.org/pub/linux/utils/boot/syslinux/ syslinux-5.01.tar.bz2
tar xvhf syslinux-5.01.tar.bz2

Creare la directory che manterrà illibrerie nuove richieste:

mkdir -p /tftpboot/howtogeek/ librerie

Copia i file di libreria richiesti in questa directory, quindi saranno disponibili per i client in fase di runtime:

cp -av syslinux-5.01 /com32/lib/ libcom32.c32 /tftpboot/howtogeek/libs/
cp -av syslinux-5.01 /com32/libutil/libutil.c32 /tftpboot/howtogeek/libs/
cp -av syslinux-5.01 /com32/modules/ linux.c32 /tftpboot/howtogeek/libs/

Aggiungere il "percorso" a questa directory, al file di configurazione "predefinito" già esistente, modificandolo o emettendo quanto segue:

echo "PATH howtogeek / libs"& gt; & gt;/tftpboot/pxelinux.cfg/ predefinito

Copia il nuovo ldlinux.c32 richiesto nella root del server TFTP emettendo:

cp -av syslinux-5.01 /com32/elflink/ldlinux/ ldlinux.c32 /tftpboot/

Aggiorna il motore grafico( vesamenu.c32) per corrispondere a questa nuova versione:

cp -avsyslinux-5.01 /com32/menu/ vesamenu.c32 /tftpboot/

Congratulazioni, il tuo server PXE è ora aggiornato alla v5.01 e tutto ciò che già funzionava( a meno che tu non sia influenzato dalla "nota" dall'inizio di questo segmento) dovrebbe continuare a farlo.

WIMboot

Questo bootloader fa parte del progetto iPXE e lo descrivono in questo modo:

wimboot è un boot loader per i file di Windows Imaging Format( .wim).Consente di avviare un ambiente Windows PE( WinPE) da un disco RAM, senza sprecare la memoria utilizzata per l'immagine del disco RAM.

Scarica l'ultima versione dal loro sito:

wget http: //git.ipxe.org/releases/wimboot/ wimboot-latest.zip

Installa unzip sul tuo server FOG se manca:

aptitude install decomprime

Decomprimi il pacchetto wimboot:

decomprimi wimboot-latest.zip

Copyil modulo wimboot alla directory "libs" che abbiamo creato nel segmento precedente:

cp -va wimboot * / wimboot /tftpboot/howtogeek/libs/

Questo è tutto. Il bootloader di wimboot è pronto per essere chiamato.

File CD di Windows

Creare una nuova directory sul server FOG per contenere i file che verranno copiati:

mkdir -p /tftpboot/howtogeek/WinPE/

Inserire il CD di installazione di Windows 7 originale nell'unità CD-ROM e copiare i file elencati di seguito in questa directory:

\bootmgr

\ boot \ bcd

\ boot \ boot.sdi

\ sources \ boot.wim

Sì, è semplice e non è necessario mantenere la struttura di directory sul CD perché funzioni.

Nota: per far funzionare gli aggiornamenti del BIOS Dell, ho trovato necessario utilizzare una versione di Windows a 32 bit.

Aggiungi la voce di menu

Crea la voce di menu PXE modificando il menu "Utils":

sudo vim /tftpboot/howtogeek/menus/ utils.cfg

Aggiungi ad esso il seguente:

etichetta WinPE
com32 linux.c32 howtogeek /libs/ wimboot
APPEND wimboot initrdfile = /howtogeek/WinPE/bootmgr, /howtogeek/WinPE/ bcd, /howtogeek/WinPE/ boot.sdi, /howtogeek/WinPE/ boot.wim

Congratulazioni, ora hai WindowsPE sul tuo server PXE.:)

Nota: potrebbe sembrare appeso al file "wim", ma non lo è.In realtà sta trasferendo il 140MB di un file al client su TFTP, che richiede più tempo dei file solitamente piccoli che vengono trasferiti in questo modo.

Ecco lo screenshot per dimostrare che è successo.

WinPE01

La VM sopra, è stata eseguita utilizzando VMware-player, Ubuntu è stato installato su HD e PXE è stato avviato in WinPE.

Console di ripristino di emergenza di Windows

Anche in questo caso, come accennato nella panoramica, mentre sembra che sia possibile avviare la procedura di installazione di Windows in questo modo, non è effettivamente possibile completarlo, e rendere possibile ciò va oltre lo scopo di questa guida.

Detto questo, solo per dare un esempio del perché questo sarebbe utile, useremo questo ambiente per eseguire un aggiornamento del BIOS Dell.

Ottieni l'aggiornamento necessario per eseguire dal sito Web di Dell e metterlo su un Disk-On-Key. Metti il ​​disco su chiave e PXE avvia il client.

Per raggiungere la console di ripristino, nella finestra principale come nella schermata sopra, fare clic su "Avanti".

WinPE02

Fare clic su "Ripara il computer".

WinPE03

Scegliere "Usa strumenti di ripristino" e fare clic su "Avanti".

WinPE04

Fare clic su "Prompt dei comandi".

Una volta nel prompt dei comandi, dovrai scoprire quale "lettera di unità" WinPE ha deciso di designare sul tuo Disk-on-Key. Per fare questo, fare in modo che il sistema enumeri tutte le lettere di unità attualmente assegnate inviando:

wmic logico logico ottenere il nome

Ora escludendo le lettere A: e X: e forse anche C:( sebbene non sia un dato), scorrere ciclicamenteinserire lettere e cercare il Disk-on-Key emettendo:

Driveletter:
dir

Una volta trovata l'unità corretta, esegui il file e dovresti vedere qualcosa di simile al seguente:

winPE06

Complimenti, sei pronto per aggiornare:)

So Kung Fu. ..