无法在 Windows 10 Linux 子系统 bash 中访问外部驱动器

Vas*_*lis 20 linux mount hard-drive windows-subsystem-for-linux ubuntu-16.04

我在 Windows 10 Linux 子系统上使用 Ubuntu 16.04。当我插入 NTFS 外部硬盘驱动器 (D:) 时,我无法通过 bash 访问它,当我运行时,ls -la /mnt我得到以下输出:

rwxr-xr-x 1 root    root    512 Sep 21 19:04 .
drwxr-xr-x 1 root    root    512 Jan  1  1970 ..
drwxrwxrwx 1 <myusername> <myusername> 512 Sep 21 13:06 c
d????????? ? ?       ?         ?            ? d
drwxrwxrwx 1 <myusername> <myusername> 512 Sep 21 13:06 q
Run Code Online (Sandbox Code Playgroud)

我还尝试按照此解决方案手动安装驱动器,但结果相同。可以从 PowerShell 和文件资源管理器访问该磁盘。

Vas*_*lis 29

所以我发现了问题,我不得不先卸载它,然后再次安装它:

sudo umount /mnt/d
sudo mount -t drvfs D: /mnt/d
Run Code Online (Sandbox Code Playgroud)

发生这种情况是因为这不是我第一次连接这个 USB 驱动器。第一次 WSL(Windows Linux 子系统)自动识别并挂载设备。但是后来我在没有“安全删除”的情况下拔掉了它,也没有通过命令行卸载它。因此,下次我重新连接磁盘 D: 时似乎已安装在 /mnt/d 中,但未正确安装。


K F*_*K F 9

就我而言,这是我第一次尝试访问 WSL 上的外部驱动器。对我有用的解决方案来自我在下面发布的这篇文章:

$ sudo mkdir /mnt/d
$ sudo mount -t drvfs D: /mnt/d
Run Code Online (Sandbox Code Playgroud)

请注意,我不必卸载它,因为当我第一次连接它时,WSL 没有安装该设备。要安全地卸下设备:

$ sudo umount /mnt/d
Run Code Online (Sandbox Code Playgroud)