Přidat článek mezi oblíbenéZasílat nové komentáře e-mailem Univerzálny image systému Windows XP

Spôsob vytvorenia takmer univerzálne použiteľného obrazu systému Windows XP. Tento postup vyžaduje určité znalosti a nie je určený úplným laikom, preto neriešim určité elementárne procesy ako napr. spôsob vytvorenia samotného image, ako vytvoriť boot CD s image a pod.

Sledoval som mnoho diskusií, či a prípadne akým spôsobom je možné preniesť operačný systém Windows na iný hardvér. Výsledkom bolo mnoho dohadov a prakticky skoro vždy uzáver, že to možné nie je, alebo je to možné len v obmedzenom množstve prípadov a aj to len s problémami.

V tomto článku sa zameriam na spôsob vytvorenia takmer univerzálneho obrazu (angl. image) systému Windows XP, ktorý používam už dlhší čas. S výsledným image je možne sprevádzkovať systém na cieľovom počítači za cca. 15 minút.

System Preparation Tool

Microsoft poskytuje nástroj Sysprep (System Preparation Tool), ktorý úlohu vytvorenia takéhoto image výrazne uľahčuje. Sysprep je priamo určený pre prípravu predkonfigurovaného systému pre spustenie na počítačoch dokonca s rôznym hardvérom. Sysprep umožňuje priradiť nový security ID (SID) a plne nakonfigurovať systém podľa určených požiadaviek.

V ďalšom texte budem používať termín radič, aj keď radič disku je v prípade ATA disku umiestnený vždy priamo na disku a na MB sa nachádza tzv. host-adapter.

Z hardvérového hľadiska je pri použití Sysprep-u potrebné splniť niekoľko podmienok. Zdrojový a cieľový počítač musia mať kompatibilné hardware abstraction layers (HAL) a zhodné mass-storage radiče (IDE alebo SCSI). Potreba zhodných radičov vedie k známej chybe Stop 0x0000007B alebo INACCESSIBLE_BOOT_DEVICE, čo len potvrdzuje domnienku, že jednoduché prenesenie systému na MB s iným radičom nie je možné, t.j. je nutné preinštalovať systém. Sysprep však umožňuje vyriešiť potrebu zhodných radičov zahrnutím všetkých mass-storage zariadení identifikovaných v

Machine.inf

,

Scsi.inf

,

Pnpscsi.inf

a

Mshdc.inf

do výsledného image. Toto je dosiahnuté pridaním položky BuildMassStorageSection = Yes do sekcie Sysprep v súbore

sysprep.inf

.

Postup pri príprave systému

Pri príprave systému najprv nainštalujeme systém, aktualizácie a všetky požadované aplikácie. Samozrejme, že ak chceme mať univerzálny image, neinštalujeme nijaké hardvérovo závislé aplikácie a ovládače. Vytvoríme v roote systémového disku adresár sysprep a z inštalačného CD tam nakopírujeme obsah archívu support\tools\deploy.cab (je nutné použiť originálne CD Windows XP SP2, v prípade použitia staršej verzie je nutné stiahnuť zo stránok Microsoftu súbor WindowsXP-KB838080-SP2-DeployTools-ENU.cab).
Ďalej v adresári

sysprep

vytvoríme textový súbor

sysprep.inf

, ktorý bude obsahovať požadovanú konfiguráciu systému. Obsah

sysprep.inf

môže byť napríklad takýto:

[Unattended]
    OemSkipEula=Yes

[GuiUnattended]
    AdminPassword="1111"
    EncryptedAdminPassword=NO
    OEMSkipRegional=1
    OemSkipWelcome=1

[UserData]
    ProductKey=XXXXX- XXXXX - XXXXX - XXXXX - XXXXX
    FullName=""
    OrgName=""

[Identification]
    JoinWorkgroup=WORKGROUP

[Networking]
    InstallDefaultComponents=Yes

[Sysprep]
    BuildMassStorageSection = Yes

[SysprepMassStorage]

Význam jednotlivých položiek je detailne vysvetlený v dokumentácii. Pre nás je zaujímavá hlavne položka

BuildMassStorageSection = Yes

, ktorá tu musí byť, ak chceme použiť image na počítačoch s rôznymi radičmi. V tomto prípade musí sekcia

SysprepMassStorage

zostať prázdna, pretože si ju sysprep vyplní sám.
Po dokončení konfigurácie spustíme

sysprep.exe

, zaškrtneme Use Mini-Setup, Detect non-plug and play hardware a stlačíme Reseal.

[System Preparation Tool]

Proces prípravy bude trvať 15-20 min, potom sa počítač vypne (nereštartovať pred vytvorením image). Teraz môžeme urobiť image - vôbec nezáleží na tom, či použijeme Ghost, Paragon, Acronis, dd a pod., všetky robia to isté. Vytvorený image môžeme napríklad napáliť na DVD.
Po obnovení image na cieľový počítač a štarte systému prebehne konfigurácia systému a zobrazí sa séria konfiguračných dialógov podľa toho, ako sme to definovali v

sysprep.inf

.

[Windows 1] [Windows 2] [Windows 3]

Výsledný image by mal pracovať na všetkých počítačoch s kompatibilnými HAL. Samozrejme, existujú prípady, že sa systém z nejakého dôvodu nerozbehne, ale to je skôr výnimka. V prípade, že je nutné použiť nejaký externý ovládač, je tu možnosť zaintegrovať ho pomocou

sysprep.inf

(viac v dokumentácii).
Ešte lepšie výsledky sa dajú dosiahnuť kombináciou sysprep-u a Acronis True Image s Acronis Universal Restore – ovládače sa dajú vnútiť v priebehu obnovovania image na cieľový počítač.

Celý proces prevádzam virtualizovane v prostredí VMware, napriek tomu nie je problém použiť následne takýto image na reálne PC.

Předmět Autor Datum
Pozerám od začiatku a len tak narýchlo, ale píše sa tam, že v prípade iného radiča systém nepôjde. A…
msx. 06.11.2006 01:00
msx.
opomněl jsi, jakým způsobem se zavádí Windows. Vtip je v tom, že (zjednodušeně) ntloader natáhne jen…
touchwood 06.11.2006 07:28
touchwood
Dobre, ale ako je možné reštartovať systém ak odinštalujem ovladače radiča v správcovi zariadení? Už…
msx. 06.11.2006 15:19
msx.
info o ovladacoch mass-storage zariadeni sa nachádza v tzv. Critical Device Database. Ked pridas nov… poslední
mkmt 06.11.2006 15:53
mkmt
presne tak, ntloader este vyuziva sluzby biosu pre pristup k disku, ale v okamihu ked by mal zodpove…
mkmt 06.11.2006 07:40
mkmt
Vynikající článek. Sice znám, ale nepoužívám. Na druhou stranu je celý postup krásně "setřepán" do j…
touchwood 06.11.2006 07:30
touchwood
Tak tohle si zaslouží pochvalu! Díky za skvělej článek. Pavel
Pavel 06.11.2006 10:07
Pavel

Pozerám od začiatku a len tak narýchlo, ale píše sa tam, že v prípade iného radiča systém nepôjde. A prečo? Veď bootovanie systému riadi BIOS spustením kódu v MBR. Ostatné je už na systéme, ktorý prevzal kontrolu nad bootovaním. Systém nabehne keď aj s PIO módom pre disky. Potom by malo stačiť už len odinštalovať radiče a systém si správny nainštaluje sám. Alebo točím o niečom úplne inom?

BTW: V ankete mi chýba možnosť:
- článok ma zaujíma, ale ho nevyužijem

opomněl jsi, jakým způsobem se zavádí Windows. Vtip je v tom, že (zjednodušeně) ntloader natáhne jen kernel s kernel drivery. A pokud mezi kerneldrivery není ovladač IDE řadiče (typicky Promise, HighPoint, SiliconImage), nemá kernel odkud pokračovat v bootování a skončí to v BSOD.

Zjednodušeně se to velmi podobá situaci na linuxu (pokud znáš linux), kdy bootuješ pomocí jádra a initrd s drivery(ramdisku) a až následně se chrootuješ do reálného systému. Když LILO nebo Grub nenajde ramdisk, taky se z kernelu stane panic ;-)

info o ovladacoch mass-storage zariadeni sa nachádza v tzv. Critical Device Database. Ked pridas novy disk nainstaluje sa ovladac pre radic podla tejto databazy. Rovnako ked ovladac odinstalujes nainstaluje sa po restarte ovladac z tejto databazy. Pri vymene radica sa moze stat, ze driver ktory sa nachadza v databaze, nie je vhodny -> BSOD. Odinstalovanim ovladaca neodstranis info o ovladaci z databazy. Databaza bezne obsahuje len udaje o ovladaci pre aktualne pouzivany radic, preto ten parameter BuildMassStorageSection = Yes.

Zpět na články Přidat komentář k článku Nahoru