内核NTFS驱动程序与NTFS-3G


18

自从我无法访问另一个问题以来,这是一个更全面的措词问题。

我要删除另一个,而不是这个,因为它不应该首先迁移。

当前有两个可用于Linux的NTFS驱动程序。

内核中包含的NTFS驱动程序,以及使用FUSE的用户空间NTFS-3G驱动程序。

众所周知,NTFS-3G可以完美运行。

那么我的问题是,如果NTFS文件系统已成功进行反向工程,为什么内核NTFS团队未在驱动程序中实施更改?目前,它仍然被标记为实验性的,很有可能破坏您的数据。

注意:这与发行绝对无关...

Answers:


24

不幸的是,这是社区项目的常见问题。

一旦社区发现了重大问题,就会弹出项目来解决。在这种情况下,问题是NTFS FS利用率。

首先创建Linux-NTFS(内核FS驱动程序),并在一段时间后停止开发。国际海事组织是一个错误的选择,它应该得到优先考虑并且仍然会这样做。这个驱动程序一直稳定,只读,直到我完成Linux(已有五年以上)。这仅解决了一半的问题,因此社区尽其所能。

捕获NTFS(用于NTFS.SYS的驱动程序包装)相对而言更易于创建。在其他项目中已经存在许多代码。社区关注的主要原因是因为NTFS.SYS不是自由软件。

NTFS-3G(保险丝)被拍打在一起,并且功能齐全。该项目具有Tuxera的商业推动力。该项目解决了从Linux使用NTFS的原始问题。Tuxera提供了一个高级的专有NTFS内核驱动程序,它着重说明了社区为什么需要完成Linux-NTFS。

因此,在解决了最初的问题后,社区的呼声逐渐降温。这可能是不幸的,因为很多时候正确的实现从未完成。考虑到这一点,Tuxera实际上保护了其专有的内核NTFS实现。创建次等的FUSE驱动程序,冷却了性能可靠的GPL内核驱动程序的推动。

现在只是要澄清一下,我是一个巨大的社区项目支持者/爱好者。我也恰好是评论家,没有内核编程能力。FUSE有很多优点,特别是对于专用FS驱动程序。冷酷的事实仍然存在,内核FS驱动程序提供了更强大的性能。与类似的FUSE实现相比,编写内核驱动程序需要更多的时间/才能。两者(人才社区程序员的时间)始终供不应求。

我希望这可以解释有关Linux NTFS支持的当前情况。


1

这是优先事项。选择做一件事意味着其他事情将无法完成。ntfd-3g运作良好,因此触摸内核驱动程序的优先级非常低。


2
除了它们是由完全独立的项目编写的之外,对于内核来说,拥有一个真正有效的驱动程序肯定很重要吗?
杰克

他们是独立的项目这一事实是无关紧要的。实际上,这使情况变得更糟,因为您需要找到具有内核文件系统模块知识 NTFS知识的人员才能编写内核驱动程序。
伊格纳西奥·巴斯克斯

1
不,这无关紧要。目前,内核显然尚不支持NTFS写入。相反,需要第三方解决方案。您的答案类似于说为什么在KDE做得很好的情况下为什么还要开发Gnome。这不是一个恰当的类比,因为gnome和KDE都可以完全起作用,但是您明白了……
杰克2010年

3
您错过了重点。在内核中具有有效的NTFS驱动程序而不必依赖第三方用户空间驱动程序有许多优点。无论如何,我的问题的答案不是“因为ntfs-3g效果很好”。如果您拥有Project X和Project Y,那么这两者的共同目标是相同的,而Project Y是他们的第一个目标,那么Projec X不会放弃。实际上,我们经常看到相反的情况。
杰克

1
What would a kernel driver do that a FUSE driver wouldn't?:通过不 CPU 固定为100%释放CPU来用于嵌入式系统上的其他进程。见Ubuntu的MageiaUbuntu的ArchLinux的openSUSE的等等
阿米特·奈杜

1

实际上,我今天才问自己这个问题。这是我对此的真正朦胧且非专家的理解。

ntfs3g并不是真正的驱动程序,而是一个应用程序。它为接口使用FUSE(用户空间中的文件系统),并且是跨平台的。因此,虽然内核ntfs驱动程序可以实现ntfs3g使用的方法(可以吗?我不确定),但它会在用户空间中运行,而这不是内核的管辖范围。

...这实际上只是基于我读过的一句话得出的结论。这对真正受过这一主题教育的人来说如何?=)

事实上,我想我会在这方面写博客。= D


是的,NTFS-3G版本也slooww相比,在Windows本地的Ntfs.sys。
user2284570
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.