WSLでUSBやネットワークドライブをマウントする方法

WSLではWindowsで使用しているドライブが自動でマウントされますが、USBメモリやネットワークドライブはマウントされないので、これらをマウントする方法です

はじめに

WSL(Windows Subsystem for Linux)はWindowsの操作がLinuxを使ってできるシステムです。

ファイル操作がLinuxのコマンドを使ってできるので、普段Linuxを使っている人がWindowsを操作するのにコマンドの違いで戸惑うことがなくなります。

WSLはWindowsマシンに固定で接続されているドライブ(HDDやSSD)は自動でマウントされます。

例えば、Cドライブは「/mnt/c」にマウントされます。

ですが、リムーバブルなドライブ(USBメモリやUSB接続HDDなど)やネットワークドライブは自動でマウントされません。

そのままではUSBメモリのファイルを操作しようとしてもWSLからアクセスすることができないのです。

WSLでドライブをマウント/アンマウントする方法

Linuxで接続されているドライブを利用できるようにするには、そのドライブを「マウント」します。

マウントは「mount」コマンドを利用し、マウントする対象とマウント先を指定します。

$ mount -t drvfs <デバイス名> <マウント先>
<デバイス名>:マウントしたいWindowsに接続されているドライブ名(F:、x:、¥¥server¥documentsなど)

*ドライブ名に「¥」がある場合は「’」シングルクォーテーションで囲むか、「¥¥」と書いてエスケープします。

<マウント先>:ボリュームを割り当てるパス

*パスはあらかじめ作成しておきます。任意の場所でいいですが、自動マウントされている場所は/mnt配下で/mnt/xや/mnt/usbなどとなります。

「-t drvfs」はマウントタイプの指定でWSLの場合はこのオプションを使います。

マウントを解除して、ドライブを取り外したい場合はそのドライブを「アンマウント」します。

アンマウントは「umount」コマンドを実行し、アンマウントしたい対象を指定します。

$ umount <対象ディレクトリ>
<対象ディレクトリ>:アンマウントしたいパス(/mnt/usbなど)

作成例)mount/umountコマンド実行と/mnt配下にディレクトリを作成するにはroot権限が必要なので、sudoを使ってコマンド実行します。

$ sudo mkdir /mnt/usb
$ sudo mount -t drvfs d: /mnt/usb/
$ sudo umount /mnt/usb/