Leitor de cartão interno - Não USB - Windows 7 Host
Meu laptop possui um leitor de cartão embutido e não aparece como um dispositivo USB. Para fazê-lo funcionar, tive que montar a partição EXT4 como RAW antes de atribuí-la à VM e depois inicializar a VM.
A primeira coisa que notei foi que, se eu abrisse o utilitário Gerenciamento de Disco em Gerenciamento do Computador - clique com o botão direito do mouse em Meu Computador e selecione Gerenciar, você poderá ver o cartão SD como um disco e, como Kibbee mencionou, o meu também tinha três partições, eu acho que o maior partição do meio é o que eu estava procurando.
Para montar a partição bruta no VirtualBox, você precisa saber o número do disco e da partição. Eu os confirmei primeiro usando o utilitário de linha de comando do Windows Diskpart e o list disk
comando (no meu laptop e no Gerenciamento de disco, o cartão SD apareceu como o número 1)
Para identificar as partições corretamente, usei o comando VirtualBox, listpartitions
aqui está o meu, como exemplo:
vboxmanage internalcommands listpartitions -r awdisk \\.\PhysicalDrive1
E a saída para mim foi:
Number Type StartCHS EndCHS Size (MiB) Start (Sect)
1 0x0c 16 /0 /1 1023/3 /32 75 2048
2 0x83 1023/3 /32 1023/3 /32 1590 157696
3 0x82 1023/3 /32 1023/3 /32 191 3416064
A partir disso, acho que a partição 2 é a partição EXT4 à qual estou tentando acessar.
Montando a partição como um volume bruto
Para disponibilizar a partição bruta para o convidado do Linux, o VirtualBox permite enviar o createrawvmdk
comando que cria um arquivo com uma extensão .vmdk que você pode especificar como um disco existente nas configurações de armazenamento da VM. Novamente, aqui está o meu como um exemplo:
vboxmanage internalcommands createrawvmdk -filename
C:\VirtualMachines\Debian\disk1_part2.vmdk -rawdisk \\.\PhysicalDrive1
-partitions 2
(você pode deixar de fora o parâmetro "-partitions 2" para ativar todas as partições no dispositivo.)
Adicionando o disco bruto à VM
Antes de iniciar a VM
- Abra a caixa de diálogo Configurações da VM, selecione Storge
- Clique com o botão direito do mouse em SATA Controller e clique em Add Hard Disk
- Selecione o botão Escolher disco existente e navegue até o arquivo criado na etapa anterior.
Agora você pode inicializar a VM e ter acesso à partição EXT4.
Problemas com o controle de conta de usuário
Se as seguintes condições forem atendidas:
- o sistema host está executando o Windows Vista, 7 ou 8 (ou talvez o Windows Server 2008R2 / 2012)
- O controle de conta de usuário está ativado
- e você não modificou permissões em relação ao acesso ao disco bruto
a operação acima poderá falhar, mesmo se você for um administrador. Isso ocorre porque os não administradores não terão acesso a dispositivos brutos.
Vejo 4 soluções possíveis, nenhuma das quais é muito agradável:
- Desabilitar o Controle de Conta de Usuário pode corrigi-lo (eu não testei isso).
- Pode ser possível atribuir permissões para os usuários acessarem dispositivos brutos; no entanto, eu não recomendaria isso, pois é extremamente inseguro.
- Você pode executar o VirtualBox como administrador (clique com o botão direito do mouse, selecione "Executar como administrador"); você precisa fazer isso ao criar e usar o dispositivo.
- .... ou compre um leitor de cartão USB e conecte-o diretamente como um dispositivo USB.