Estou tentando, no Windows 7, executar uma máquina virtual com o VMWare Player a partir de um sistema operacional instalado em uma partição física. No entanto, quando eu inicializo a máquina virtual, o VMWare Player diz que não pôde acessar a unidade física para gravação.
Esse parece ser um problema geralmente reconhecido na comunidade VMWare, pois o Windows Vista introduziu um novo recurso de segurança atraente que torna impossível gravar em uma unidade bruta sem obter primeiro acesso exclusivo a ela.
Eu pesquisei no Google e encontrei algumas soluções alternativas. No entanto, as limpas queridos parecem funcionar apenas em discos inteiros, e não em partições.
Então eu ficaria com a solução suja . Em resumo, ele interfere com o MBR para apagar qualquer rastreamento das partições a serem usadas, faz o Windows esquecê-las e depois restaura o MBR para que possamos iniciar a VM.
Não tenho certeza se quero fazer isso. Existe uma maneira de permitir que o VMWare adquira acesso exclusivo à partição sem exigir que eu a destrua? O que eu procuraria, suponho, é uma maneira de colocar apenas partições offline, em vez de unidades físicas inteiras.
Mais informações relacionadas à recompensa.
Tenho uma configuração de inicialização dupla: o Mac OS é o meu sistema operacional principal e também tenho o Windows instalado. Por mais que eu possa executar o Windows em uma máquina virtual, se não quiser reiniciar, gostaria de poder executar o Mac OS em uma máquina virtual quando estiver no Windows.
Meu objetivo é executar minha partição principal do Mac OS a partir do VMWare no Windows, assim como executo o Windows no VMWare Fusion. (Como esse é o meu sistema operacional principal, não pretendo aplicar patches no kernel ou em qualquer outro meio para fazê-lo funcionar em uma máquina virtual.) Criei a máquina virtual a partir do VMWare Fusion (pois possui o tipo de VM "Mac OS X Server" ) o moveu para o Windows e modificou-o no VMWare Player. Parece quase funcionar, quando o sistema operacional chega à tela de carregamento e a VM morre porque não consegue acessar \\.\PhysicalDrive0
.
O Virtual Box falha ainda mais, pois inicia o Mac OS no modo detalhado e trava muito rapidamente (mas parece capaz de acessar a partição), então acho que seria mais fácil obter o VMWare acessando minha partição do que executar o Virtual Box isto.
No lado legal, eu estaria executando uma cópia do Mac OS X em uma máquina rotulada pela Apple, então estou bem.
fonte
Respostas:
Encontrei apenas uma solução possível, usando o imdisk de driver de disco virtual gratuito junto com o devio (acesso e aquisição de unidade remota). Como o imdisk é um driver do kernel, ele pode gravar na partição. Infelizmente, como o devio funciona no modo de usuário, não tenho muita certeza se essa abordagem funcionará para você.
O devio pode adquirir uma partição física e publicá-la na rede. Por exemplo:
publica do primeiro disco a segunda partição na porta TCP 9000 e aguarda uma conexão nessa porta. É melhor desativar o firewall enquanto estiver testando isso e execute o devio como administrador.
Para definir esta partição publicada como um disco rígido novo e independente, use:
que usando o host local criará um novo disco rígido chamado R, que não é uma partição de nada. Agora você pode tentar se pode usar o fingido disco rígido R em uma máquina virtual VMware.
Essa abordagem é explicada em detalhes no Devio: Acesso e aquisição de unidades remotas .
Se isso não funcionar, você precisará:
fonte
Depende de como você está desesperado para fazer isso funcionar, mas eu diria que é possível, com "apenas" duas "etapas fáceis" (leia-se: brutal):
Escreva um driver para ignorar a restrição definida pelo Windows, usando o sinalizador documentado (semi -?)
SL_FORCE_DIRECT_WRITE
.Prenda a
CreateFile
e / ouWriteFile
telefonema de VMWare usando uma biblioteca como EasyHook (Eu disse que era fácil!) Para se comunicar com o arquivo manualmente com o driver, talvez se comunicar com o driver usandoDeviceIoControl
.Na verdade, não parece tão ruim assim, se você souber onde procurar as informações para contornar as restrições ... Conectei aplicativos como o Nero para examinar
IOCTL_SCSI_PASS_THROUGH
chamadas e criar minha própria biblioteca de gravadores de CD, e isso não seria muito difícil; escrever um driver será a parte mais difícil, mas gerenciável.Editar:
Eu estou supondo que você já descobriu isso, mas a estrutura é necessário modificar é chamado FLT_IO_PARAMETER_BLOCK para
IRP_MJ_READ
. Não tenho certeza de como será fácil, mas não deve ser muito difícil.fonte