1.3. Windowsドライブマウント設定


概略

WSLではデフォルトでCドライブを/mnt/cに起動時に自動でマウントしていますが、Cドライブ以外のドライブもマウント可能です。仕事でファイルサーバを使用している場合はネットワークドライブに割り当ててWSLにマウントすると便利です。
下記のようなイメージになります。

コンソールから操作しなくてもWindowsのExplorerの方が操作しやすいと思うかもしれませんがコンソールから操作できるとShellやプログラム中からWindowsドライブが使用でき非常に便利になります。

ドライブの自動マウント設定

Windows「C:」以外のドライブをマウントします。ここではFドライブをマウントします。
WSLでは内部ドライブは自動マウントされますが、他のWindowsドライブは、fstab に記載しておく必要があります。
Windowsドライブは/etc/wsl.conf で制御できるようになっています。

1./etc/wsl.conf設定

wsl.conf
$ sudo vim /etc/wsl.conf

下記の通り設定してください。

wsl.conf
[automount]
enabled=true                # Cドライブなどの DrvFs の自動マウントする
mountFsTab=true             # WSLの起動時に /etc/fstab を読み込んで自動的にマウントする
root="/mnt/"                # DrvFsのマウント先
options=""                  # DrvFsのマウントオプション
                            # 規定値: "uid=1000,gid=1000,umask=000,fmask=000,dmask=000"
crossDistro=true            # ディストリビューションを跨いだマウントをサポートする (ver2004以降)

[network]
generateHosts=true          # /etc/hosts を自動生成する
generateResolvConf=true     # /etc/resolv.conf を自動生成する

[interop]
enabled=true                # WSL内からWindowsプログラムの起動をサポートする (ver1809以降)
appendWindowsPath=true      # WSL内のPATH環境変数に、WindowsのPATH環境変数を追加する (ver1809以降)

[user]
default="develop"           # 規定のログインユーザ名を指定する (ver2004以降) 規定値: レジストリ値に従う

[filesystem]
umask=0022                  # デフォルトのパーミッションを指定する (ver2004以降)

2./etc/fstab設定

次に/etc/fstabを設定します。

/etc/fstab
$ sudo vim /etc/fstab

ファイル末尾に下記の行を追記します。
例)マウント元windows側ドライブ「f:」、マウント先Linux側ドライブ「/mnt/f」の場合

/etc/fstab
# network drive
f: /mnt/f drvfs metadata,noatime,uid=1000,gid=1000,defaults 0 0

3.マウントディレクトリ作成

$ sudo mkdir -p /mnt/f
$ sudo chown -R develop:develop /mnt/f
$ sudo chmod -R 777 /mnt/f

4.確認

マウントしてみてください。

$ sudo mount -a
$ ls -la /mnt/f

1.2.ConEmu・Nyagosインストール・設定 < 前 1.3.Windowsドライブマウント設定 次 > 1.4.Google Driveマウント設定