如何设置多个 Linux 操作系统共享的“数据”分区?

phu*_*ehe 7 filesystems dual-boot file-sharing

目前我有一个包含共享数据的 NTFS 分区。我的理由是,NTFS 对文件权限一无所知,所以我在多引导系统中使用它们不会有任何问题(目前我有 Gentoo 和 Ubuntu,并且数据分区是自动挂载的) . 如果可能的话,现在我想摆脱 NTFS 的东西。所以问题是,我如何使用类似的东西ext4并设置相同的东西?

更新:对不起,我应该说清楚我只有 Linux 发行版,所以ext4. 我只想有一个包含世界可读文件并在启动时自动挂载的分区。

Gil*_*il' 7

NTFS 确实具有文件权限。你要么通过挂载选项压缩它们,要么使用一致的用户映射,要么让你的文件全世界都可以访问。

如果您使用驱动程序不支持用户映射的文件系统,您有几个选择:

  • 安排在所有操作系统上为相应的用户提供相同的用户 ID。

  • 通过访问控制列表使文件世界可访问(这需要支持 ACL 的文件系统;ext[234] 可以,但您可能必须acl/etc/fstab. 运行以下命令使目录树可供所有人访问,并使在未来创建的文件可供所有人访问:

    setfacl -m other:rwx -d -R .
    setfacl -m other:rwx -R .
    
    Run Code Online (Sandbox Code Playgroud)
  • 正常挂载文件系统并提供具有不同所有权或权限的文件系统视图。这可以通过bindfs 实现,例如:

    mount /dev/sdz99 /media/sdz99
    bindfs -u phunehehe /media/sdz99 /media/shared
    
    Run Code Online (Sandbox Code Playgroud)

    或者作为fstab条目:

    /dev/sdz99  /media/sdz99  auto  defaults  0 2
    bindfs#/media/sdz99  /media/shared  fuse  owner=phunehehe
    
    Run Code Online (Sandbox Code Playgroud)

NTFS 的优势在于它可以直接与 Windows 共享,它不是 Windows 共享的要求