Beágyazott operációs rendszerek, 3. nap (Bootolás pendriveról)

Kedves olvasó, a mai napon igazán kegyes leszek hozzád. Ne is fáradj ennek a bejegyzésnek az elolvasásával, csak jegyezd meg jól: a Windows XP-t nem arra találták ki, hogy pendriveról bebootolják. Komolyan… Ha ilyesmit szeretnél csinálni, használj Vistát, vagy valamilyen Linux disztribúciót, de semmiképpen, ismétlem, semmiképpen ne pocsékold az idődet Windows XP-re. Ha mégis megpróbálnád, akkor legalább előtte okulj egy kicsit a lenti történetből…

A kihívás…

Anélkül, hogy elvesznénk a felesleges részletekben, nézzük a kiinduló szituációt: adott egy számítógép, amelyből szeretnék minden mozgó alkatrészt, így a merevlemezt is kispórolni. Az SSD 3-szor annyiba kerülne, mint maga a gép, a beépített 32 MB-os Flash memóriával pedig nem megyek sokra, mivel a Windows CE-t egyelőre leszavaztam. Van viszont egy 4GB-os pendrive-om. Lássuk, tudunk-e rá operációs rendszert rakni.

Első nekifutás

Rövid Google keresés után látható, hogy a probléma élő, és hogy mások is próbálkoztak a dolog megoldásával. A témában legnépszerűbb oldal a következő tanácsokkal lát el:

  • A számítógépnek és magának a pendrivenak is támogatnia kell a pendriveról való bootolást

Számos számítógép a BIOS beállításoknál különbséget tesz a különböző USB háttértárak között (USB Floppy, USB ZIP, USB Hard Drive stb.), illetve az egyes USB-s háttértárak is mást-mást állíthatnak magukról. Mindkét problémára megoldást jelenthet, a HP USB Disk Format Tool nevű alkalmazás, amely képes a pendrive normál eszközökkel nem írható részeit is módosítani, és ily módon például befolyásolni, hogy minek hiszi magát egy pendrive a korábban említett eszközök közül. Nyilván a merevlemezt érdemes megcélozni a legvalószínűbb siker érdekében.

  • A pendrivenak rendelkeznie kell megfelelően kitöltött bootsectorral.

Nos, ez már keményebb dió. A jó tanácsok zöme itt a “fogj egy kislemezt” felszólítással kezdődik. Ne higgyünk nekik! A diskpart.exe és a bootsect.exe Windows-os alkalmazások ugyanúgy megfelelhetnek nekünk. Az előbbivel hozzuk létre a megfelelő partíciót, majd tegyük azt aktívvá:

LIST DISK <—keressük ki az eredménylistából a pendriveunkat
SELECT DISK # <—# helyére a pendriveunk sorszámát írjuk
CLEAN
CREATE PARTITION PRIMARY
SELECT PARTITION 1
ACTIVE
FORMAT FS=FAT32 <—választhatunk NTFS-t is, bár az tapasztalatom szerint itt lassabb lesz
ASSIGN
EXIT

Miután megteremtettük a megfelelő alapokat, következhet a bootsector felmásolása.

bootsect /nt52 F: <—ahol F: a pendrive meghajtó betűjele

Tipp: a diskpart alkalmazás Windows XP alól nem biztos, hogy látni fogja a pendriveot. Praktikus tehát, ha van egy Vista/Windows 7 a közelünkben.

Tipp: mind a bootsect, mind a diskpart alkalmazást megtalálhatjuk tetszőleges Vista/Win7-es telepítő DVD-n

És még egy utolsó tipp: számos forrásban a bootsect exe alkalmazást /nt60 paraméterrel használják. Ennek mi nem sok hasznát vennénk, mivel ez a Vistához és azt követő Windows verziókhoz készíti elő a bootsectort, ily módon az XP már a bootolás első pillanatában elakadna vele.

  • A pendrivenak tartalmaznia kell a boot fájlokat

Ez tűnik a legkisebb kihívásnak. Akár a Windows PE, akár egy már telepített Windows XP, egy általános XP embedded image, vagy akár a Windows XP telepítő fájljai is megteszik. Elég a fájlokat közvetlenül a pendrivera másolni, a bootoláshoz szükséges egyéb dolgokról már az előző lépésben gondoskodtunk.

Kész is volnánk ezzel. Rendszerünk a megfelelő BIOS beállítások után (elvileg elég elsődleges boot eszköznek beállítani a pendriveot) már bootolhatna is… de nem tette.

Ha lelkesen rátenyerelünk az F8-ra a boot elején, és megkérjük a rendszert, hogy ne induljon azonnal újra rendszerhiba esetén, a kékhalál hibakódjára rákeresve megtudhatjuk, hogy “merevlemez kezelési problémák” okoztak nehézséget. Ezt a menetet elveszítettük.

Nem adom fel

  • UFDPrep.exe

USB Flash Drive Preparation, feltételezem valami ilyesminek a rövidítése ez a kis alkalmazás, amelyet a Microsoft Windows Embedded Studio Utilities könyvtárából tudunk előhalászni. A célja, elvileg pont az, amivel eddig szenvedtünk. Előkészíteni a pendriveot bootolásra. Egy teljes használati példát is láthatunk itt. Nekem nem segített…

  • Windows telepítő

Ki tudhatná jobban, mi kell a Windowsnak, mint maga a telepítő. A számítógépemre a pendrive mellett szerencsére tudtam CD-ROM-ot is csatlakoztatni, és egy szabályos XP telepítést végrehajtani. Az első rebootig semmi hiba, utána se kép, se hang. Ha megpróbálom kézzel helyreállítani a bootsectort, akkor a korábbi lemezkezeléses hiba és kék halál köszön vissza.

A megoldás

Ha ennyi kudarc ellenére még mindig velem vagy, igazán megérdemled, hogy egy megoldást is mutassak. Az egyetlen működő szoftvernek, amellyel képes voltam XP-t bebootolni a pendriveomról semmi köze a Microsofthoz. A PE Builder egy zseniális kis alkalmazás, amely egy Windows XP telepítőből összeválogatja a számára feltétlenül fontos fájlokat, hozzávesz még néhány általunk kiválasztott modult, majd előállít egy kis kompakt Windows XP-t, BartPE néven. De ez még nem elég, szükségünk lesz a pe2usb kiegészítőre is, amely megkerüli az összes korábban említett problémát, azzal, hogy bootolás után közvetlenül nem a Windows XP-t tölti be, hanem létrehoz egy 64MB-os RAM-disket, felmásolja rá a rendszerfájlokat, majd innen végzi a rendszerbetöltést. És a dolog működik!

Nagy pillanatok voltak ezek. A BartPE segítségével sikerült először életet lehelnem a kicsi kis vasamba, rögtön tudtam netezni, és remote desktopot használni.

Ugyanakkor a BartPE trükkje, egyben a legnagyobb hátrányává is vált: mivel a rendszer egy statikus iso fájlból kerül betöltésre, a változtatások minden újraindításnál elvesznek. Ráadásul a RAM-diskes megoldás jelentősen megnöveli az indítási időt is (nálam 5 perc körül volt). Ez számos esetben nem jelent gondot, nekem azonban ez így nem jó. Úgy tűnik, más megoldás után kell néznem…



Kővári Bence

Kővári Bence Mérnök informatikus, bankinformatikai szakmérnök. A BME Automatizálási és Alkalmazott Informatikai Tanszékén és a Nyugat-magyarországi Egyetemen oktat szoftverfejlesztést, ezen belül is elsősorban .NET-es technológiákat. Szakterületei a .Net alaptechnológiák, MSSQL, gépi képfeldolgozás.

2009.12.15. 1:12:13 | Permalink | Hozzászólások: 0 | Tárgyszavak: ,


  • Eval HtmlEncode-dal

    Balássy György (MS RD, ASP.NET MVP, MCTS) Nagyon bosszantó tud lenni, hogy az ASP.NET-es vezérlők közül még a legalapvetőbbek sem végeznek HTML kódolást, így kénytelenek vagyunk ezt mi magunk elvégezni adatkötéskor. Az eredmény egy ismétlődő és nehezen olvasható kifejezés lesz. Tovább »
  • SharePoint backup PowerShellel

    Balássy György (MS RD, ASP.NET MVP, MCTS) Nem sok olyan szörnyű dolog van az életben, mint egy korábban írt forráskódot újra elővenni, hogy valamit módosítsunk rajta. A dolog egy kicsit kellemesebb, ha a kódot nem más írta, de ha VB Scriptben van, akkor azt semmivel sem lehet ellensúlyozni! Tovább »


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások