我可以在 FAT 驱动器上安装 GNU/Linux 吗?

我可以在 FAT 驱动器上安装 GNU/Linux 吗?

出于好奇,现在这可能吗?我记得一些旧的 Slackware 版本确实支持 FAT 根分区,但我不确定现代内核是否可以实现这一点,以及是否有任何发行版提供这样的选项。我对纯 DOS FAT(不支持长名称)、VFAT 16/32 和 exFAT 感兴趣。

PS:不要告诉我不应该,除非有必要,否则我不会在生产中使用它:-)

答案1

好的,我试过了。

从一开始就存在两个问题:支持硬链接和符号链接。这意味着我必须复制每个文件,重复它并浪费空间。

第二个问题:根本没有特殊文件支持。这意味着/dev/console在 /dev 重新挂载为 tmpfs 之前,启动时无法进行 init 等操作。

第三个问题:您将失去权限执行。

但由此看来,没有任何问题。我自己的系统在 vfat 卷上成功启动。

QEMU LinFAT

通常我也不会这样做。

答案2

开箱即用是不可能的,因为umsdos驱动程序这使我们能够在 FAT 驱动器上使用 Unix 功能已从 Linux 内核 2.6 中删除

Umsdos 是一个 Linux 文件系统。它提供了 EXT2 文件系统的替代方案。其主要目标是通过共享同一分区来实现与 Ms-DOS 数据更轻松的共存。本文档首先解释如何在不同的配置中使用 Umsdos,然后解释其操作并尝试提供一些信息,让您决定它是否适合您(请参阅最后的 UMSDOS-WHY-TO)。

https://tldp.org/HOWTO/UMSDOS-HOWTO.html

如果没有存储权限和符号链接的能力,很多东西都会被破坏,因此没有发行版可以在其版本中提供该功能

乌姆斯多斯

三者中 umsdos 的主要优点是它提供了完整的 Unix 文件语义。因此,它可以用于需要在 FAT 磁盘卷上安装 Linux 并运行它的情况,这需要此类语义可用。但是,在此类磁盘卷上安装并运行的 Linux 比在采用 ext2 文件系统格式等格式格式化的磁盘卷上安装并运行的 Linux 慢。[1][12]此外,除非每次从运行 Windows 切换到运行 Linux 时定期运行实用程序,否则 Windows 对磁盘上的文件和目录所做的某些更改将导致有关 Linux 中无法访问文件的错误消息。

FAT 文件系统和 Linux

现代的替代品是POSIX 覆盖文件系统但由于它是一个 FUSE 驱动程序,将其用于 rootfs 会很棘手

一个 FUSE 文件系统,为没有此类功能的文件系统(例如 vfat)提供 POSIX 功能(UNIX 风格的权限、所有权、特殊文件)。它可以被视为 UMSDOS fs 的当代版本。

相关内容