Driver Kernel NTFS vs NTFS-3G

18

Pertanyaan frasa yang lebih komprehensif karena saya kehilangan akses ke yang lain.

Saya akan meminta yang lain dihapus, bukan yang ini, karena seharusnya tidak dimigrasi terlebih dahulu.

Saat ini ada dua driver NTFS yang tersedia untuk Linux.

Driver NTFS termasuk dalam kernel, dan driver NTFS-3G userspace yang menggunakan FUSE.

Secara umum, NTFS-3G bekerja dengan sempurna.

Pertanyaan saya kemudian, apakah jika filesystem NTFS telah berhasil direkayasa balik, mengapa tim kernel NTFS tidak mengimplementasikan perubahan pada driver mereka? Saat ini masih ditandai sebagai percobaan, dan ada kemungkinan besar itu akan menghancurkan data Anda.

Catatan: Ini sama sekali tidak ada hubungannya dengan distribusi ...

Mendongkrak
sumber

Jawaban:

24

Sayangnya ini adalah masalah umum dengan proyek komunitas.

Setelah komunitas mengidentifikasi masalah yang signifikan, proyek muncul untuk mengatasinya. Dalam hal ini, masalahnya adalah pemanfaatan NTFS FS.

Linux-NTFS (driver FS kernel), Diciptakan pertama kali, dan setelah beberapa saat pengembangan terhenti. IMO pilihan yang buruk, itu layak mendapat prioritas dan masih. Driver ini sudah stabil, hanya baca, selama saya sudah menggunakan Linux (lebih dari setengah dekade). Ini hanya mengatasi setengah dari masalah, sehingga komunitas mencari di mana saja mereka bisa.

Captive NTFS (Driver Wrapper untuk NTFS.SYS), relatif lebih mudah dibuat. Sebanyak kode sudah ada di proyek lain. Alasan utama komunitas melihat, adalah karena NTFS.SYS bukan Perangkat Lunak Bebas.

NTFS-3G (Fuse), ditampar bersama dan berfungsi penuh. Proyek ini memiliki kekuatan komersial penggerak Tuxera. Proyek ini membahas masalah asli dalam menggunakan NTFS dari Linux. Tuxera menawarkan driver kernel NTFS premium, yang menyoroti mengapa komunitas perlu menyelesaikan Linux-NTFS.

Jadi dengan masalah asli ditangani, protes masyarakat menjadi dingin. Yang bisa disayangkan, karena berkali-kali implementasi yang benar tidak pernah selesai. Ketika saya memikirkannya, Tuxera sebenarnya melindungi implementasi kernel NTFS miliknya. Membuat driver FUSE yang lebih rendah, mendinginkan dorongan untuk driver kernel GPL berkinerja solid.

Sekarang hanya untuk mengklarifikasi, saya adalah pendukung / penggila proyek komunitas besar. Saya kebetulan juga seorang kritikus, tanpa kemampuan pemrograman kernel. FUSE memiliki banyak kelebihan, terutama untuk driver FS khusus. Fakta-fakta sulit yang masih ada, Kernel FS Drivers memberikan kinerja yang jauh lebih kuat. Menulis driver kernel membutuhkan lebih banyak waktu / bakat, kemudian implementasi FUSE yang sebanding. Keduanya (Waktu dari Programer komunitas Berbakat), selalu kekurangan pasokan.

Saya harap ini menjelaskan situasi saat ini, sehubungan dengan dukungan Linux NTFS.

JM Becker
sumber
1

Ini masalah prioritas. Memilih untuk melakukan satu hal berarti bahwa hal lain tidak akan selesai. ntfd-3g bekerja dengan baik, jadi menyentuh driver kernel adalah prioritas yang sangat rendah.

Ignacio Vazquez-Abrams
sumber
2
Kecuali bahwa mereka ditulis oleh proyek yang benar-benar terpisah, dan tentu saja penting bagi kernel untuk memiliki driver yang benar-benar berfungsi?
Jack
Fakta bahwa mereka adalah proyek yang terpisah tidak relevan. Kenyataannya, itu membuatnya lebih buruk karena Anda perlu menemukan seseorang yang memiliki pengetahuan modul sistem file kernel dan pengetahuan NTFS agar dapat menulis driver kernel.
Ignacio Vazquez-Abrams
1
Tidak, itu tidak relevan. Saat ini kernel tidak memiliki dukungan penulisan NTFS, padahal itu sangat mungkin. Alih-alih, solusi pihak ketiga diperlukan. Jawaban Anda hampir sama dengan mengatakan mengapa repot-repot mengembangkan Gnome, ketika KDE melakukan pekerjaan dengan baik. Ini bukan analogi yang tepat, karena baik gnome dan KDE sepenuhnya berfungsi, tetapi Anda mengerti intinya ...
Jack
3
Anda tidak mengerti intinya. Ada banyak keuntungan memiliki driver NTFS yang berfungsi di kernel, tanpa harus bergantung pada driver userspace pihak ketiga. Bagaimanapun, jawaban atas pertanyaan saya bukanlah "karena ntfs-3g bekerja dengan sangat baik". Jika Anda memiliki Proyek X dan Proyek Y, keduanya memiliki tujuan bersama yang sama dan Proyek Y mendapatkan yang pertama, Projec X tidak akan menyerah. Bahkan, kita sering melihat kebalikan dari itu.
Jack
1
What would a kernel driver do that a FUSE driver wouldn't?: Bebaskan CPU untuk proses lain pada sistem tertanam dengan tidak mengelompokkannya pada 100% . Lihat Ubuntu , Mageia , Ubuntu , ArchLinux , openSUSE dll.
Amit Naidu
1

Saya hanya bertanya pada diri sendiri pertanyaan ini hari ini, sebenarnya. inilah pemahaman saya yang sangat kabur dan tidak ahli tentangnya.

ntfs3g sebenarnya bukan driver, ini adalah aplikasi. menggunakan FUSE (filesystem di userspace) untuk antarmuka dan lintas-platform. jadi, sementara driver kernel ntfs mungkin dapat mengimplementasikan metode yang digunakan oleh ntfs3g (bukan? Saya tidak yakin), itu akan beroperasi di userspace, yang bukan yurisdiksi kernel.

... itu hanya kesimpulan berdasarkan satu kalimat yang saya baca. bagaimana itu terdengar bagi siapa saja yang benar-benar dididik tentang masalah ini? =)

sebenarnya, saya pikir saya akan blog di ini sedikit. = D

musasabi
sumber
Ya, versi ntfs-3g sangat slooww dibandingkan dengan ntfs.sys asli di windows.
user2284570