web-dev-qa-db-ja.com

カーネルNTFSドライバーとNTFS-3G

他の質問にアクセスできなくなったため、より包括的なフレーズ質問。

そもそも移行されるべきではなかったので、これではなく、もう一方を削除するようお願いします。

現在、Linuxで使用できるNTFSドライバーは2つあります。

カーネルに含まれているNTFSドライバー、およびFuseを使用するユーザースペースNTFS-3Gドライバー。

すべてのアカウントで、NTFS-3Gは完全に機能します。

私の質問は、NTFSファイルシステムが正常にリバースエンジニアリングされた場合、なぜカーネルNTFSチームがドライバの変更を実装しなかったのですか?現時点ではまだ実験的なものとしてマークされており、データが破壊される可能性があります。

注:これはディストリビューションとはまったく関係ありません...

20
Jack

残念ながら、これはコミュニティプロジェクトに共通の問題です。

コミュニティが重大な問題を特定すると、プロジェクトがポップアップしてそれに対処します。この場合、問題はNTFS FS使用率です。

Linux-NTFS(カーネルFSドライバー)、最初に作成され、しばらくして開発が停滞しました。IMOは悪い選択でしたが、優先順位に値し、今でもそうです。このドライバーは安定しており、読み取り専用です。私がLinuxを使用している限り(半年以上)、これは問題の半分にしか対処できないので、コミュニティはどこでもできるところを探しました。

キャプティブNTFS(NTFS.SYS用のDriver Wrapper)は、比較的簡単に作成できました。他のプロジェクトにはすでに多くのコードが存在していました。コミュニティが注目した主な理由は、NTFS.SYSがフリーソフトウェアではないためです。

NTFS-3G(ヒューズ)は、一緒に叩かれ、完全に機能します。このプロジェクトは、Tuxeraの原動力となっています。このプロジェクトは、LinuxからNTFSを利用するという元々の問題に対処します。 Tuxeraは、プレミアム独自のNTFSカーネルドライバーを提供します。これは、コミュニティがLinux-NTFSを完了する必要がある理由を強調しています。

したがって、元の問題に対処することで、コミュニティの抗議は冷めました。多くの場合、正しい実装が完了しないため、これは残念なことです。私がそれについて考えるとき、Tuxeraは実際に独自のカーネルNTFS実装を保護しました。劣ったFuseドライバーを作成し、Pushを冷却して、堅実なパフォーマンスのGPLカーネルドライバーを作成しました。

明確にするために、私は巨大なコミュニティプロジェクトサポーター/マニアです。私もたまたま批評家で、カーネルプログラミング能力がありません。 Fuseには、特に特殊なFSドライバーに関して、多くのメリットがあります。冷酷な事実は依然として存在します。カーネルFSドライバーは、はるかに強力なパフォーマンスを提供します。カーネルドライバーの作成には、はるかに多くの時間がかかります。時間/才能、次に同等のFuse実装。どちらも(才能のあるコミュニティプログラマーからの時間)、常に不足しています。

Linux NTFSサポートに関して、これが現在の状況を説明していることを願っています。

26
J. M. Becker

それは優先順位の問題です。 1つのことを選択すると、他のことは実行されません。 ntfd-3gはうまく機能するため、カーネルドライバに触れることの優先度は非常に低くなります。

今日、私は自分自身にこの質問をしました。これが私のぼんやりとした専門家ではない理解です。

ntfs3gは実際にはドライバーではなく、アプリケーションです。インターフェイスにFuse(ユーザー空間のファイルシステム)を使用し、クロスプラットフォームです。したがって、カーネルのntfsドライバーはntfs3gで使用されるメソッドを実装できる可能性がありますが(できますか?わかりません)、カーネルの管轄ではないユーザースペースで動作します。

...それは文字通り私が読んだ一文に基づく単なる結論でした。このことについて実際に教育を受けている人にとって、それはどのように聞こえますか? =)

実際、私はこの少しについてブログを書くつもりだと思います。 = D

1
musasabi