Windows PE: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Migalaan (talk | contribs)
Migalaan (talk | contribs)
Line 235: Line 235:
Windows PE help fail WAIK kataloogis - Windows AIK\Docs\CHMs\WinPE.chm
Windows PE help fail WAIK kataloogis - Windows AIK\Docs\CHMs\WinPE.chm


http://technet.microsoft.com/en-us/library/cc749055(WS.10).aspx - Windows PE Tools and Settings
Windows PE Tools and Settings - http://technet.microsoft.com/en-us/library/cc749055(WS.10).aspx

Revision as of 14:55, 30 April 2010

NB! Tegemist ei ole lõplikult valmis artikliga.


Tutvustus

Windows Preinstallation Environment on minimiseeritud windowsi versioon, mis on mõeldud Windows operatsioonisüsteemide hulgipaigalduseks ja ettevalmistustegevusteks operatsioonisüsteemi installeerimise jaoks.See loodi asendamaks MS-DOS keskkonda Windowsi paigaldamisel.

Ajalooliselt on seda kasutanud arvutitootjad ja suure IT struktuuriga ettevõtted, kus on palju tööjaamu.Tänapäevaks on sellest saanud tasuta tööriist, mis sisaldub Windows AIK toolkitis.

Alates Vista koodibaasil loodud Windows PE versioonist on süsteem paindlikum ja suudab ka peale üleslaadimist tunda ära uut riistvara, mille tugi esimese põlvkonna versioonides puudus. Samuti on juba algselt olemas võrgutugi, mis suurendab funktsionaalsust veelgi. Toetatakse nii 32 kui 64 bitiseid draivereid.

Lisaks algselt mõeldud ülessannete täitmiseks on võimalik sellele lisada juurde tarkvara ja kasutusmugavust. Tänu WIM failiformaadile on võimalik loodud

süsteemi paigaldada CD plaadile ning ka (buutivatele)USB seadmetele.

Ajalugu

Üldistavalt võib Windows PE versioonid kokku võtta järgnevalt:

Windows PE versioon 1.0 kuni 1.6 põhinevad peamiselt Windows XP koodibaasil

Windows PE versioon 2.0 loodi Windows Vista koodibaasil, ning tõi kaasa suuri muudatusi (korduvkirjutatav RAMdisk ja väiksem ruumikasutus). Peale Vista SP1 tuli välja WinPE versioon 2.1 ning Vista SP2´ga kaasnes WinPE versioon 2.2.

Windows PE versioon 3.0 on loodud Windows 7 koodibaasil. Saadaval Windows AIK tööriistade hulgas.

Omadused ja spetsiifika

Lisaks sellele, et WinPE's ei ole paljusid tava Windowsi komponente, on sellel veel mõningad piirangud. Ühe asjana on sellele sisse ehitatud kuni 72 tunnine tööaeg, pärast mida tehakse automaatselt restart. Samuti ei toetata vähemlevinud võrguprotokolle ja domeenikeskkonda. Oluline erisus on ka selles, et kõik süsteemis tehtavad muudatused kaovad peale restartimist, ning jäävate muutuste jaoks on vaja seda tööriistadega väljaspool muuta. Samuti tuleb ära märkida,et puudub tugi .NET applikatsioonidele, mis seab piirangud mõne tarkvara lisamisele WinPE'sse. Samuti ei tööta WinPE's .msi installipaketid.

Windows PE's sisalduvad käsureatööriistad :

BCDEdit - boot seadistuste muutmise ja loomise tööriist Bootsect - kõvaketta boot sektori parandamiseks,loomiseks Oscdimg - .iso faili loomise tööriist, kasutame ka selles õpetuses DiskPart - partitsioonide haldamise tööriist. Drvload - driverite laadimise tööriist töötavad Windows PE's PEImg - WindowsPE loomise tööriist,võrreldav DISMiga Wpeinit - käivitatakse WinPE laadimisel ning kasutatav unnatended installide jaoks.

Windows PE loomine

Järgnevalt seletan, kuidas luua graafilise kasutajaliidesega versioon Windows PE'st, millega saab lisaks ImageX paigaldamisele ka diagnostikat teostada.

Samuti, kuidas lisada programme, mille abil tegevusi ja kasutamist lihtsustada.

Vajalikud komponendid

  • WAIK link millest kasutame copype, DISM ja oscdimg tööriistu.
  • Virtuaalmasin (VirtualPC , VirtualBox)
  • nu2menu (link)
  • Kõvaketta testimise utiliit nt. HDTune free ( link)
  • Failihaldur nt. Freecommander (link) vaja läheb .ZIP versiooni


NB! Artikkel eeldab, et osatakse Command Prompt'is algtasemel orienteeruda ja selle tööloogika on selge.Näited on toodud täispikkade asukohtadega, mida aga saab lühendada,kui operatsioone teha sama kausta sees, kuhu töös olev versioon lahti pakitakse. Asukohad on näitlikud ja asja sujuvuse huvides võib ka kogu tegevuse läbi viia kohas, kus pole tarvis administraatoriõigusi failimuutusteks. Juhul,kui midagi ei tööta, kontrollida et takistuseks ei ole administraatoriõiguste puudumine.


Algse WinPE süsteemi loomine

Peale WAIK installeerimist tuleb käivitada Deployment Tools Command Prompt (Vista ja 7 puhul administraatori õigustes ! )

  copype.cmd <arhitektuuritüüp> <sihtkaust>   

ehk

  copype.cmd x86 c:\winpe

WinPE mountimine ehk "lahti pakkimine"

Eelmise liigutusega öeldud sihtkohta luuakse kaustastruktuur, kus läheb esialgu vaja faili winpe.wim. Command Prompt aknas sisestada järgmine rida:

  Dism /Mount-Wim /WimFile:<winpe.wim faili asukoht> /index:1 /MountDir:<koht,kuhu see fail lahti pakitakse>  

ehk

  Dism /Mount-Wim /WimFile:C:\winpe\winpe.wim /index:1 /MountDir:C:\winpe\mount

Peale seda tegevust on wim faili sisu etteantud kaustas lahtiselt, ning seda saab hakata muutma oma soovidele vastavalt.Siinkohal asukohas C:\winpe\mount.

WinPE muutmise protsess sisaldab üldjuhul vajalike asjade kopeerimist lahti pakitud faili struktuuri ning ilma graafilise liidese lisamiseta polegi vaja muud teha. Seda juhul, kui kasutada WAIK toolkitiga kaasa tulnud tööriistu, nagu ImageX, mis on käsurea põhised utiliidid. Juhul, kui tahta kasutusmugavust parandada ja luua keerukam süsteem, mis sisaldab erinevaid programme, on kasulikum see lahendada mingi graafilise liidesega, millest ühte võimalust siinkohal tutvustuseks kasutan.

Tööriistade lisamine algsele WinPE põhjale

Kasutame programme FreeCommander, siinkohal ZIP variandina, et hoida asi portatiivne: http://www.freecommander.com/FreeCommander200902a.zip

Teiseks on kasulik omada kõvaketta diagnostika võimalust, mille puhul aitab välja erakasutuseks tasuta HDTune: http://www.hdtune.com/files/hdtune_255.exe

Kolmandaks lisame ka ImageX tööriista, mida saab kasutada wim failide paigaldamiseks ja loomiseks.

Failide kopeerimine

Programmide sihtkohaks on siinkohal C:\winpe\mount\Program Files ja ImageX tuleks paigutada windows\system32 kausta.

  • Enne FreeCommanderi kausta kopeerimist sihtkohta soovitan selle alamkaustast LNG ära kustutada kõik failid peale inglise keele.Üldiselt tuleks WinPE loomisel kõigi lisatavate programmide maht vähendada miinimumini, kuid säilitada funktsionaalsus.Mida väiksem .wim fail, seda kiirem on süsteemi üles laadimine.
  • HDTune lisamiseks tuleb see programm installeerida ja installi kaustast kopeerida WinPE programmikausta HDTune.exe fail.
  • ImageX.exe fail asub Program Files\ Windows AIK\ Tools\ x86 \ kaustas.

Peale nende kopeerimist peaks olema Program Files kausta sisu selline:

Graafilise liidese loomine

Siinkohal kasutame nu2menu nimelist shelli. http://www.nu2.nu/nu2menu/#download Lahti pakitud ZIP kausta sisu paigaldame lihtsuse huvides "shell" kausta, ehk C:\winpe\mount\shell

nu2menu.xml faili muutmine:

Kuna algne fail on väga pikk, siis siinkohal sobivalt vähendatud versioon:

<?xml version="1.0"?>
<NU2MENU ID="Nu2MenuSystem001"
AUTHOR="Henk de Jong"
DATE="2005-02-17, 20:15"
VERSION="V0.350"
COPYRIGHT="(c)2003-2005 Nu2 Productions"
REMARK="ALL NODES ARE CASE-SENSITIVE!!!!!">

<MENU ID="mainmenu">	  <MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetWinDir()\system32\notepad.exe" PARM="1">Notepad</MITEM>

<MITEM TYPE="SEPARATOR"></MITEM> 		
				
<MITEM TYPE="POPUP" MENUID="admin">Admin</MITEM>

<MITEM TYPE="SEPARATOR"></MITEM> 

<MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetProgramDrive()\Program Files\HDTune.exe" PARM="0">HD Tune</MITEM>

<MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetProgramDrive()\Program Files\FreeCommander\FreeCommander.exe" PARM="0">FreeCommander</MITEM>

<MITEM TYPE="ITEM" CMD="RUN" FUNC="@Null( @ChangeDir('c:\temp')@ChangeDir('c:\tmps')@ChangeDir('c:\tmp') )cmd.exe">Cmd</MITEM>

<MITEM TYPE="ITEM" CMD="RUN" FUNC="@ShowRunDialog()">Run...</MITEM></MENU>	

<MENU ID="admin">
	
<MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetWinDir()\system32\notepad.exe @GetProgramDir()\nu2menu.xml">Edit 
menu</MITEM>

<MITEM TYPE="ITEM" CMD="HIDEFROMTASKBAR">Hide from taskbar</MITEM>

<MITEM TYPE="ITEM" CMD="SHOWINTASKBAR">Show in taskbar</MITEM>

<MITEM TYPE="ITEM" CMD="RELOAD">Reload menu</MITEM>	
	
</MENU>

</NU2MENU>

Tähelepanu tuleb pöörata <MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetProgramDrive()\Program Files\HDTune.exe" PARM="0">HD Tune</MITEM> ja järgnevale reale, kus on kirjeldatud programmide sihtkohad. Täpsem info, mida antud XML failiga veel teha saab, asub

http://www.nu2.nu/nu2menu/#rules.

GUI käivitusfail

WinPE mount kaustas asuvasse windows\system32 kausta tuleb luua fail winpeshl.ini, mille sisu on järgmine :

 [LaunchApp]
 AppPath = %SYSTEMDRIVE%\shell\nu2menu.exe

 [LaunchApps]
 %SYSTEMDRIVE%\shell\nu2menu.exe

Selle faili sisu näitab, mida peab käivitama algse command akna asemel.Vajaduse korral saab sinna lisada ka muid käivitavaid asju.

Süsteemikomponentide lisamine

Et need lisatud programmid ka töötaksid, on WinPE´le vaja lisada ka tugipaketid mis võimaldavad graafilise kasutajaliidesega programmidel töötada.

Et lisamine toimiks sujuvamalt tuleks kopeerida järgnevad failid WAIK installikaustast nt. c:\winpe kausta:

  • Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\winpe-hta.cab
  • Program Files\Windows AIK\Tools\PETools\x86\WinPE_FPs\en-us\winpe-hta_en-us.cab

Seejärel sisestada command aknas järgmine käsk:

dism /image:<lahti pakitud WinPE asukoht> /Add-Package /PackagePath:<cab faili asukoht>  

praegusel juhul

dism /image:C:\winpe\mount /add-package /packagepath:c:\winpe\winpe-hta.cab

ja

dism /image:C:\winpe\mount /add-package /packagepath:c:\winpe\winpe-hta_en-us.cab

Muudetud struktuuri kokkupanek

Järgneva käsuga saab mount kaustas olevast struktuurist jälle wim fail:

Dism /Unmount-Wim /MountDir:<lahti võetud WinPE failide asukoht> /Commit

ehk

Dism /Unmount-Wim /MountDir:C:\winpe\mount /Commit

See protsess võib võtta päris kaua, ning käsurea aknas ei toimu midagi, kuid protsess siiski käib, kannatust.


Järgmise sammuna tuleb luua .wim failist .iso fail, mida saab plaadile kirjutada ja virtuaalmasinas testimiseks kasutada.

1. kopeeri winpe.wim fail algsest asukohast ISO\sources kausta ehk:
copy c:\winpe\winpe.wim c:\winpe\iso\sources\boot.wim
2. loo boot.wim failist .iso fail:
oscdimg -n -bC:\winpe\etfsboot.com <ISO kausta asukoht> <valmis faili asukoht> 

ehk

oscdimg -n -bC:\winpe\etfsboot.com c:\winpe\iso c:\winpe_valmis.iso

NB! -bC: ei ole kirjaviga,vaid süntaksi eripära.

Valminud Windows PE testimine virtuaalmasinas

Kasutada saab virtuaalmasinat, mis suudab .iso failist buutida. Levinumad nagu VirtualPC ja VirtualBox suudavad seda. Lõpp-produkt peaks välja nägema selline:

Kokkuvõte

Windows Preinstallation Environment on vägagi võimekas keskkond tegemaks Windowsi süsteemide hulgipaigaldust ning kasulik tööriist riistvara diagnostikaks ja andmete päästmiseks, kui arvuti enda operatsioonisüsteem ei tööta.

Nagu näha, ei ole süsteemi endale käepäraseks ehitamine keeruline ning võimalik on luua igasuguse loogika ja tööpõhimõttega versioone.

Loomisprotsessis on saab kasutada ka mitmeid abistavaid programme, mis võimaldavad Windows PE's käima saada ka keerukamad programmid, nagu veebibrauserid jms. Levinumatest võib nimetada Depedency Walker ja ProcessMonitor .


Lingid

What is Windows PE? http://technet.microsoft.com/en-us/library/cc766093(WS.10).aspx

Windows Preinstallation Environment http://en.wikipedia.org/wiki/Windows_Preinstallation_Environment

Windows PE help fail WAIK kataloogis - Windows AIK\Docs\CHMs\WinPE.chm

Windows PE Tools and Settings - http://technet.microsoft.com/en-us/library/cc749055(WS.10).aspx