Jump to content
GSForum - Segélyvonal

SkyBird vs. VHD


SkyBird

Recommended Posts

SkyBird

Gondoltam kipróbálom már ezt a natív VHD bootot a Win7 boot menüjébõl.

Volt hozzá egy Windows Server 2008 R2 Enterprise.vhd fájl letöltve. Ez VirtualBoxban szépen bootolt, futott.

Bemásoltam a .vhd fájlt a Win7 partíciójára, megcsináltam a bcdedit paranccsal amit kellett.

Ezután elindítom a menübõl és elkezdene tölteni, kiírja, hogy Microsoft Corporation, meg ott lenne a csík, aminek futni kellene. De a csík nem fut, abban a pillanatban valami kék halál szöveggel újraindul.

Próbálkozzam inkább más .vhd-val? :hááát: Vagy mi lehet a gond?

Link to comment
Share on other sites

Pjotr

Ugye nem a VirtualBox-ban már egyszer elindítottat próbáltad? :bizonytalan:

Link to comment
Share on other sites

SkyBird
Ugye nem a VirtualBox-ban már egyszer elindítottat próbáltad? :bizonytalan:

Persze hogy nem. :)

Gondoltam egyúttal kipróbálom már az új True Image .tib :nyíl: .vhd konvertálását is. Csináltam egy mentést a Win7 partícióról, majd átkonvertáltam .vhd-ra, ezután az új .vhd-t kicseréltem átnevezve a Serverre.

Elkezdett bootolni, kicsit tovább jutott, ment a Win7 boot képernyõ animáció, majd kék halál 0x00000136 0x00000000, stb., szóval nem nagyon oké valami.

Vagy inkább a Russinovich véle VHD készítõt kellett volna használnom? :hmm::lol:

Link to comment
Share on other sites

SkyBird
majd kék halál 0x00000136 0x00000000

Majd próbálok még ezt azt. Úgy néz ki, ez a 136-os hiba megfejtése: VHD_BOOT_HOST_VOLUME_NOT_ENOUGH_SPACE

Meg van egy ilyen is az általam tapasztalt BSOD kék képernyővel: Windows 7: Boot from VHD

Csináltam hülyeséget is, de az E: meghajtóm iszonyat nagy üres hellyel bír, amire végül áttettem a VHD fájlt.

Viszont azt nem értem, hogy az MS botolható Windows Server 2008 .vhd-ja miért nem bootol natívan. :hááát:

 

Sikerült ezt már valakinek itt így bootoltani BCD menüből vagy csak virtuális gép alól?

Link to comment
Share on other sites

Pjotr

Tuti, hogy van elég hely? Mekkora egyáltalán Server-nek kiosztott terület? Amikor VHD-ról bootol egy operációs rendszer, akkor automatikuson akkora lesz a VHD mérete, mint a VHD-ba égetett merevlemez mérete, hiszen az operációs rendszer alatt egyértelmûen meg kell mondani mennyi hely áll rendelkezésre, nem történhet olyan, hogy egyszer csak elfogy a tárterület futás közben.

 

Valószínûleg 40 GB van kiosztva neki, és megtörténhet, hogy azért nem tudja lefoglalni, mert töredezett a partíció. :hmm:

Link to comment
Share on other sites

SkyBird
Tuti, hogy van elég hely? Mekkora egyáltalán Server-nek kiosztott terület?

Az tuti. ;) Egy jelenleg 447 GB üres területet tartalmazó partícióra tettem a VHD fáljt. 8)

De kezdek rájönni, hogy a Windows Server 2008 esetében mi lehet a hiba. Ehhez kellett a True Image Home 2010 közreműködése, habár gondolom a diskpart paranccsal is matathattam volna a .vhd fájlt.

Első körben gondoltam fordítok a dolgon, és most nem a .tib :nyíl: .vhd, hanem a .vhd :nyíl: .tib konverziót csinálom meg a szerver fájljából.

Ezt ugyanis be lehet mountolni kötetként, így belelátok könnyedén, vagy akár lehetne belőle fájlokat is kiszedni.

Nekem ekkor derült ki, hogy "természetesen" tartalmazza az ominózus 100 MB-os EFI boot partíciót is a .vhd image.

Így pedig ha a natív BCD boot loaderrel elkezdem töltetni a .vhd fájlt, akkor nem az op. rendszer partíció indul el, hanem a másik, a virtuális szerver boot loader kapja a vezérlés, amitől az egész megmakkan.

Virtuális gépnél nincs külön másik bootloader. Ott kell is, hogy a virtuális 100 MB-os bootról induljon. Ott valószínűleg ezért jó.

Szerintem ez van. Most az lesz, hogy ha natívan akarom ezt bootoltani, akkor ki kell operálni a fájlból a 100 MB-os boot partíciót, és hátha.

 

Közben beugrott, hogy az új True Image tud .tib fájlról is bootoltatni. Na akkor ennek utánajártam, és tényleg. Bár nem közvetlenül .tib-ről bootol mégsem, hanem ha az van beadagolva neki, akkor előtte átkonvertálja .vhd-ra.

 

IPB kép

 

Így gondoltam teszek egy próbát, de így már nem a .tib-et, hanem az eredeti .vhd-t tallóztam be.

Végtelenül egyszerű vele .vhd bootot beszúrni, pár klikk. Itt az utolsó bejegyzést még a bcdedittel szúrtam be.

 

IPB kép

 

Sőt a beszúrás után figyelmeztet is, hogy szerinte milyen méret igény van.

 

IPB kép

 

Megnéztem, persze hogy tök ugyanazokat a bejegyzéseket hozta létre, amit előtte bcdedittel bepötyögtem.

Wow, op. rendszer beszúrásra boot menübe EasyBCD a grafikus felület, .vhd-ra pedig akkor a True Image. :yeah:

 

Persze ugyanúgy elszáll a boot elején ezzel is. A Win7 .vhd-val még elképzelhető, hogy tényleg a kevés üres hellyel volt probléma. Nem gondolom így első blikkre, hogy ugyanazon a konfigon pl. sysprepelni kellett volna.

Az a .vhd Win7 nem is indult újra, csak megállt BSOD-ra. :ötlet: És valóban, ez boot nélküli, csak op. rendszer partíció volt, mert a boot loader az XP partícióján van.

Még az lesz, hogy a végén mégis megcsinálom az egészet a közös 100 MB-osra. :lol:

 

---

 

:hmm: Első körben nem annyira egyszerű, illetve úgy nem jött be, amit csináltam. Gondoltam egyszerűen törlöm a .vhd fájlból a 100 MB-os partíciót.

Admin jogú parancssorból a következő parancsokkal.

 

diskpart
select vdisk file=e:\vhd\server.vhd
list volume
select volume 14
delete volume
exit

A list volume azért kell, hogy megtudjuk, melyik sorszámút kell kiválasztani és törölni.

Matatott a fájlon és törölte egy pillanat alatt. Ezután ezt a módosított fájlt állítottam be .vhd bootnak, de a helyzet változatlan. Ugyanúgy újraindul. :hááát:

 

Egyébként a BCD boot vonatkozó része így néz ki:

 

Windows Boot Loader
-------------------
identifier              {CLSID}
device                  vhd=[E:]\VHD\Windows Server 2008 R2 Enterprise.vhd
path                    \Windows\system32\winload.exe
description             Boot from VHD - Windows Server 2008 R2 Enterprise
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {CLSID}
recoveryenabled         Yes
osdevice                vhd=[E:]\VHD\Windows Server 2008 R2 Enterprise.vhd
systemroot              \Windows
resumeobject            {CLSID}
nx                      OptOut
detecthal               Yes

 

Talán előbb mégis magát a natív VHD bootot kellene produkálnom egy Win7 mentéssel, hogy tényleg működik-e.

Ha igen, akkor foglalkozom majd a szerver fájljával. Van még ötletem. :lol:

A diskpart szerint tényleg 126 GB az op. rendszer partíciója, maximum.

Link to comment
Share on other sites

SkyBird

A Boot from VHD az végül is működik Windows 7 képfájlból. Ezt a hozzászólást is arról bootolva írom. :yeah:

Voltak döccenők azért közben. :hááát:

A korábbi Win7 VHD-t már töröltem, ezért csináltam újat True Image .tib mentés .vhd-ra konvertálásával.

Erre azt mondja a True Image boot managere, hogy nem szúrja be, mert nem tartalmaz Windows 7 op. rendszert. :hááát: Hogy mi? Miközben a .tib mountolható volt, és persze hogy igen.

Akkor megpróbáltam bcdedittel beszúrni. Ott meg valami hiba volt, mert nem rendesen látta a fájlt, vagy hasonló, hiába nevezgettem át, pedig nem a szóközzel vagy ilyesmivel volt gond. Talán a.vhd-nak látta végül kínomban, de azt hiszem bootolás szempontjából ez sem volt jó valamiért. Már nem emlékszem pontosan a nagy kavarodásban.

Akkor csináltam partíciómentést a Russinovich féle Disk2VHD-val. Ez picivel nagyobb lett, mint a True Image konvertálás, be tudtam szúrni a boot menübe simán, de bootoláskor hibaüzenetet dobott.

 

Object GUID {CLSID}

Description: Windows 7

Status: 0xC0000007

Info: The configuration for an element with the objects is invalid in the boot configuration data store.

Enterrel tovább lehet lépni és megjelenik a hibás sor nélkül a boot menü. Volt már közben is hasonló hibaüzenetem.

Ekkor átneveztem úgy a VHD-kat, hogy a Windows Server 2008 menüpont töltse a Russinovich féle Windows 7 mentést.

Eredmény, hogy már mindkét VHD konfigurációs hibára áll le. :lol: Bye-bye Disk2VHD, ez így nem jó. :nem:

Esetleg az lehetett a hiba, hogy saját maga alól mentettem az op. rendszert, True Image esetén ez nem gond sőt természetes, vagy Russinovichéknak kell majd javítani valamit.

 

Ekkor a True Image konvertált mentését neveztem át a Windows Server 2008-nak megfelelőre, és voilá kapásból bebootolt. 8)

 

Tehát lehet natív módon BCD boot menüből VHD fájlt bootolni, bizonyos feltételekkel.

- A VHD fájl ne tartalmazzon saját boot menüt.

- Nem mindegy, hogy hogyan is készül a VHD fájl.

- A boot menüben néha akadnak problémák, amik számomra egyelőre megmagyarázhatatlanok.

  Pl. Nem mindig lehet a boot hivatkozást létrehozni se a bcdedit, se a True Image programmal, vagy ha ez látszólag sikerült, akkor meg mégis lehet valami konfigurációs hiba egyes VHD fájlokban.

- Megfelelő üres hely szükséges a partíción. A virtuális lemeznek maximum 127 GB-ot emlegetnek.

 

Azért nem kell mindent elhinni. Amikor a Russinovich féle mentést beszúrtam a True Image boot managerrel a következő jelzést adta. Talán éppen ez volt az oka, a hibának, hogy valami össze volt kutyulva.

 

IPB kép

 

Beírom végül a bcdedit parancsokat is, amivel a VHD boot beszúrható a boot menübe admin jogú parancssorból.

 

bcdedit /copy {current} /d “Boot from VHD - Op. rendszer”

bcdedit /set {CLSID} device vhd=[X:]"\Mappa név\VHD fájlnév.vhd"
bcdedit /set {CLSID} osdevice vhd=[X:]"\Mappa név\VHD fájlnév.vhd"

bcdedit /set {CLSID} detecthal on

Az első bcdedit parancs egyúttal kiírja a CLSID-t, amit a többi parancsban használni kell.

X: az a meghajtó, ahol a VHD fájl található. Szögletes zárójelbe kell tenni.

Ha a teljes elérési útvonal szóközt tartalmaz, akkor idézőjelek közé kell tenni szokás szerint.

 

Lassan talán érdemes volna nyitni egy külön Boot from VHD topicot. :)

 

Tehát most már folytathatom a Windows Server 2008 fájl gyötrését.

Link to comment
Share on other sites

SkyBird

Lassan OFF leszek itt ezzel a Windows Server 2008 .vhd dologgal.

Elsőnek megpróbáltam a 100 MB nélküli fájlt újragenerálni a diskpart parancs create funkciójával. Eredmény egy 127 GB-os fájl lett, ami ugyanúgy nem bootolt. Igez ehhez amúgy sem sok reményem volt.

Utána a .tib-re konvertált eredeti VHD-ból csak az op. rendszer partíciót tettem vissza egy 7201 build Win7 20 GB-os logikai partíció helyére a True Image programmal.

A legtöbb reményem ebben volt, mert ha működik, bootol a partíció, akkor erről már tudok mentést csinálni.

:nem: Sajnos azonban ugyanúgy nem megy. Csökkentett módban eljut egy ideig, töltöget. Utoljára kiírja a CLASSPNP.SYS drivert, itt elidőzik vagy 1 másodpercet, azután újrabootol.

Végül is ugyanezt tette a 100 MB-os boot partíciót tartalmazó VHD-nál is, úgyhogy már abban sem vagyok biztos, hogy amiatt nem ment.

Lehet esetleg valami hardware inkompatibilitás is, vagy nem tudom. Talán valamit le kellene tiltanom a BIOS-ban. :hááát:

Most ahogy nézem, az elődnél is volt valami PNP bug. De nekem be sem bootol.

 

A bcdedit turkálás nyomán rájöttem, hogy az EasyBCD-vel nem annyira érdemes beszúrni új Win7 op. rendszereket a menübe, mert nem állít be minden paramétert, és ezért is bootol a vistás futó csíkkal ilyenkor a Win7 animáció helyett.

Ha a bcdedit /copy paranccsal csináljuk, az belerak minden szükséges sort, legfeljebb utána módosítani kell a partíciót vagy a sorrendet.

Erre vagy átnevezni már tényleg kényelmesebb az EasyBCD.

 

Minden működik, azt hiszem a Microsoft, most jó operációs rendszert hozott létre.

sonykort nem tudod meggyőzni. :lol: Lassan teleírja a fórumot, hogy Vista Home Basic rulez, meg ráadásul 20 rugóért. :muhaha::nemnem:

Na ne. Ennyi pénzt ilyenre manapság... :nem:

Link to comment
Share on other sites

SkyBird
@Skybird: told nyugodtan, majd a végén kirakjuk külön témába.

Oké, csináltam pár képernyőmentést is VirtualBoxban végig az egészről most az eddigiek alátámasztásául.

Ha nem gond, nem a bélyegképesen raktam be.

 

A dolog ott indult, hogy fejembe vettem, hogy a letölthető Windows Server 2008 R2 Enterprise próbaváltozatot bebootoltatom natív VHD-ként is, amire a Windows 7 Ultimate lehetőséget nyújt.

Az előzőkben már írtam, hogy belefutottam néhány problémába. Virtuális gépen gond nélkül bootolt, futott a szerver VHD, de teljesen natívan még nem tudtam megoldani.

Először a 100 MB-os boot partíciót okoltam, de nem ez lesz a hiba, hanem valami hardver probléma, driver összeakadás, mert rendre újraindulva kékhalálozik a classpnp.sys fájlnál.

Ha virtuális gépen egyébként önmagában megy, hát akkor legyen úgy. Akkor megcsinálom a natív VHD bootot VirtualBoxban. Natívnak mégis natív, ha csak virtuálisan is, de legalább tudok képernyőmentéseket csinálni.

 

Balázs, ez az eljárás tökéletesen ugyanaz lesz a gyakorlatban, mint nemrég ajánlottam neked elméletben egy virtuális gépen nem bootoló VHD fájlodra. :)

A szükséges parancsok admin jogú parancssorból:

 

bcdedit /copy {current} /d “Boot from VHD - Op. rendszer”

bcdedit /set {CLSID} device vhd=[X:]"\Mappa név\VHD fájlnév.vhd"
bcdedit /set {CLSID} osdevice vhd=[X:]"\Mappa név\VHD fájlnév.vhd"

bcdedit /set {CLSID} detecthal on

X: az a meghajtó, ahol a VHD fájl található. Szögletes zárójelbe kell tenni.

Ha a .vhd fájl teljes elérési útvonala szóközt tartalmaz, akkor azt idézőjelek közé kell tenni.

Ugyanez képen. Egyetlen Windows 7 volt telepítve VirtualBox alatt.

 

IPB kép

 

A bcdedit /copy parancs után megjelenik az új CLSID, így nem kell feltétlen újra kiadni a bcdedit parancsot.

Bemutatásképpen mégis így tettem ide, hogy lássuk miket hozott még létre.

 

IPB kép

 

A végeredmény pedig ez lett:

 

IPB kép

 

Hurrá, akkor nézzük meg mit csináltunk, bootoljunk be.

 

IPB kép

 

Örömünk nem tart soká, mert egy BSOD képernyő fogad, hogy kevés a hely.

A dinamikus virtuális lemezek maximális mérete 127 GB, így persze kevés volt neki a 20 GB-os virtuális vinyó.

(Ez volt az a kék képernyő, amit korábban a Windows 7 .vhd bootolásakor is láttam. Ott is kevés volt az üres hely.)

Sebaj, létrehozok egy újabb 150 GB-os vinyót a VirtualBoxban, és átmásolom a VHD mappát, és még meghajtó betűjelet is cserélek.

Persze nem lehet ilyen egyszerűen átverni, a boot menüben is cserélődik a betűjel, ezért a device paramétereket újra be kell állítani.

 

IPB kép

 

IPB kép

 

Ezek után viszont teljes siker. Működik a Windows Server 2008 R2 virtuális gépen natívan .vhd fájlként bootoltatva. 8)

 

IPB kép

 

IPB kép

 

IPB kép

 

Végül még annyit, ha nem VHD fájlt akarunk bootoltatni, hanem másik partíción lévő Vista/Windows 7 partícíót, akkor a parancsok a következők E: partíciónál:

 

bcdedit /copy {current} /d “Windows 7 - [E:]”

bcdedit /set {CLSID} device partition=e:
bcdedit /set {CLSID} osdevice partition=e:

Link to comment
Share on other sites

  • 1 month later...
SkyBird

Hozzátennék még néhány azóta leülepedett gondolatot.

A Windows Server 2008 R2 Enterprise natív VHD bootját sikerült megoldanom azóta. Természetesen a legegyszerűbb és legkézenfekvőbb megoldás vezetett eredményre :hátpersze:, amit akartam is csinálni, de mégis hosszas egyéb irányú elképzelhető és elképzelhetetlen próbálkozások előztek meg, hogy valami formában működőképesen kinyerjem a partíciómentést a .vhd fájlból. :fal:

Most nem ragoznám végig a sztorit, meg milyen programokat és hogyan használtam. Eredmény vagy kékhalál volt, vagy az adott program nem csinálta azt, nem tudta amit akartam vagy funkcióban, vagy szerver kontra otthoni vagy régebbi verzió miatt.

 

Viszont a lényeg, hogy szerintem két okból kékhalálozik a dinamikus VHD rendszer bootoláskor.

Egyik a helyhiány, mert a dinamikus volta miatt mindenképpen kb. 127 GB üres területre tart igényt azon a partíción, ahol van. Ezt lehet biztosítani megfelelő vinyóval.

Azóta nem ellenőriztem, de feltételezem, hogy a Russinovich féle Disk2VHD által készített mentés valamilyen okból nem a 127 GB-ig, hanem 1 TB-ig terjeszkedett volna a True Image képernyőmentés szerint, mert olyan vinyóról mentettem. Ezért volt képtelenség bootoltatni az adott helyen.

 

A másik pedig az eltérő konfiguráció, driver probléma. Ennek megoldására meg ott a sysprep program.

(C:\Windows\System32\sysprep mappa)

Tehát VirtualBoxban bootoltattam a szerver .vhd-t, elindítottam a sysprep-et, majd az így megváltozott és elmentődött .vhd-t már natívan bootolta a rendszer, nem volt BSOD. 8) Első indításkor elvégezte a szükséges telepítéseket, konfigurálást.

Ez a sysprep-es megoldás vonatkozhat minden hasonló esetre és persze rendszer átköltöztetésre teljesen más hardverkonfigurációra.

 

Az a kezdeti feltételezés a hibák miatt, hogy a .vhd fájl ne tartalmazzon 100 MB-os boot partíciót megdőlt, de ezt mintha írtam volna már.

Link to comment
Share on other sites

  • 5 months later...
Pjotr

Ilyesmit szerettem volna én is játszani.

  • Windows 7 telepítõrõl boot;
  • Shift + F10;
  • diskpart

  • create vdisk file=d:\teszt.vhd maximum=20000

  • select vdisk file=d:\teszt.vhd

  • attach vdisk

  • exit

  • Kijelölés, hogy a Windows a VHD-re kerüljön, már itt írt olyasmit, hogy gáz lesz vele;
  • Települ...
  • Újraindítás után nem bír róla bootolni;
Ezt nem magamtól találtam így ki, MSFN-en van fent, ott mûködött is a srácnak (Vista + Windows 7 a VHD-n).
Link to comment
Share on other sites

Jay

Kimaradt egy pár karakter.

Én így csináltam:

create vdisk file="d:\win7.vhd" type=fixed maximum=20000

Ezzel a paranccsal jeleníthetők meg a lemezeken található alap- és dinamikus kötetek:

list vol

select vdisk file="d:\win7.vhd"

attach vdisk

Link to comment
Share on other sites

Pjotr

Így is írja a hibát a lemez kiválasztásakor, le is állítottam. Neked írt valami hibát (elõfordulhat, hogy a hardver nem képes bootol... vagy ilyesmit)?

Link to comment
Share on other sites

Jay

Nekem nem írt ki hibát. Neked ezt írta?

 

Windows cannot be installed to this disk. This computer's hardware may not support booting to this disk. Ensure that the disk's controller is enabled in the computer's BIOS menu.

 

Ha igen, akkor ne foglalkozz vele, nyomd meg a Next gombot.

Link to comment
Share on other sites

Pjotr

Most másik fizikai partícióra tettem a VHD-t (ennek garantáltan C a betűjele), feltelepült szépen, de most valami licenc-hibára* hivatkozik, "ez a rendszer nem indítható el virtuális merevlemezről".

 

* Windows 7 Professional nem támogatja.

 

Ez annyira nem is zavarna, de a lemezképem teszteléséhez jó lett volna. Elképzelhető, hogy tökön szúrom magam.

Link to comment
Share on other sites

Jay

Csak az Enterprise és az Ultimate támogatott. Ha csak tesztelni kell, akkor szerintem: Windows 7 Enterprise 90-day Trial. 2010 december 31-ig lehet használni.

Link to comment
Share on other sites

Pjotr

Épp most fejeztem be a tesztet Ultimate-tel, mûködik a lemezem. :)

Link to comment
Share on other sites

  • 5 years later...
TothTibor

Szeretnék segítséget kérni, hogy miképpen lehetne megoldani,hogy Hyper-V -n futó Widows 7 teljes képernyőben fusson? Az RDP teleptés nekem nem jött be.A Wndows 8.1 fut Hyper-V-n teljes 1920*1080 felbontásban 32bit, de Windows 7 csak 16 bit és 1600*1200.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...