This website uses cookies to ensure you get the best experience on our website. By continuing to browse the site, you agree to our use of cookies.

More info ››
Contact sales: 1-888-DISK-IMAGE

1-888-DISK-IMAGE (1-888-347-5462)

Sales North America

+49-761-59018-202

Sales Europe

+81(3)3265-1278

Sales Japan

+7 (495) 789-6717

Sales Russia

Contact sales: 1-888-DISK-IMAGE

1-888-DISK-IMAGE (1-888-347-5462)

Sales North America

+49-761-59018-202

Sales Europe

+81(3)3265-1278

Sales Japan

+7 (495) 789-6717

Sales Russia

Paragon

NTFS3 Driver FAQ

NTFS3 IMPLEMENTATION FOR LINUX KERNEL
NTFS3 Driver FAQ. HTML Banner.

In August of 2020, Paragon Software proposed its own implementation of Microsoft NTFS in a Linux kernel driver. NTFS3 for Linux Kernel is a part of Linux Kernel since version 5.15. While the reception of this by an Open Source community is absolutely positive, some questions still remain to be clarified in detail.

Frequently Asked Questions

Why is NTFS3 called NTFS3 ?

NTFS3 is called NTFS3 because it fully implements the latest version 3.1 of NTFS file system specification. NTFS is unlikely to change in future, thus NTFS3 naming reflects that NTFS3 implements the latest revision of NTFS.

What is the difference between Paragon’s commercial NTFS implementation and the NTFS3 version provided by Paragon for inclusion in the Linux Kernel?

Paragon’s commercial NTFS implementation and NTFS3 for Linux Kernel are derived from two different code bases. The commercial NTFS implementation originates from NTFS for DOS that Paragon introduced back in 2000, which has been updated and improved for over two decades. NTFS3 was intentionally developed from scratch in 2020 to be a part of the Linux Kernel. NTFS3 is written in C language, whereas Paragon’s commercial NTFS implementation is a combination of C++ and C code. 

Both implementations undergo Paragon’s same comprehensive testing procedures. Paragon’s quality assurance (QA) process for file system implementations includes over 160,000 tests, such as smoke tests, performance tests, load tests, and long-term endurance crash and stress tests. 

A detailed comparison of all the NTFS for Linux implementations referenced in this FAQ, is provided in the table.

What’s the difference between original kernel NTFS support, NTFS-3G and NTFS3 by Paragon?

Original Kernel level support for NTFS was contributed into a Linux Kernel back in 2001 and is very limited in functionality, especially write-support. Till now, NTFS-3G was the de facto way to enable NTFS in Linux. However, NTFS-3G is a filesystem in userspace (FUSE). The main drawback of this implementation is performance. On the contrary, NTFS3 is a kernel NTFS implementation, which offers much faster performance than FUSE based implementations.

Can I retrofit NTFS3 code to earlier versions of Linux? Can NTFS3 code be used with Linux-based OS variations? 
Paragon does not guarantee stable operation of NTFS3 code in kernel versions that precede the official inclusion. No tests of NTFS3 were performed on the various forks of Linux. Paragon strongly recommends using the commercial version to ensure compatibility, stability and data integrity in such cases.
I have technical difficulties with NTFS3 code. Can I expect direct technical assistance from Paragon if I have a problem?
NTFS3 is an open source project and Paragon is a maintainer of the NTFS3 code. Private technical support requests will be addressed just like requests coming from an open source community. However, Paragon will operate at its own pace and cannot provide any certainty on response time.
What is Paragon’s support commitment for the NTFS3 code in the Linux Kernel?
As a Maintainer of the NTFS3 code, Paragon is committed to ensuring that every new version of Linux Kernel with NTFS3 support will pass Paragon’s internal test coverage for file system implementations that Paragon is using for its commercial file system implementations. Test coverage includes new bugs/issues and grows over time. Paragon’s quality assurance (QA) process for commercial file system implementations currently includes over 160,000 tests, such as smoke tests, performance tests, load tests, and long-term endurance crash and stress tests. 
Can I obtain a commercial technical support contract for NTFS3? 

Yes. However, due to the nature of the GPL license, any changes made to NTFS3 code will need to be made open source. For situations where technical support is required, and GPL requirements cannot be met, we recommend using the commercial NTFS implementation under a licensing agreement with Paragon.

Are you planning to add any files system utilities? The existing alternatives such as fsck.NTFS/NTFSck and fsck.(v)fat don’t work well, and the community has been waiting for a fix.
Yes, we plan to publish and open-source our mkfs.NTFS utility.
Why did Paragon release an open source version of NTFS for the Linux Kernel?

Paragon believes that a proper implementation of NTFS in the Linux Kernel is long overdue. To date, no one has been able to develop a native and robust NTFS implementation with full read/write support into the Linux Kernel. It’s been an intensive effort for Paragon to go through the contribution process and address the concerns of the open source community. One of Paragon’s primary business objectives is providing commercial file system implementations for Linux and other Operating Systems, requiring dedicated 24/7 support, detailed performance fine tuning, and compliance with sophisticated hardware and legal requirements. NTFS3 is Paragon’s gift to the Linux ecosystem, created so that Linux can go further and broader by enabling the Linux community to enjoy easier interoperability with a wider range of Windows environments. But recognizing that NTFS is not always the best file system choice for commercial applications, Paragon has also developed its own state-of-the-art file system for commercial use: Paragon FS.

I am an OEM and need to have NTFS read/write support in my product running Linux. Which version of Paragon’s NTFS shall I use – an open source NTFS3 implementation committed by Paragon into a Linux Kernel or Paragon’s proprietary code?
The decision is up to you. Both implementations are equally good from a technical perspective. However, proprietary code usually comes with support, which assures that any type of complication you might encounter is addressed by a team with over two decades of experience. It’s worth mentioning that kernel implementation of file systems is a complicated subject. Neither Linux, nor MacOS were able to provide stable NTFS write support at a kernel level for decades. This is mainly due to the fact that this requires a very sophisticated testing environment to ensure that data loss bugs are eliminated when changes are introduced to a system. Paragon’s Linux Kernel implementation of NTFS complies with Paragon’s internal test requirements, but we’re unable to provide instant testing of the code once it’s accepted to a Linux Kernel and altered further by community. Another aspect is fine tuning of the performance of a specific device. Cell phone or action camera running Linux and accessing NTFS media have different performance, power, footprint and memory requirements comparing to a server or desktop running Linux. This sort of fine tuning can make a huge difference to a final configuration. If you feel you’re skilled enough to do tests and/or tuning yourself – you’re more than welcome to use the open source implementation. Yet another aspect is that any changes implemented to a kernel support of NTFS will need to be published, if distributed further with your hardware, according to requirements of GPL license. In many cases, OEM manufactures are unwilling to do this for a variety of reasons, and this leaves them with an option to use Paragon’s proprietary code, which comes under commercial license. All of the above is true for exFAT implementation as well.
Will Paragon continue to maintain its commercial version of the NTFS implementation in the future? 
Paragon Software delivers commercial NTFS implementations for over two decades. With a plethora of long term commercial customers and numerous implementations for OSes beyond Linux, Paragon’s commercial NTFS implementation shall continue to be available for Linux and many other OSes and further developed to address the needs of its current and future commercial customers.

Table of NTFS Implementations Comparison

The following table provides a detailed comparison of all 4 NTFS implementations referenced here.

Product License Features Link
Microsoft NTFS for Linux by Paragon Software Commercial
  • Full NTFS filesystem implementation (including journaling support for advanced data safety)
  • Extended Linux-Windows interopеrability features (including UGM feature – preservation of Unix access rights for file systems which do not support such)
  • Any kind of Linux-compatible hardware platform supported
  • Top performance and resource-efficiency
  • Industry-proven C/C++ codebase with decades of production usage in Tier-1 OEMs devices
  • Excessive household test coverage based on decades of field usage of the product
https://www.paragon-software.com/home/ntfs-linux-professional/
NTFS3 Linux Kernel Read/Write support by Paragon Software (NTFS3) GPL
  • Fully Open Source implementation based on knowledge and expertise in the field
  • Advanced performance and resource efficiency
  • Full-featured file system implementation (read, write, compression, sparse files, journal replaying) integrated in the core of Linux (the Kernel)
https://lore.kernel.org/lkml/20200918162204.3706029-1-almaz.alexandrovich@paragon-software.com/
Linux Kernel Read-only NTFS 2001 (original NTFS implementation) GPL
  • Older, rarely updated codebase
  • Partial feature implementation (read, very limited write support, no journaling)
https://elixir.bootlin.com/linux/v2.5.8/source/fs/ntfs/fs.c
NTFS-3G FUSE (NTFS-3G) GPL
  • FUSE (Filesystem In Userspace) implementation of the driver
  • FUSE layer gives significant overheads decreasing overall performance and resource usage of the driver
https://openinventionnetwork.com/linux-system/table-8/ (package # 1477)

If you still have questions, please, contact us using the form below.

Spelling error report

The following text will be sent to our editors: