domingo, 3 de noviembre de 2019

Acceder a tarjeta SD desde máquina virtual

Una pequeña chuleta porque me hará falta más adelante (y seguro que a alguno de vosotros os ha pasado): intentar acceder a la tarjeta SD insertada en el lector integrado del portátil y no conseguir, ni siquiera, que la detecte.

Mi problema era que esta tarjeta SD tenía un sistema de ficheros ext4 y de las muchas formas de hacer el cambio esta era la que más seguridad me daba.

He encontrado varias fuentes que cuentan prácticamente lo mismo (entre otras, una pregunta en superuser.com).

Todo lo haremos con permisos elevados de administrador.

Desde un cmd ejecutamos:

wmic diskdrive list brief

Que nos debería devolver algo parecido a:

c:\> wmic diskdrive list brief

Caption             DeviceID            Model               Partitions  Size
SDHC Card           \\.\PHYSICALDRIVE1  SDHC Card           2           32004564480
TOSHIBA MQ01ABF050  \\.\PHYSICALDRIVE0  TOSHIBA MQ01ABF050  4           500105249280

A partir de estos datos usaremos el DeviceID. En nuestro caso será "\\.\PHYSICALDRIVE1". Aquí usaremos la herramienta de VirtualBox vbmanage:

C:\Program Files\Oracle\VirtualBox> VBoxManage internalcommands createrawvmdk -filename "%carpetaDestino%\sdcard.vmdk" -rawdisk "\\.\PHYSICALDRIVE1"

No genera realmente un disco duro virtual sino un enlace. No me ha pasado pero no quitaría la tarjeta hasta que no terminemos todo el proceso. No sé las consecuencias pero algo podría fallar. En mi caso para una tarjeta de 32GB no ha tardado casi nada en generar el fichero.

Ahora sólo quedaría ir a la máquina virtual que queremos utilizar (o crear una nueva) e incluir este disco virtual entre los que necesitemos. Para mí era necesario cambiar algunos datos que en Windows no podía, por lo que he tenido que crear una máquina virtual y además de añadir este "disco" de apenas unos pocos megas (por no decir KBs) la ISO con la que arrancarla. Eso sí: le ha costado arrancar más de lo que normalmente empiezan a arrancar las otras.

Recuerda: absolutamente todo lo tendrías que hacer con permisos de administrador (incluyendo la máquina virtual).

Espero que sea de utilidad si os veis en la necesidad.