Fizikai windows virtualizálása linux alatt

Fórumok

Sziasztok!

Adott egy dualboot windows 8.1 és linux mint rendszerekkel, uefi telepítésben.
Linux alá feltelepítettem egy vmware workstationt és beállítottam a fizikai windowst virtuális gépnek. A célom az, hogy ne keljen átlépkednem windows alá újraindítások közepette, hanem a vmware-ben elindítva is tudjak ténykedni benne. Egyéb esetekben pedig ha szükséges, akkor tudjam indítani fizikailag is a windowst, egyszerűen kiválasztva a grubból.
Vmwareben ezt szépen meg lehet neki adni. A problémám ott van, hogy a vm beállításoknál meg kell adnom, hogy uefi módban telepített windowsról van szó. Csak így hajlandó elindulni. Szépen betölt, ténykedek rajta, leállítom. A laptopot újraindítva a grub továbbra is fogad, teszt kedvéért kiválasztom a windowst. Betöltődik, minden rendben. Újraindítást követően azonban már csak a windows töltődik be, grub nincs. Linux live lemezzel visszaállítom a grub installal a grubot, ez nem probléma.
Azonban ezt minden egyes alkalommal eljátssza, amikor a windowst elindítom vm-ben.
Olybá tűnik nekem, a windows vm-ben történő tartózkodása miatt a következő fizikai belépést és újraindítást követően mintha átírná az efi beállításokat, mivel a virtuális környezetben csak magát látja, az alatta működő fizikai linuxot nem.
Nem tudom ez hogyan lehetséges, nem is igazán értem.
Milyen megoldást lehetne találni arra, hogy a windows ne "bántsa" az efi beállításokat és gond nélkül üzemeljen vmben és fizikailag is?
Régebben próbáltam már ezt a variációt, akkor nem uefi telepítés volt, rendben működött.
Olyat próbáltam, hogy beállítom vmben, a virtuális környezetben ne mentse a módosításokat, de nyilván így nem sok értelme lenne a történetnek. Egyébként ennél a beállításnál meg is marad a grub, tehát tényleg nem módosít semmit.
Az esetleges válaszokat, ötleteket szívesen fogadom, és előre is köszönöm!

Üdvözlettel,
János

Hozzászólások

Kicsit naív a kérdés: Miért nem csinálsz a linuxodnak is egy efi bootolási "lehetőséget"?

Gyanítom, ha a linuxod is tudna efi-ről bootolni, akkor a bios boot menüjébe ha be is teszi a windows magát, mint efi opció, ha a sorrendet beállítod az efi-s lehetőségek közül, akkor azt már nem variálja át.

Vagy én néztem el valamit az írásodban, és a grub-od is efi-ről jön?

Ami azt illeti, a linuxom is efis. És az érdekes az volt, hogy miután a windowst futtattam virtuális környezetben, majd futtattam fizikailag is, a következő újraindításnál beírta magát az első helyrea biosban. Sorrendet visszaállítottam, újraindítva belépve biosba megint csak visszaállította.
És itt már grubom sem volt, csak a windows indult. Katyvasz volt az egész.

[MEGOLDVA]

Idő hiányában mellőztem a problémát, azonban a napokban ismét elővettem.
kvm/virt-manager/qemu kombóval sajnos nem sikerült összehoznom, azonban vmware-ben sikerült!

A megoldás az volt, amit kaptam javaslatként:
Egy virtuális efi partíciót kellett létrehozni. Ezt beadtam vmware-be, második lemezként pedig a fizikai lemezről csak a windows partíciót.
Rufus programmal bootalható efi windows usb készítése, erről bootolni virt.gépen.
Számítógép javítás választása, parancssor, majd némi bűvészkedés és a mutatvány sikerült!

Diskpart
select disk 0
select partition 1
clean
Create partition primary
format fs=fat32
assign letter=
exit
cd /d :\EFI\Microsoft\Boot\
bootrec /FixBoot
ren vagy remove bcd
bcdboot e:\Windows /l hu-HU /s b: /f ALL

Nagy vonalakban ennyi. A parancsokat fejből írtam le, nem biztos hogy így van folyamatában, de támpontnak nem rossz, hátha valaki szeretne ilyen hülyeséget csinálni! :D :)

Köszönöm a közreműködést mindenkinek!

Nem írtál le minden infót, amit kellene. Azzal a feltételezéssel, hogy a grubod is efi módban indul: szerintem a windows felül írja az efi partíció tartalmát. Ha csak egy lemezed van, akkor megszívtad, mert nem is tudsz neki másik efi partíciót csinálni.

Egyébként érdemes lenne elgondolkodni, hogy az egyik os-t teljesen virtualizálod. (Főleg a winnek nem fog hosszú távon jót tenni, ha minden második indításnál változik a hardver attól függően hogyan indítod.)

Zavard össze a világot: mosolyogj hétfőn.

> nem is tudsz neki másik efi partíciót csinálni.

Ez biztosan nem igaz, én anno csináltam (Win + Lin + BSD), de elég nagy szívás. Sokkal inkább egy rendes EFI-s bootloader kellene - pl. rEFInd.

(Amúgy meg mi az, hogy a Win csak egy boot miatt felülírja az EFI System Partíciót???? Én amúgy a multiboot-os EFI-s gépemre telepítettem EFI-shellt is, biztos ami biztos, de eddig bármelyiket is bootoltam be a 3 OS-ből, mindig ment a következő OS bootja is.)

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

Kelleni semmilyen nem kell, ez igaz. Legfeljebb kényelmessé teszi az életet. Pl. az én UEFI-s laptopom tudja azt, hogy beállítok egy elsődleges eszközt ami bootol, meg a Press F2 to change Boot menu-t. De ennél többet már nem. Mondjuk egy olyat, hogy helyből kaphatok egy kiválasztó menüt, és nem a logo megjelenésének első 5 másdpercében tapicskoljak a billentyűzeten. Szerintem ezért jó valamilyen boot manager (mint a rEFInd), vagy egy kicsit okosabb boot loader (pl. a grub.efi).

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

kvm, virt-manager, been there, done that.

Én is nagyon köszi a részletes leírást. Segítenél? Pl: UEFI volt? Te is hol VM-ben, hol a fizikai vason futtattad a Windows-t? Csak épp nálad nem barmolta felül az SP-t a VM-beli Win? Vagy mi?

Csak mert fentiek nélkül kissé fogalmatlan ideböfögésnek tűnik a hozzászólásod, mint aki a címen kívül mást nem olvasott el.

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

Volt. Igen. Nem barmolta felul, de ha megis, akkor megjavitod az uefi-ben a sorrendet/bejegyzeseket es/vagy efibootmgr. Vagy valami.
Csak, mert a fenti kerdesek alapjan nem neztel utana mi es hogyan mukodik a KVM/virt-manager/EFI.

Gyakorlatilag a fizikai diszket adod at a virtgepnek. Ugyis az EFI intezi melyik image-t kell bootolnia es honnan, itt mar nem kell az elso majdnem400 szektort atirogatni, mert nem ott van a boothoz az info.

Ha konkret kerdesed is van rola vagy valahol elakadnal, szolj. :)

Szuper. Akkor elsőként úgy kell érteni a válaszodat, hogy szerinted ha a kérdező (nem én, mert nem én kérdeztem!) jót akar magának, akkor nem VMware Workstation-t használ erre, hanem a Linuxában natívan ott levő KVM-et.

Mindenesetre az azért érdekel, hogy mi módon adod oda a teljes diszkedet a KVM-nek ahhoz, hogy az X. partíción levő Win-hez adjon egy futtatókörnyezetet - miközben ugyanazon a diszkről az Y. partícióról fut a Linux és a KVM. Nem adhatod oda csak a partíciót, mert akkor nem látja az SP-t. (Akkor meg nyilván nem tudja felülírni.) Mondjuk ez számomra a kérdező eredeti felállásában sem tiszta.
Szóval hány diszk van, és hogyan vannak partícionálva? Nálad és a kérdezőnél? Hogyan bootolod egyik és másik helyzetben?

=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?

Ugy kell ertelmezni a valaszomat ahogy leirtam. KVM tudja, mukodik.
Irtam fentebb: "Gyakorlatilag a fizikai diszket adod at a virtgepnek." aka: sda pl. A windows nem foglalkozik ext4(*insert random linux FS here)-es particiokkal. Ugyanis olvasni se tudja :)
Ugyanaz a dualbootos efi-s rendszer van kvm eseten is csak a sajat efi-jet hasznalja. A szektorok ugyanazok.

De megegyszer mondom, ha nem erted, kezdd el a fenti szerint megcsinalni es ha elakadnal szolj! Koszi!

Úgy kéne csinálni, hogy kellene gyártani egy virtuális diszket, amin van partíciós tábla, egy read-only EFI partíció, meg a Windows partíciója. Ez utóbbinak nyilván a valódi diszkről kell jönnie, az EFI partíció meg akkor jöhet a diszkről, ha read-onlyvá tudod tenni (hogy ne bassza szét a Windows). Vagy lemásolod egy fájlba a host oprendszeren, és a másolatot rakod be a Windowsnak egy partícióba, akkor abban túrhat, ahogy neki jólesik.

Na hogy ezt a virtuális diszkszeletelést hogy lehet megcsinálni vmware-ben, azt tőlem ne kérdezd. De ha az igazi diszkedet adod oda a VM-nek komplett, akkor naná, hogy szét tudja baszni a Windows a másik partíciót is rajta. Ha pedig csak a Windows partícióját adod neki valahogy, akkor meg nem fog működni.

Es efi particiod van?
Efi kvm/qemu-ban bekapcsolva?
Ha a Gerd Hoffmann fele efi megoldast hasznalod VM bootkor [esc]-re be kell jonnie az efi beallitasoknak, ott tudsz benne mokolni melyik induljon el.
Esetleg efi kepes liveCD, majd ott efibootmgr, ha mukodik, akkor biztosan van efi supportod.

https://fedoraproject.org/wiki/Using_UEFI_with_QEMU