有没有办法在启动 Windows 10 时使用 Windows Bash 终端访问我的 Ubuntu 分区的文件?
我知道有第三方软件/驱动程序可以添加对 Linux 使用的 ext 文件格式的支持并将其安装到 Windows。之后,你就可以通过 /mnt/DriveLetter 目录访问它了。
希望有比我提到的选项更好的方法,这样损坏我的数据的机会就更少了。
谢谢
答案1
不,没有更好的方法。Windows 本身不支持访问 ext4 或其他 Linux 文件系统。您必须为此添加第三方驱动程序。
不过,与从 Linux 访问 NTFS 相比,数据损坏的风险相当小。虽然必须对 NTFS 进行逆向工程才能为其创建 Linux 驱动程序,但 Linux 文件系统结构是开源的,并且有详尽的文档记录,因此 Windows ext4 驱动程序的程序员有可靠的工作基础。
答案2
正如 Tilman 所说,通常的实现方法是使用文件系统驱动程序,使 Ubuntu(ext2/3/4fs、XFS、Btrfs 等)分区的工作方式与 Windows FAT、exFAT 或 NTFS 分区类似。
我确实知道另一种方法:一个独立的程序,允许复制和类似操作,但不授予其他程序访问权限。一个例子是Ext2Read,它适用于 ext2/3/4 文件系统。几年前我曾短暂使用过这个程序或类似程序,但最近我没有使用它或类似程序。因此,我无法说这个特定程序现在运行得如何。
请注意,通过驱动程序访问文件的风险与通过 Ext2Read 等实用程序访问文件的风险几乎相同,至少在原则上是如此。(在某个实现中可能存在错误,但没有理由认为 Ext2Read 会比驱动程序更好,至少一般来说不是。)我没有密切关注用于 Linux 文件系统访问的 Windows 驱动程序(和专用程序),所以我不能说哪些特定程序可能比其他程序更好或更差。
哪些情况下驾驶员的风险可能更大一般来说问题在于,您授予 Windows 上每个程序访问 Linux 文件系统的权限,因此如果 RandomProgram 决定删除每个\etc\fstab
磁盘上调用的每个文件,那么 Ubuntu/etc/fstab
文件就会消失,您将无法启动,这只是许多不太可能导致问题的场景之一。对于用户错误,也可以做出类似的评论,特别是如果您让驱动程序不断运行。无论您使用驱动程序还是专用程序,您都可以通过以只读方式安装 Linux 文件系统来最大限度地降低此类风险——但如果您需要能够从 Windows 写入 Linux 文件系统,则这种方法将不起作用。
答案3
我没有使用双启动,而是将 Windows 放在 Virtual Box 虚拟机中。VM 内置了在 Windows 中附加 Linux 目录的方法。Git bash 继承了这一点。
另一个好主意是在两台机器之间放置一个文件服务器。我有 Linux 系统,Samba 提供以 Windows 形式显示的 Linux 文件。与使用 Dropbox 交换文件的想法相同。