从 Windows 子系统访问 Ubuntu 分区

Rob*_*eli 28 ubuntu windows-10

我有一台双启动配置的 PC。

由于 Windows 10 具有适用于 Linux 的 Windows 子系统,是否可以从其中访问 EXT4 分区?

Ram*_*und 15

是否可以从中访问 EXT4 分区?

WSL 似乎无法访问 Windows 本身无法访问的任何分区。此外,它似乎仅限于系统本身安装的 NTFS 分区。这意味着即使使用 NTFS 文件系统,也无法访问网络共享。

这得到以下陈述的支持:

WSL 为 DriveFS 查询系统范围的驱动器;每个用户的字母安装(如某些网络地图,或 Paragon 的 Windows ext4fs 驱动程序)不会被拾取。

一位WSL 开发人员证实了这种情况。

你大多是正确的。目前我们只支持固定的 NTFS 卷。

如何进入ext4分区

看来,虽然此信息对于从 Windows 10 1709 开始的 Windows 10 1703 及以下版本是正确的,但它应该是可能的。

在最新的 Windows Insider 版本中,适用于 Linux 的 Windows 子系统 (WSL) 现在允许您使用 DrvFs 文件系统手动挂载 Windows 驱动器。以前,当您启动 Bash 时,WSL 会自动挂载所有固定的 NTFS 驱动器,但不支持挂载额外的存储,如可移动驱动器或网络位置。

现在,您不仅可以在系统上手动挂载任何驱动器,我们还增加了对其他文件系统(如 FAT)的支持,以及挂载网络位置。这使您可以访问任何驱动器,包括可移动 USB 记忆棒或 CD,以及您可以在 Windows 中从 WSL 中访问的任何网络位置。

适用于 Linux 的 Windows 子系统的文件系统改进

由于该分区已经存在于驱动器上,您应该能够像安装 Linux 中的任何其他分区一样安装它。但是,根据我找到的信息和示例,这可能是不可能的,因为 Windows 本身不知道如何处理 EXT4 分区。

为了使用DrvFs挂载 Windows 驱动器,您可以使用常规的 Linux mount 命令。例如,要将可移动驱动器 D: 挂载为 /mnt/d 目录,请运行以下命令:

$ sudo mkdir /mnt/d

$ sudo mount -t drvfs D: /mnt/d

现在,您将能够访问 /mnt/d 下 D: 驱动器的文件。例如,当您希望卸载驱动器以便可以安全地移除它时,请运行以下命令:

$ sudo umount /mnt/d

以下问题与此主题有关Windows 10 Ubuntu Bash Shell:如何挂载其他 Windows 驱动器?,虽然我没有直接从中提取任何内容,但它仍然与从 WSL 中安装卷的主题有关。


AFH*_*AFH 6

是的你可以。我经常使用ext2fsd从 Windows访问ext4卷。大多数情况下,我的要求是读取访问,这就是我配置它的方式,并且它完美地工作。

我偶尔会测试写访问而没有发现问题,但我没有充分使用它来保证其可靠性。

SourceForge 链接将其描述为适用于 Windows 的 Linux ext2/ext3 文件系统驱动程序,它当然可以毫无问题地读取ext4卷,但在我对其进行更多测试或看到支持ext4 的一些保证。

  • 用户并没有真正询问如何从 Windows 中访问 EXT4,这样做是有据可查的,而是如何从 Ubuntu 中访问 EXT4 卷,特别是 Linux 变体的 Windows 子系统。现在我不反对使用 ext2fsd,但允许他们这样做,因为他们可以简单地使用我的答案中提供的命令安装卷。 (4认同)
  • @Ramhound - 一旦将卷安装在 `ext2fsd` 中,就可以像任何其他 Windows 卷一样从 WSL 访问它。 (3认同)
  • @x0a - 我没有注意到性能。我只是偶尔使用它,我很感激我可以访问 Windows。 (2认同)
  • @ygoe - 它在我的 Win10x64 桌面上运行良好,目前为 1803,但在以前的任何版本上都没有问题。它在启动时不带参数运行。 (2认同)

归档时间:

查看次数:

56684 次

最近记录:

6 年,3 月 前