Montar esas unidades dentro de WSL2 puede resultar un poco confuso, especialmente si no estás familiarizado con la comunicación entre los sistemas de archivos de Windows y Linux. La configuración predeterminada facilita el acceso a las unidades host de Windows mediante /mnt/, pero a veces es necesario obtener más detalles, como montar discos físicos específicos, recursos compartidos de red o incluso discos duros virtuales. Esto resulta muy práctico cuando quieres trabajar con discos externos o recursos compartidos de red directamente desde tu entorno Linux. Un aviso: algunas funciones, como el montaje de unidades USB, aún no son totalmente compatibles de forma nativa, por lo que podrías necesitar herramientas adicionales o soluciones alternativas.
Esta guía explica cómo montar diferentes tipos de unidades en WSL2, desde unidades físicas locales hasta recursos compartidos de red y discos virtuales. Es una combinación de métodos, pero todos se han probado en configuraciones reales. Al final, podrá acceder a sus unidades en WSL2, lo que le ahorrará la molestia de tener que cambiar constantemente entre Windows y Linux para acceder a los archivos. Verá comandos que podría necesitar copiar y pegar en su terminal o PowerShell, además de consejos para automatizar los montajes al iniciar.
Cómo montar diferentes unidades en WSL2
Método 1: Montaje de una unidad física (partición) en WSL2
Si Windows reconoce tu disco físico pero quieres que Linux acceda directamente a él, esta opción es para ti. WSL2 permite montar discos completos o particiones específicas, lo cual es útil al trabajar con unidades ext4 u otros sistemas de archivos compatibles con Linux que Windows no gestiona correctamente de forma nativa. Pero ten en cuenta que, en algunas configuraciones, podrías tener que actualizar WSL para que la mayoría de estos comandos funcionen. Ejecútalo wsl --updateen el Símbolo del sistema o PowerShell, por si acaso.
A continuación, para enumerar los discos conectados, ejecute:
wmic diskdrive list brief
Esto muestra todos los discos detectados. Supongamos que ve su unidad externa como «PhysicalDrive2»; para montarla en WSL, use:
wsl --mount \\.\PHYSICALDRIVE2
Si solo está interesado en una partición específica, agregue la --partitionbandera, de la siguiente manera:
wsl --mount \\.\PHYSICALDRIVE2 --partition 1
Esto normalmente monta la unidad en /mnt/wsl/PHYSICALDRIVE2p1. Probablemente querrá verificar el tipo de sistema de archivos, ya que Windows no maneja correctamente ext4 ni otros sistemas de archivos de Linux. Dentro de WSL, verifique con:
$ lsblk -o NAME, FSTYPE, SIZE, MOUNTPOINT
Si todo funciona correctamente, puedes acceder a los archivos directamente. Para desmontarlos más tarde, ejecuta:
wsl --umount \\.\PHYSICALDRIVE2 --partition 1
Si quieres que esto ocurra automáticamente al iniciar sesión, configura una tarea programada con PowerShell. Algo como esto:
$TaskName="WSL_Mount_DISK1_PART1" $Trigger= New-ScheduledTaskTrigger -AtLogOn $Action= New-ScheduledTaskAction -Execute "cmd" -Argument "/c wsl --mount \\.\PHYSICALDRIVE2 --partition 1" Register-ScheduledTask -TaskName $TaskName -Trigger $Trigger -Action $Action -RunLevel Highest -Force
Nota: WSL 2 no permite montar unidades USB ni tarjetas SD directamente. Ahí es donde entra en juego usbipd-win si necesitas pasar dispositivos USB externos. Porque, claro, Windows tiene que complicarlo más de lo necesario.
Método 2: Montaje de recursos compartidos de red de Windows en WSL
Compartir archivos de Windows a WSL a través de la red es bastante sencillo una vez que se conoce el truco. Si ya se ha asignado una unidad de red en Windows (por ejemplo, mediante una GPO o un comando como:
net use X: \\192.168.100.12\tools
Esto le proporciona una letra de unidad, y dentro de WSL puede acceder a ella montando esa unidad. Primero, cree un directorio que sirva como punto de montaje, como:
$ sudo mkdir /mnt/x
A continuación monte la unidad utilizando:
$ sudo mount -t drvfs X: /mnt/x
Ahora tienes tu recurso compartido de red accesible desde WSL. Para que esto persista tras reinicios o inicios de sesión, añade esta línea a /etc/fstab :
X: /mnt/x drvfs defaults 0 0
Y luego ejecuta:
$ mount -a
Si prefiere conectarse directamente a un recurso compartido sin una letra de unidad, puede usar CIFS-utils. Instálelo con:
$ sudo apt install cifs-utils
Y montar de esta manera (reemplazando usuario, contraseña y share_path ):
$ sudo mount -t cifs -o user=yourusername, pass=yourpassword, vers=3.0 //192.168.100.12/tools /mnt/tools
Este método es un poco más flexible, especialmente si el recurso compartido no está asignado en Windows o si desea conectarse sobre la marcha. Tenga en cuenta que se prefiere SMB 3.0, ya que SMBv1 está deshabilitado por razones de seguridad.
Método 3: Conexión de discos duros virtuales (VHD/VHDX) en WSL
Si tiene discos duros virtuales (archivos VHD/VHDX), WSL también puede montarlos, lo cual resulta práctico si utiliza almacenamiento de máquinas virtuales o desea trabajar directamente con imágenes de disco de Linux. Primero, asegúrese de que su módulo Hyper-V esté instalado; luego, cree un VHD con PowerShell como:
New-VHD -Path $env:USERPROFILE\wsl_shared_disk.vhdx -Dynamic -SizeBytes 20GB
Esto creará un VHDX de 20 GB en el directorio de tu perfil. Para adjuntarlo en WSL, ejecuta:
wsl --mount --vhd $env:USERPROFILE\wsl_shared_disk.vhdx --bare
Una vez montado, utilice las herramientas de Linux para particionar y formatear el disco, por ejemplo:
$ lsblk $ sudo parted /dev/sdc print $ sudo parted /dev/sdc mklabel msdos $ sudo parted -a optimal /dev/sdc mkpart primary ext4 0% 100% $ sudo mkfs.ext4 /dev/sdc1
Monte la nueva partición con UUID:
$ sudo blkid $ sudo mount UUID=your-uuid-here /mnt/vhd
Este método es bastante potente, pero recuerda: si el espacio es limitado, los archivos VHDX se pueden almacenar en cualquier lugar de tus discos, no solo en la ubicación predeterminada. Mover los archivos es simplemente copiar el VHDX y actualizar los comandos de montaje.
Sinceramente, gestionar el acceso a las unidades en WSL2 es un poco tedioso, sobre todo con algunos errores o un soporte incompleto. Pero una vez que funciona, ahorra mucho tiempo: evita tener que ir y venir constantemente. No sé por qué Microsoft lo complicó tanto, pero estos métodos deberían cubrir las necesidades más comunes.