Instalace OS na virtuální disk
Aktualizace tématu článku (z dubna 2024) je v článku Instalace Win11 na VHDx. Řeší instalaci modernějších OS (Win10 a 11) na VHD.
Protože jsem potřeboval na notebooku spustit program, který nepracuje správně pod Windows 10, rozhodl jsem se na něj dostat paralelní instalaci Windows 7. Abych nemusel přeuspořádávat disk, rozhodl jsem se pro instalaci na virtuální disk (VHD). To jsem ale netušil co mě čeká. Při snaze o instalaci z USB disku instalátor skončil hlášením, abych nainstaloval ovladače CD-ROM. Jedná se zřejmě o něco v souvislosti s tím, že notebook má USB řadič, který instalátor nepodporuje (více lze najít tady). Mimo jiné díky tomu taky nefungovala v instalátoru myš. Tento zádrhel jsem se rozhodl neřešit, protože řešení by asi nebylo snadné, ale při prohledávání internetu jsem narazil na možnost instalace spouštěcího instalačního obrazu přímo na VHD.
Po několika peripetiích (především s ovladači a záplatami) se mi systém na VHD podařilo zprovoznit a tak jsem se odhodlal vytvořit další instalace do VHDX, tentokrát to už ale byla Windows 10. Nový systém je na tuto možnost o dost lépe připraven.
Původní návod "Jak na VHD boot"
Jak jsem postupoval já
Nejdřív upozornění na to, že instalaci na VHD sedmičky umožňují jen ve verzi ULTIMATE (s Home a Pro máme smůlu). Předpokladem je také mít na PC nainstalován nástroj ImageX, který je součástí balíku Windows Assessment and Deployment Kit (Windows ADK).
- Vytvořil jsem ve správci disků VHD virtuální disk 50GB s pevnou velikostí, ten jsem inicioval, vytvořil na něm oddíl, ten naformátoval a přiřadil mu písmeno (H:).
- Přepnul jsem se v příkazové řádce do adresáře s ImageX utilitkou a zadal příkaz:
imagex /apply x:\sources\install.wim 1 y:\ (příkaz pracuje s WIM i ESD, x je písmeno jednotky s instalačkou) - Poté, co se WIM na VHD úspěšně rozbalí, je třeba VHD přidat jako možnost do zavaděče příkazem:
bcdboot y:\windows - Pak už je možné provést restart, v nabídce zavaděče vybrat správnou volbu pro boot z VHD a instalaci systému dokončit.
Obvyklé umístění utility ImageX je: C:\Program Files (x86)\Windows Kits\10\Tools\bin\i386
Vzhledem k tomu, že se jedná o poměrně "mladý" notebook (ASUS X540LA), jsou oficiálně k dispozici drivery jen pro Windows 10 64bit. Nepodařilo se mi tedy rozchodit touchpad, který není plug and play. Touchpad je totiž připojen na I2C a ovladače pro Win7 nejsou k mání. Navíc aby byla funční alespoň externí myš, bylo nutné v BIOSu vypnout volbu xHCI u USB, jinak nebylo možné nainstalovat ovladače pro USB. Vypnutí xHCI by možná řešilo i v úvodu popsanou nepřítomnost myši v instalátoru Win7.
Při dalších pokusech s VHD jsem vyzkoušel vytvoření disků s Windows 10 (Pro i Home). U těch je výhodou, že je možné takto nainstalovat i verzi Home. Pro desítky je asi lepší využít virtuální disk ve formátu VHDX s dynamicky přidělovanou kapacitou (já jsem jako maximální velikost opět nastavil 50GB). Záloha takového systému je pak časově i prostorově méně náročná, VHDX by měl lépe snášet "výpadky napájení" (vynucené ukončení OS). Problémem by pak ale mohl být případně docházející prostor na mateřském disku. Při provozování takovéto instalace je tedy třeba počítat s dostatečnou rezervou kapacity na mateřském HDD, popř. VHD vytvořit na samostatné partition s dostatečnou rezervou kapacity.
Příkazy pro vytvoření VHD(X) z příkazové řádky
V instalátoru Windows je možné příkazovou řádku spustit stisknutím kombinace kláves "Shift+F10".
exit
Odstranění OS instalovaného na VHD
Pokud se potřebujeme OS nainstalovaného na VHD(x) zbavit nebo jej pouze odpojit, je možné tak učinit např. pomocí záložky "Spuštění počítače" v okně "Konfigurace systému" (msconfig).
Související problémy, nekompatibilita etc
Hyper-V a VMware: pro konverze VHD je třeba nainstalovat Hyper-V, aby příkazy v PowerShellu byly funkční. Bohužel, pokud je na stejném PC nainstalován virtualizační nástroj od VMware, nebude možné z něj po nainstalování Hyper-V virtuální stroje spouštět. Řešením tedy je Hyper-V nainstalovat, provést potřebné konverze a opět jej odinstalovat, nebo Hyper-V nainstalovat do virtuálního stroje, vyhrazeného pro konverze. Toto je celkem mrzuté, nejlepší je tedy provádět konverze na PC, kde bude nainstalován pouze Hyper-V.
Nástroj Hyper-V je dostupný jen ve verzi Pro (Win10).
Windows 7: pro instalaci na VHD je možné použít pouze verzi Ultimate nebo Enterprise. Nicméně vytvoření a spuštění tohoto systému je možné i z verze Home. VHDX není podporováno.
Windows 8 a 8.1: na VHD(X) je možné instalovat Pro verzi, Home zatím neověřeno.
Windows 10: pro instalaci na VHD(X) je možné použít verzi Home i Pro.
Odkazy na související weby
https://drp.su/en/laptops/asus/x540la?os=windows-8.1-x64
Potíže při instalaci (UEFI/GPT)
Po několika úspěšných instalacích OS na VHD a VHDX se mi stala nepříjemná věc. Chtěl jsem na notebook dostat ještě instalaci Win10 v 32b verzi (1709). Po předchozích zkušenostech jsem neočekával žádné potíže, a tak jsem instalaci na VHDX provedl standardním způsobem. Problém nastal, jakmile jsem zadal poslední příkaz (bcdboot g:\windows). Jeho provedení trvalo poněkud déle, ale hlavně, po restartu nebylo možné OS bootovat - nedošlo ke spuštění nabídky zavaděče. Selhaly i pokusy o opravu zavaděče z instalačního disku a příkazové řádky.
Abych se dopátral příčiny, zkopíroval jsem ISO na jiné PC a z tohoto ISO vytvořil instalační flešku. Z této flešky ale nebylo možné na notebooku instalaci spustit. Vyvodil jsem z toho tedy (nesprávně), že ISO obsahovalo nějak poškozené soubory zavaděče a příkazem "bcdboot" jsem toto poškození zkopíroval i do zavaděče na notebooku.
Abych na notebooku opravil zavaděč, provedl jsem instalaci čistého 64b OS do VHDX (tady nebude rozhodující, jestli do již existujícího, nebo do vytvoříeného při instalaci), při prvním restartu během instalace je pak již dostupný i původní OS na fyzickém disku.
Určitě existuje i způsob, jak zavaděč opravit jednodušeji, mně se to ale bohužel nepodařilo a byl jsem vděčný alespoň za tuto možnost. Zkusil jsem ještě na notebooku spustit instalaci OS Win8 32bit z originální instalačky a také to nebylo možné. Zřejmě tedy notebook (ASUS X540L) 32b systémy nepodporuje. Funkci ISO jsem pak ještě zkusil ve VMware playeru a tam fungoval, takže předpoklad vadného ISO souboru byl nesprávný. Dalším pátráním po příčině problému jsem zjistil, že problém je v omezeních UEFI/GPT (více zde). Povolení CSM v BIOS/UEFI pak umožnilo bootování z instalačky Win8. Je tedy možné, že nakonec zavaděč nebyl poškozený, ale byl pouze přepsán na 32b verzi, kterou notebook se zakázaným CSM odmítl spustit.
Související odkazy:
https://www.servispckupka.cz/jak-opravit-bootloader-mbr-gpt-windows.php
https://technet.microsoft.com/cs-cz/library/dd744347(v=ws.10).aspx
https://support.microsoft.com/cs-cz/help/814070/how-to-establish-and-boot-to-gpt-mirrors-on-64-bit-windows
https://www.cnews.cz/easybcd-lek-na-problemy-s-bootovanim-windows/