Latest stable new NTFS kernel driver: 2.1.26
The new, rewritten NTFS driver is part of the current stable Linux kernel
series and the latest release is included with kernels 2.6.16 and later.
This rewritten NTFS driver backport to the previous stable Linux kernel series (2.4.x) is available from our download page. Note that the backports are no longer maintained since the driver now relies on too many 2.6 kernel specific features and backporting it to 2.4 would be a huge amount of work and involve rewriting the majority of the driver.
Latest old NTFS kernel driver: 1.1.22
The old NTFS driver is part of the now out-of-date Linux kernel series
(2.4.x) and the latest release is included with kernels 2.4.18 and later. This driver is not endorsed and supported by this project.
Before reporting potential bugs in the new NTFS driver, it would be
great if you could try a kernel containing the latest new NTFS driver
first. Thanks.
NTFS driver in Linux kernel 2.6
| Status |
|
|
This NTFS driver was written by Anton Altaparmakov from scratch,
supporting all versions of NTFS. It is included in the current kernels since 2.5.11 and also has a
backported version
for the latest 2.4 stable kernel. What are the advantages of the new driver
compared to the old one?
- Stable: no known problems in the implemented functionality, it's also multi-processor
and reentrant safe.
- Supports all NTFS
cluster
sizes from 512 bytes up to 64 kB. The old driver is limited to
maximum 4 kB cluster size.
- Full (read-only) support for sparse
and compressed
files also on Windows XP/2003/2000.
- Supports mmap() thus Wine users can start
applications from an NTFS partition.
- One can setup a loopback device
on an NTFS file.
TopologiLinux and others
use this feature to run Linux from a Windows NTFS partition with full read-write
support.
- Still mostly read-only, but with safe file overwrite support on all Windows versions
including changes to the file size (uncompressed, unencrypted, non-sparse files only).
- Much better performance.
- Support for exporting mounted NTFS volumes via NFS.
- Support for async io (aio).
- Support for fsync(2), fdatasync(2), and msync(2).
- Support for readv(2) and writev(2).
- Support for access time updates (including mtime and ctime).
- Support for open(O_TRUNC) and {f,}truncate().
|
If you need more write support than kernel driver provides, then look on ntfsmount.
NTFS User Tools: ntfsprogs
| Tool |
Status |
Description |
| libntfs |
Stable |
Move all the common code into a shared library |
| mkntfs |
Stable |
Create an NTFS volume on a partition |
| ntfscat |
Stable |
Print a file on the standard output |
| ntfsclone |
Stable |
Efficiently clone, image, restore or rescue a volume at the sector level |
| ntfscluster |
Stable |
Given a cluster, or sector, find the file |
| ntfscp |
Stable |
Overwrite a file on an NTFS volume |
| ntfsfix |
Stable |
Try to fix common errors and force Windows to check NTFS at boot time |
| ntfsinfo |
Stable |
Dump a file's attributes, completely |
| ntfslabel |
Stable |
Display or set a volume's label |
| ntfsls |
Stable |
List directory contents |
| ntfsmount |
Stable |
Mount NTFS volume from userspace using FUSE and libntfs |
| ntfsresize |
Stable |
Non-destructively resize an NTFS volume without the need of prior defragmentation |
| ntfsundelete |
Stable |
Find files that have been deleted and recover them |
| ntfstruncate |
Beta |
Truncate an inode attribute to a specified length |
| ntfswipe |
Beta |
Write zeros over the unused parts of the disk |
| ntfsrm |
Alpha |
Delete files from an NTFS volume |
| ntfsdump_logfile |
Alpha |
Parse the $LogFile internal structures |
| ntfsmove |
Alpha |
Move files and directories |
| ntfscmp |
Started |
compares two NTFS volumes |
| ntfsck |
Not started |
Perform consistency checks on a volume |
| ntfsdefrag |
Not started |
Defragment files, directories and the MFT |
| ntfsdiskedit |
Not started |
Walk the tree of NTFS ondisk structures (and alter them) |
LDM - Original Driver
| Status |
|
|
Slow and inefficient, but it works |
| ToDo |
|
|
Needs to be integrated with md |
LDM - New Driver
| Status |
|
|
The rewrite is nearly complete |
|
It's faster, cleaner and more robust |
| ToDo |
|
|
Needs to be integrated with md |
|
New code needs reviewing |
|
Make the driver compatible with the 2.4 kernel |
LDM - Tools
| Tool |
Status |
Description |
| ldminfo |
Stable |
Display the database contents in a simple form |
| simple |
Beta |
Mount a single volume from a single partition |
| multi-volumes |
Not started |
Support NTFS volumes that span several partitions, e.g. Spanned, Stripes, Mirrors and RAID |
| dbtools |
Not started |
Read/write information from/to the database |
| ldmlib |
Not started |
Move all the common code into a shared library |
|