Gil*_*il' 13 linux filesystems union-mount
甲联合安装呈现在单个层级的多个目录(分支)的组合视图。好的,但我如何在实践中使用一个,以及哪个?
许多联合挂载技术可用于现代 Linux 系统:OverlayFS、aufs、UnionFS、各种基于 FUSE 的文件系统……
给定一个用例,我如何决定哪些是合适的?特别是:
/
(当然有 root 访问权限)?/foo
和/bar
联合安装到/union
,我可以写信给/foo
和/bar
吗?)使用示例将不胜感激。
请避免专注于特定点的答案。我正在寻找查看可用软件的综合答案(类似于什么是绑定安装?)。好的答案将得到奖励。
Aus*_*arn 13
在每个具体点上:
根访问:如果使用 FUSE,则不需要根,如果不使用 FUSE,则需要根,除非您使用功能(潜在危险)或命名空间进行特殊设置。
挂载/
:我假设您的意思是作为启动时的根文件系统,在这种情况下,在内核模式下运行的任何一个理论上都应该可以工作,尽管有些比其他更可靠。大多数 LiveCD 都这样做,因此我建议您在此处查找有关此特定点的信息。
写入底层分支:这取决于您的意思。如果您的意思是将已安装视图的写入传播到较低的分支,我不知道。如果您的意思是从主文件系统本身带外写入较低的分支,那么从技术上讲,所有三巨头都这样做,但它们都需要重新挂载以确保更改传播到挂载的视图。
可配置的写入策略:我不知道具体是什么,但我认为大 3(UnionFS、AUFS 和 OverlayFS)不支持它。
文件相关的优先级顺序:我认为这种类型也属于第三个子问题,就像那里一样,我不知道有任何人特别支持它。
至于每个人的更多细节:
UnionFS:据我所知,这是 Linux 的原始可堆叠联合文件系统实现。它已经存在了很长时间,并且被许多 Linux 的 LiveCD 使用。它在内核模式下运行,并且需要使用上游内核的补丁。
AUFS:起源于 UnionFS 的一个分支,然后变成了它自己的东西。这个尝试合并主线,以代码质量为由被拒绝。它在一些发行版 LiveCD 中取代了 UnionFS,主要是 Debian 和 Gentoo 衍生版。与 UnionFS 一样,它在内核模式下运行,并且需要对上游内核进行修补。
OverlayFS:我对这个的原始开发了解不多,除了它也被一些 BSD 衍生产品支持。值得注意的是 Linux 内核中的上游覆盖/联合文件系统实现。它也在内核模式下运行。
UnionFS-FUSE:这个命名有点混乱的项目实际上与 UnionFS 没有任何关系,只是提供了基本相同的功能。它是联合文件系统使用最广泛的 FUSE 实现,但这就是我对它的全部了解。
mhddfs:这是一个奇怪的异常值,比传统的联合文件系统更类似于文件粒度 RAID-0 实现。它支持根据空间使用情况跨多个后备目录平衡文件。它也是基于 FUSE 的。
需要注意的一些特定事项并非特定于特定实现:
所有内核选项都对支持的文件系统可以是什么有限制,最明显的是不能与网络文件系统或 BTRFS 一起使用。
当用作根文件系统时,所有 FUSE 实现都有问题。这不是特定于联合文件系统实现的,但通常更像是 FUSE 的问题。
归档时间: |
|
查看次数: |
5170 次 |
最近记录: |