WindowsのBash内からリムーバブルメディア(サムドライブやSDカードなど)にアクセスする方法はありますか?
Windows上のBash はDriveFs を使用して/mnt
フォルダに固定ドライブをマウントしますが、リムーバブルメディアを自動的にマウントすることはありません。そしてそれらを/dev
に入れているようにも見えません。
Aaron@MYPC:/$ ls /dev
block fd kmsg lxss null ptmx pts random shm stderr stdin stdout tty tty0 tty1 urandom zero
リムーバブルドライブをマウントする方法はありますか?基礎となるブロックデバイスにアクセスする方法はありますか?
良いニュースです。Windows10上でdrvfsを使ってUSBメディア(FATとしてフォーマットされたものも含む)とネットワーク共有をマウントすることが可能になりました。
リムーバブルメディアをマウントする:(例:D :)
$ Sudo mkdir /mnt/d
$ Sudo mount -t drvfs D: /mnt/d
安全にマウント解除する
$ Sudo umount /mnt/d
Smbfsなしでネットワーク共有をマウントすることもできます。
$ Sudo mount -t drvfs '\\server\share' /mnt/share
少なくともBuild 16176が必要なので、Windows InsiderプログラムにオプトインしてからWindowsを更新する必要があるかもしれません。ソース: https://blogs.msdn.Microsoft.com/wsl/2017/04/18/file-system-improvements-to-the-windows-subsystem-for-linux /
更新:
どうやらそれは今ではWindows 10ビルド16176から始まって可能です。
https://superuser.com/a/1209701/337631 を参照してください。
いいえ.
現時点ではマウントされるドライブに制限があります。
ドライブが/ mnt /の下に表示されるには、以下の基準を満たしている必要があります。
- ドライブは固定ドライブでなければなりません
- ドライブはNTFSにフォーマットされている必要があります。
これは問題として提起されています: C:以外のドライブは/ mnt#1079 にマウントされていません。それはまだ "Open"としてマークされています。
Windowsとの相互運用性を促進するために、WSLはDrvFsファイルシステムを使用しています。 WSLは、/ mnt/c、/ mnt/dなど、サポートされているファイルシステムを使用してすべての固定ドライブを自動的にマウントします。現在、NTFSおよびReFSボリュームのみがサポートされています。
ソース WSLファイルシステムのサポート
デバイスが/dev
に入っていなければ、あなたのセットアップはドライブを検出さえしていない可能性があります。
コマンドlsblk
は、接続されているすべてのブロックデバイス(ドライブ)を一覧表示します。このリストに表示されない場合は、bashを起動する前にデバイスを接続してみることをお勧めします。
私はあなたの質問からあなたが見つけたウィンドウでどのようにbashを使うのかについての言及を見ません、しかしほとんどの場合それはbashを再起動するのはそれほど難しくないはずです。
lsblk
があなたのドライブをあなたに示しているなら、それがリストしているパスを見つけて、mount <path shown by lsblk> <path you want the drive to be mounted to>
とタイプしてください。