Uma tecnologia de virtualização por hardware que é suposto melhorar a performance; no entanto, a única coisa que faz é tornar a virtualização impossível. Alguém fez asneira, e não me parece que tenha sido a Intel

VMware LogoNa sequência da implantação do Linux do último post, queria instalar o Windows 7 que tinha acabado de ser substituído numa máquina virtual – afinal, tenho uma licença que de certezinha que não ia ficar a apanhar pó. Na realidade, como faço algumas coisas que precisam de ser testadas nas três principais plataformas, dava-me mesmo jeito. Além disso, tinha guardado os discos das máquinas virtuais que tinha anteriormente, e precisava dos dados que estavam dentro deles.

Eu dava-me perfeitamente com o Oracle VM VirtualBox, e foi isso que tentei instalar logo a abrir, até porque os discos que tinha guardado era do formato dele. Instalou direitinho, vindo do repositório do Ubuntu. Coloquei o CD do Windows 7 na drive (e o Kubuntu não o reconheceu, o que era expectável), configurei uma nova máquina virtual e vá de instalar. A certa altura da instalação, crasha-me o sistema; não apenas a máquina virtual, o sistema todo: nem rato, nem teclado, nem sequer soft shutdown no botão. Reiniciar, nova tentativa, novo crash, mas noutro ponto da instalação. Algumas tentativas mais tarde, apenas por uma vez tinha chegado ao desktop do Windows 7, e crashado logo de seguida.

Ok, aparentemente o VirtualBox não se dá com o Kubuntu. Tentemos então com o VMware. O VMware Player também está presente no repositório, mas eu até tinha uma licença do Workstation 7 do início do ano, por isso foi sacar a última versão (a 8) e instalar. Repeti o processo, CD na drive, criação de nova máquina virtual, tentativa de instalação.

Tinha rigorosamente os mesmos sintomas. Isto não estava a ser tão pacífico como eu pensava (alguma vez é?).

No processo, acabei por pedir ajuda no Portugal-a-Programar, mas sem qualquer efeito prático. O melhor conselho que me deram foi actualizar para a versão mais recente do Kubuntu, que à data e hora do conselho ainda não tinha saído, mas saiu algumas horas depois. No entanto, a actualização em si não resolveu o problema, levantou foi problemas novos...

Um dos problemas conhecidos com o upgrade para a versão 11.10 relaciona-se precisamente com quem é "utilizador do VMware Workstation 8 ou VMware Player" (aqui) – ora, isso parece-se mesmo comigo. Desinstalei cuidadosamente o Workstation, e actualizei o Kubuntu. Bam, fiquei com o problema reportado. Aparentemente, não desinstalei tão cuidadosamente como devia. Pelo que percebi da leitura do bug em causa, a desinstalação comum deixa alguns traços no sistema, incluindo as referentes a este comportamento indevido. Existiam algumas soluções para contornar o problema mas, mais uma vez, a minha instalação era suficientemente recente para eu poder fazer all in e reinstalar de novo.

Como é óbvio, tentei logo instalar a versão mais recente, que é o que um novo utilizador faria, de qualquer forma. Mas como nada podia ser simples nesta minha aventura, a versão do driver open source para NVIDIA, o Nouveau, que vem com esta nova versão do Kubuntu, ainda vem mais partida que a anterior, e não tinha KDE, de nenhuma forma e feitio. A única maneira foi instalar a 11.04, actualizar para os drivers proprietários, e só depois actualizar para a 11.10.

Instalei o Workstation 8 de novo, tentativa de instalar o Windows 7 numa máquina virtual novinha em folha e... igual. Isto começava-me a bulir com os nervos, e eu começava a entrar em desespero. A cada tentativa falhada, ouvia vozes na minha cabeça: "isto era tão mais fácil no Windows; com o Windows isso já estava despachado; mais valia ter ter reinstalado o Windows de novo". Em parte, era o meu próprio subconsciente, em parte a minha esposa a chagar-me a paciência, visto eu ter "forçado" a instalação do Kubuntu também no portátil dela (cá em casa, ninguém sofre sozinho).

Em desespero de causa, comecei a desligar coisas à maluca, primeiro nas definições das máquinas virtuais, e depois na BIOS da minha máquina. Eventualmente, acabei por desligar a coisa certa, e permitiu-me concluir uma coisa que me andava a burilar desde o início: porquê, oh, porque é que isto não acontecia no Windows.

A definição em causa estava na BIOS, e é o Intel VT-d, que é uma solução para virtualização de dispositivos, que permite o acesso directo pelas máquinas virtuais dos dispositivos, nomeadamente drives; não confundir com o Intel VT-x, que é um termo mais genérico para um conjunto de tecnologias de virtualização. Quando desliguei o maldito VT-d na BIOS, ficou logo a funcionar – eventualmente, embora não tenha maneira de o confirmar, à custa de alguma performance.

Agora, porque é que isto não acontecia no Windows? É que o Windows conseguia reconhecer correctamente qualquer CD que eu espetasse dentro da drive, e o acesso, pela máquina virtual, à drive física do host era, digamos, deferida. No entanto, o Kubuntu recusava-se a reconhecer o CD de instalação do Windows 7, pelo que tive que activar uma opção, tanto no VirtualBox, originalmente, como no VMware, de bypass ao host para aceder à drive física. Esse bypass usa, se estiver disponível, a tecnologia VT-d.

Posto isto, e com o problema finalmente resolvido, só me resta perguntar: quem é que fez asneira? A Intel tem essa tecnologia mal implementada no X58? O Linux, ou mais especificamente, o Kubuntu, lida mal com acessos através dessa tecnologia? Ou tanto a Oracle como VMware tem a implementação de acesso a essa tecnologia engatada?

Não sei e, como diria Rhett Butler, frankly, my dear, I don't give a damn; tenho o problema resolvido.

Partilhar no Sapo Links Partilhar no del.icio.us Partilhar no Digg Partilhar no Twitter Partilhar no StumbleUpon Partilhar no MySpace Partilhar no Facebook

Comentários Deixar um comentário

Tem que efectuar login para poder deixar comentários!

Se não está registado, registe-se aqui.
 Doar (via PayPal)
 Categorias
 Arquivo
 Projectos em Destaque
 Últimas Postas no Blog
 Últimos Comentários do Blog