Como montar a partição EXT4 no cartão SD a partir do VirtualBox


9

Eu tenho um leitor de cartão SD embutido no meu laptop Lenovo e instalei o VirtualBox e o Debian em uma VM, mas não consigo ver a partição EXT4, ou qualquer partição nesse caso, no cartão SD!

Eu fiz esta pergunta: Altere as configurações de IP montando o cartão SD em outro computador

E as respostas sugeridas envolvem a montagem do cartão SD em uma máquina virtual.


Eu acho que você precisa passar pelo dispositivo USB (o leitor de cartão SD provavelmente está conectado internamente ao barramento USB) - consulte howtoforge.com/… - Informe-nos se funcionar e escreverei como resposta.
Alex Chamberlain

@Alex Chamerlain - Ainda estou lutando, não parece aparecer como um dispositivo USB, estou olhando para montar a partição como um dispositivo bruto no VirtualBox, mas não temos (ou muito pouca) conexão com a Internet é difícil descobrir o que preciso fazer!
Dog Orelhas

Obrigado senhor, funcionou perfeitamente para usar meu disco rígido Xubuntu SATA no VirtualBox. Exatamente o que eu estava procurando.

Você deve mencionar na pergunta que está tentando fazer isso em um host executando o Windows (mesmo se você usar uma VM Linux no Windows para acessar o cartão SD).
CJS

Respostas:


8

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 diskcomando (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, listpartitionsaqui 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 createrawvmdkcomando 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.

Isso pode ser específico para o meu uso, mas achei que gostaria de comentar caso ajude mais alguém: se você estiver gravando no cartão SD a partir do sistema operacional convidado e o sistema operacional convidado bombardear com um erro BLKCACHE_IOERR, poderá corrigi-lo entrando nas configurações do convidado e ativando "Usar cache de E / S do host" no controlador SATA.
quer

1

Para fazer isso, usei um leitor de cartão SD, semelhante a este . Peguei uma na minha loja local do dólar, que é o lugar mais barato para obtê-las. Embora eu assuma que quase qualquer leitor de cartão USB funcione.

Depois de conectá-lo e inicializar sua máquina virtual, vá para o menu "Dispositivos" do Virtual Box, selecione USB e localize seu dispositivo USB. Meu aparece como "Generic-USB2.0-CRW [8687]". O nome do seu dispositivo pode ser diferente. Assim que o pluguei, ele montou automaticamente as unidades e abriu uma janela para cada uma das 2 partições (sem contar a partição de troca). Se isso não acontecer, o dispositivo é reconhecido como / dev / sdb na minha máquina com as três partições:

boot: /dev/sdb1
root: /dev/sdb2 <-- This is the EXT 4 one with the /etc/network/interfaces file
swap: /dev/sdb3

O nome do dispositivo pode ser diferente na sua máquina virtual e as partições podem ser diferentes se você estiver usando algo diferente do Debian para o cartão SD Raspberry. Se você não tiver um leitor de cartão SD à mão, tente colocar o cartão SD em uma câmera e anexá-lo ao Virtual Box. Isso pode ou não funcionar, apenas testado com o meu eBook reader (Kobo) e apenas a partição vfat (boot) aparece.


+1, embora não me ajude, talvez um título identifique esta solução como aplicável ao USB?
Orelhas de cão
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.