VMWare: arrencant el WinXP de l’altre partició del HD des de Linux
Reading time: 46 – 76 minutesA aquestes altures tothom coneix l’VMWare, personalment fa força temps que uso al portàtil la versió workstation i a alguns clients tenen el server. Fora de les típiques coses que es poden llegir a la documentació oficial del producte i de productes complementaris com l’VMWare converter, que ja vaig comentar fa temps, es poden fer algunes altres filigranes amb aquest producte.
Hi ha diversos howtos (per exemple, Convert Physical Windows Systems Into Virtual Machines To Be Run On A Linux Desktop) que expliquen com convertir una partició de windows en un disc virtual que després es pot usar des de la màquina virtual de l’VMWare. Com ja apuntava fa un moment això es pot fer amb l’VMWare converter. Problemes lògics d’aquesta solució és que si la nostre partició de windows ocupa 40Gb obviament el disc virtual ocuparà el mateix. A més si la configuració del nostre windows canvia (noves configuracions, nous programes, actualitzacions, etc) el contingut del disc virtual obviament quedarà ràpidament obsolet o alrevés.
Doncs bé aquest diumenge passat vaig configurar l’VMWare perquè des de linux m’iniciés el WinXP que tinc a l’altre partició del disc dur del portàtil, tot això basant-me en un petit manual que vaig trobar a Run Existing Windows installation With Vmware Player (local). Com podeu veure la idea és molt atractiva i soluciona els problemes que comentava anteriorment derivats de tenir en el fons dos Windows al mateix PC. Obviament d’aquesta solució se’n deriva una altre dificultat la de mantenir dos configuracions de hardware (el de la màquina real i el de la virtual) en un sol WinXP. A continuació intentaré explicarvos-ho i també comentaré com l’he resolt jo.
A continuació repetiré els passos que descriu el manual anteriorment comentat perquè tingueu una referència totalment traduida de com fer això. Realment els passos per ajustar l’VMWare són realment senzills els problemes realment complexos són més de cara al Windows que no pas en el que es refereix en aconseguir que el VMWare arrenqui a partir de la partició WinXP. L’explicació del manual anterior l’adaptaré a la meva configuració ja que crec que és on puc aportar un valor diferencial.
Escenari
Al portàtil hi tinc les següents pariticons:
oriol@mini2 ~ $ /sbin/fdisk -l /dev/hda
Disk /dev/hda: 100.0 GB, 100030242816 bytes
255 heads, 63 sectors/track, 12161 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 1 63 506016 82 Linux swap / Solaris
/dev/hda2 64 4927 39070080 83 Linux
/dev/hda3 * 4928 8512 28796512+ 7 HPFS/NTFS
/dev/hda4 8513 12161 29310592+ c W95 FAT32 (LBA)
Com podeu veure i resumint, bàsicament tinc una partició linux de 39Gb, una Windows de 28Gb formatejada amb NTFS i una FAT32 de 29Gb que uso per guardar els fitxers. Bàsicament aquesta partició és per temes històrics de quan el suport NTFS des de linux es limitava a lectura. Avui en dia el suport NTFS des de linux ja és en lectura i escriptura, per tant es podria convertir a NTFS. Malgrat això la recomanació és que no ho feu, sobretot perquè en cas de desastre si haguéssim d’usar eines per recuperar el contingut de la partició aquestes eines per NTFS sempre són més limitades, o simplement hi ha menys eines al mercat que soportin la recuperació de dades per NTFS.
Pel que fa a la CPU i la RAM són 1.2GHz i de 1Gb respectivament. He de reconeixer que el sistema li costa lo seu arrencar, sobretot perquè a la màquina virtual d’VMWare (o sigui, el WinXP) li assigno 512Mb de RAM. Si a això li sumem, que jo sempre tinc la mania de tenir mil programes oberts a la vegada: FF2 amb mil finestres, evolution, openoffice, zend studio, etc. Obviament tot el sistema es torna molt pesat. Així doncs ja tinc un bon motiu per comprar-me un nou portàtil amb una bona CPU i moltíssima RAM.
Creant la màquina virtual d’VMWare
He creat un directori nou just on tinc la resta de màquines virtuals que uso per treballar a la partició de dades, o sigui, que partir d’ara tots els fitxers dels que parli per mi estan situats a /mnt/fitxers/vmware/winxp-mini2. Al directori hi copiem aquests dos fitxers: windows.vmdk i windows.vmx. El que ara ens cal és una eina com el parted per tal de coneixer algunes dades de les nostres particions i el disc dur:
Informació que hem de recollir del parted:
<div class="imatge" style="text-align: center;"></div>
Ara hem d’editar el windows.vmdk i hem de modificar les 4 dades que hi ha seleccionades a continuació:
<div style="text-align: center;"></div>
On posa # Extend description dues linies per sorta fixeu-vos que teniu el número de sectors que té el vostre disc, subratllats de color vermell doncs bé aquí heu de posar la dada que us dona el parted en el meu cas: 195371567s i abans de copiar-la li restem 63 que és el que ocupa l’MBR del disc, així doncs jo hi he de posar 195371504:
195371567 - 63 = 195371504
Les altres tres dades marcades en vermell en el fitxer windows.vmdk són els cilindres, capçals i sectors del vostre disc (cylinder,head,sector geometry) aquestes dades les podeu veure en el segon bloc de dades que li hem demanat al parted, en el meu cas: 12161,255,63.
Així doncs en el meu cas el fitxer windows.vmdk queda així:
# Disk DescriptorFile
version=1
CID=5aa3c828
parentCID=ffffffff
createType="fullDevice"
# Extent description
RW 63 FLAT "windowsxp.mbr" 0
RW 195371504 FLAT "/dev/hda" 63
# The Disk Data Base
#DDB
ddb.toolsVersion = "0"
ddb.adapterType = "ide"
ddb.virtualHWVersion = "4"
ddb.geometry.sectors = "63"
ddb.geometry.heads = "255"
ddb.geometry.cylinders = "12161"
Ja tenim llest l’VMWare perquè arrenqui la nostre altre partició amb el windows. Ara qui no esta preparat és el windows, ja que penseu que l’VMWare és una màquina virtual que lògicament no té el mateix hard que la vostre màquina. Per exemple, no usa la mateixa targeta gràfica, controladora de ratolí, controladores USB, contraladores de disc, etc. Per tal de deixar intacte la nostre partició de windows una bona idea és crear un nou perfil i en aquest nou perfil hi podem configurar el hard d’aquesta màquina virtual. A més li podem dir al windows que cada cop que intenti arrencar ens pregunti en quin perfil ho volem fer així segons si ho fem des del PC o des de la màquina virtual sempre es reconeixerà el hard automàticament.
Configurant el Windows perquè treballi amb dos perfils de hardware diferents
Dins del control panel cliquem sobre la incona system després anem a la pestanya hardware i cliquem en el botó hardware profiles:
Aquí copiem el perfil actual i seleccionem el segon radio button per poder escollir el perfil que ens interessi a l’hora d’arrencar el windows. Un cop fet això reiniciem la màquina i arrenquem seleccionant el nou perfil, en la meva captura podeu veure que aquest perfil l’he anomenat vmware també he fet una còpia de seguretat del perfil per defecte Perfil 1 i alguns altres perfils que uso per fer proves.
Un cop s’ha iniciat la màquina amb el perfil vmware un bon consell és que deshabiliteu tots els drivers de hard que creieu que puguin causar conflictes al iniciar-se amb la màquina virtual: controlador del disc dur, ratolí (driver synaptics a mi no em funciona), targeta gràfica, targeta de so, bluetooth, pcmcia, etc.
Com ja sabreu per fer això heu d’anar al control panel, cliqueu a la icona system, a la pestanya hardware i finalment al botó administrador de dispositivos. També és bona idea descarregar les VMWare Tools ja que inclouen alguns drivers que ja podeu actualitzar directament des d’aquí, fent el típic d’actualitzar el controlador i anant al direcotori on hi ha el driver de l’VMWare perquè així quan arrenquem amb la màquina virtual el dispositiu ja funcionarà correctament, ús recomano que feu això especialment amb el controlador del disc dur. Jo vaig tenir problemes i la solució la vaig trobar a Running a Windows 2000, Windows XP or Windows Server 2003 Virtual Machine from an Existing Multiple-Boot Installation i a Error INACCESSIBLE_BOOT_DEVICE (Raw Disk).
A mi personalment el que més problemes em va donar va ser el controlador synaptics de Dell que em provocava un pantallazo blau (BSOD) l’error no el vaig guardar, però deia algo d’IRQs. Si el trobo ja l’afegiré. Finalment vaig haver de desintal·lar el driver per Add/Remove software i ara treballo amb el touch pad com si fos un ratolí PS/2.
Sobretot recordeu que heu de deshabilitar els controladors no eliminar-los, ja que sinó després quan entreu en el vostre perfil per defecte aquests s’hauràn de reinstal·lar. Arribats en aquest punt ja podeu sortir del windows i tornar al linux per iniciar la nova màquina virtual. Si surten pantalles blaves al iniciar no ús preocupeu, això només afecta al nou perfil que heu creat i heu d’intentar entrar com sigui, via safe mode, tornant a repetir els passos anteriors, etc. Un cop a dintre repasseu si teniu algún problema amb el hard tornant a la gestió de dispositius.
Experiencia
Fa una setmana que estic treballant amb el sistema i n’estic molt content, com comentava només trobo que vaig curt de RAM i de CPU però per la resta és realment genial disposar de tots els aplicatius de windows de forma tan ràpida des de linux. Sempre puc veure quins són els efectes que estan tenint els clients quan tenen un problema amb alguns dels meus aplicatius, sistemes o demes. A més no tinc els típics problemes del wine quan emula windows perquè pugui llençar aplicatius. A vegades calen clients que només existeixen per windows i d’altres sistemes propietaris que sempre obliguen a perdre molt de temps reiniciant la màquina i a més, almenys a mi, em fan perdre tota la meva forma de treballar ja que no tinc accés a les aplicacions que m’acompanyen usualment a l’escriptori.
Com a nota negativa comentar, que no sé si és culpa del invent o si no hi té res a veure però la partició de dades la vaig haver de reparar quan mai ho havia hagut de fer. Jo diria que és culpa de que tinc la mania de deixar la màquina virtual suspesa i continuar treballant amb la paritició de dades des de linux. Així doncs, els fitxers que tenia oberts des de windows i que no s’han alliberat correctament perquè el sistema s’ha suspès no pas apagat ha creat algún tipus de conflicte amb els canvis que he fet al sistema de fitxers des de linux. Així doncs, a partir d’ara apagaré sempre la màquina virtual a veure si no tinc aquests problemes d’incosistència amb la partició de dades. Jo diria que el raonament té molta lògica ara només cal que sigui cert.
Resumint doncs, estic contentíssim d’aquest enginy i animo a tothom que tingui aquesta necessitat a usar-lo. Això si recordeu que cal molta RAM i una CPU ràpida. Sinó la SWAP anirà de cul i tot plegat es farà molt lent i pesat d’usar.