Windows 用の Linux サブシステムで USB ディスクを固定ドライブにマウントするにはどうすればよいでしょうか?

Windows 用の Linux サブシステムで USB ディスクを固定ドライブにマウントするにはどうすればよいでしょうか?

私は Windows-10 で作業しており、Windows 用の Linux サブシステム (正確には Ubuntu) をインストールしています。

USB ドライブを D: ドライブにマップしましたが、Windows はこれを一般的なディスクとして認識します。

Windows commandline prompt>wmic logicaldisk list (relevant excerpt)
Access  Availability  BlockSize  Caption  Compressed  ConfigManagerErrorCode  ConfigManagerUserConfig  Description         DeviceID  DriveType  ErrorCleared  ErrorDescription  ErrorMethodology  FileSystem  FreeSpace     InstallDate  LastErrorCode  MaximumComponentLength  MediaType  Name  NumberOfBlocks  PNPDeviceID  PowerManagementCapabilities  PowerManagementSupported  ProviderName                                 Purpose  QuotasDisabled  QuotasIncomplete  QuotasRebuilding  Size           Status  StatusInfo  SupportsDiskQuotas  SupportsFileBasedCompression  VolumeName  VolumeSerialNumber
0                                C:       FALSE                                                        Local Fixed Disk    C:        3                                                            NTFS        144074813440                              255                     12         C:                                                                                                                                                                                                  1023013810176                      FALSE               TRUE                          OSDisk      B622B231
0                                D:       FALSE                                                        Local Fixed Disk    D:        3                                                            NTFS        996483739648                              255                     12         D:                                                                                                                                                                                                  1000168484864                      FALSE               TRUE                          Elements    6CD465F5

私の Windows PC には、次の 2 つの追加ディレクトリがあります。

C:\Users\...\AppData\...\CanonicalGroupLimited.UbuntuonWindows_...\...\rootfs\mnt\c
C:\Users\...\AppData\...\CanonicalGroupLimited.UbuntuonWindows_...\...\rootfs\mnt\d

私の Linux サブシステムでは、/etc/mtab次のように終了します。

Linux Prompt>tail -n 2 /etc/mtab
C:\134 /mnt/c drvfs rw,noatime,uid=1000,gid=1000,case=off 0 0
D:\134 /mnt/d drvfs rw,noatime,uid=1000,gid=1000,case=off 0 0

しかし、 の結果にはdf -hk何も表示されません/mnt/d:

Linux Prompt>df -hk
df: /mnt/d: Invalid argument
Filesystem     1K-blocks      Used Available Use% Mounted on
rootfs         999036924 858339700 140697224  86% /
...
C:\            999036924 858339700 140697224  86% /mnt/c

インターネットで次のコマンドを見つけましたが、解決策は見つかりません。

Linux prompt>mount -t drvfs D: /mnt/d

そして、結果はmount非常に奇妙です:

Linux prompt> sudo mount
rootfs on / type wslfs (rw,noatime)
...
C:\ on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000,case=off)
D:\ on /mnt/d type drvfs (rw,noatime,uid=1000,gid=1000,case=off)

しかし、/mnt/d動作しません。ディレクトリは存在しますが、使用できません。

何をすればいいのか誰か知っていますか?

前もって感謝します

答え1

まず、以下で見つけたものは%AppData%存在しないものとみなしてください。これは危険であり、使用するとWSLが破損する可能性があります(マイクロソフトリンク)。おそらく Windows で検索して見つけたのでしょう。ただ立ち去ってください...ゆっくりと。:-)

短い答えの可能な解決策:

新しいマウント場所を作成してみてください:

sudo mkdir /media/d
sudo mount -t drvfs D: /media/d

あるいは次の可能性もあります:

  • wsl --shutdown
  • USBドライブを再接続する
  • WSLインスタンスを起動する

もっと詳しく:

私が考えるが発生しています。WSL は起動時に Windows に接続されたドライブを読み取り、/initインスタンスの起動時に各インスタンスでこのドライブ リストを ( 経由で) 自動的にマウントします。

WSL の起動後にドライブが切断された場合、サブシステムはそれを認識しません。ドライブ (または別のドライブ) を切断して再接続すると、現在表示されているのと同様の状況、/mnt/dつまり機能しない A (または他のドライブ文字) が発生します。

上記で提案したように、新しいマウント場所 (/media通常はリムーバブル ドライブをマウントする場所なので便利です) またはwsl --shutdownと再起動により、問題が解決します。

関連情報