NTFS (viết tắt của New Technology File System). Trong tiếng Việt, đây là 'Hệ thống tập tin công nghệ mới'. NTFS là hệ thống tập tin chính của Windows NT và được sử dụng trong các phiên bản Windows tiếp theo như Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2012, Windows 8 và Windows 8.1, Windows 10, cùng với Windows Server 2016.
NTFS thay thế hệ thống tệp FAT, vốn phổ biến trên các hệ điều hành Windows của Microsoft. So với FAT và HPFS (Hệ thống tập tin hiệu năng cao), NTFS có nhiều cải tiến đáng kể, bao gồm hỗ trợ siêu dữ liệu tốt hơn, sử dụng cấu trúc dữ liệu tiên tiến để nâng cao hiệu suất và độ tin cậy, cũng như tối ưu hóa việc sử dụng không gian đĩa. NTFS cũng cung cấp các tính năng mở rộng như danh sách kiểm soát truy cập (ACL) và ghi chép hệ thống tập tin.
Từ phiên bản Windows Vista trở đi, tất cả các phiên bản Windows yêu cầu phải cài đặt trên phân vùng NTFS và không còn hỗ trợ cài đặt trên phân vùng FAT.
Quá trình phát triển
Vào giữa những năm 1980, Microsoft và IBM đã hợp tác trong một dự án để phát triển hệ điều hành đồ họa thế hệ mới. Kết quả là hệ điều hành OS/2 ra đời, nhưng do bất đồng quan điểm, hai công ty đã chia tay. IBM tiếp tục phát triển OS/2, trong khi Microsoft chuyển hướng sang phát triển hệ điều hành Windows NT. Hệ thống tập tin HPFS của OS/2 có nhiều cải tiến quan trọng, và khi Microsoft tạo ra NTFS, họ đã áp dụng nhiều khái niệm từ HPFS. Do sự tương đồng này, cả hai hệ thống đều sử dụng mã phân loại nhận diện phân vùng ổ đĩa (07), điều này là bất thường vì có hàng chục mã khác nhau. NTFS cũng chịu ảnh hưởng từ thiết kế kiến trúc của Files-11 trên VMS, điều này không quá bất ngờ khi Dave Cutler, người đứng đầu VMS và Windows NT.
Các phiên bản
NTFS đã được phát hành qua 5 phiên bản như sau:
- Phiên bản 1.0 (v1.0) đi kèm với NT 3.1, phát hành giữa năm 1993
- Phiên bản 1.1 (v1.1) đi kèm với NT , phát hành cuối năm 1994
- Phiên bản 1.2 (v1.2) đi kèm với NT 1 (giữa năm 1995) và NT 4 (giữa năm 1996) (đôi khi còn gọi là 'NTFS 4.0', vì phiên bản OS là 4.0)
- Phiên bản 3.0 (v3.0) của Windows 2000 ('NTFS V5.0')
- Phiên bản 3.1 (v3.1) của Windows XP (mùa thu 2001; 'NTFS V5.1'), Windows Server 2003 (mùa xuân 2003; đôi khi còn gọi là 'NTFS V5.2'), Windows Vista (giữa năm 2005) (đôi khi còn gọi là 'NTFS V6.0') và Windows Server 2008
Các phiên bản V1.0 và V1.1 (cùng với các phiên bản mới hơn) không hoàn toàn tương thích: đĩa ghi bằng NT x không thể đọc trên NT 3.1 cho đến khi một bản cập nhật trên đĩa CD với NT x được cài đặt cho NT 3.1, bản cập nhật này cũng thêm hỗ trợ tên tập tin dài FAT. Phiên bản V1.2 hỗ trợ các tập tin nén, tên dòng dữ liệu, bảo mật dựa trên ACL, và nhiều tính năng khác. Phiên bản V3.0 bổ sung hạn ngạch đĩa, mã hóa, tập tin rải, các điểm kiểm tra phân tích, bản ghi số thứ tự cập nhật (USN), các tập tin và thư mục $Extend, và cải thiện ký hiệu bảo mật để nhiều tập tin có thể chia sẻ cùng một thiết lập bảo mật. Phiên bản V3.1 mở rộng danh sách Bảng tập tin gốc (MFT) với số ghi MFT dư để hỗ trợ khôi phục các tập tin MFT bị hư hỏng.
Windows Vista đã tích hợp NTFS với các tính năng mới như liên kết biểu tượng NTFS, phân vùng thu hẹp và khả năng tự sửa chữa. Những tính năng này chủ yếu nhằm cải thiện chức năng của hệ điều hành hơn là thay đổi hệ thống tập tin chính nó.
Các đặc điểm
NTFS v3.0 mang đến nhiều cải tiến so với FAT, bao gồm: hỗ trợ tập tin rải, cấp hạn ngạch cho ổ đĩa, các điểm phân tích kiểm tra, theo dõi liên kết phân phối, và mã hóa tập tin, còn được biết đến với tên gọi Hệ thống tệp mã hóa (EFS).
Bản ghi số thứ tự cập nhật (USN)
Đây là tính năng quản lý hệ thống ghi nhận mọi thay đổi đối với các tập tin, dòng dữ liệu và thư mục trên đĩa, cũng như các thuộc tính khác của chúng. USN là chức năng quan trọng của NTFS (mà FAT/FAT32 không có), giúp đảm bảo rằng các cấu trúc dữ liệu phức tạp như bitmap cấp cho đĩa, các sửa đổi bản ghi MFT, và các ký hiệu bảo mật luôn được đồng bộ, ngay cả khi hệ thống bị hư hỏng. Điều này cũng giúp dễ dàng khôi phục các thay đổi không mong muốn khi ổ đĩa được cài đặt lại. Trong các phiên bản Windows mới, USN còn mở rộng để theo dõi trạng thái của các giao tác khác trên hệ thống tập tin NTFS, như bản sao bóng VSS với ngữ nghĩa copy-on-write (COW) cho phép chia sẻ trang bộ nhớ giữa các tiến trình cha và con, cũng như các giao tác NTFS và hệ thống tập tin phân phối.
Các liên kết cứng và tên tập tin rút gọn
Ban đầu, Windows NT hỗ trợ hệ thống con POSIX với các liên kết cứng, tương tự như các nút thư mục nhưng dành cho tập tin. Các liên kết cứng chỉ có thể áp dụng cho tập tin trong cùng một ổ đĩa thông qua bản ghi tên tập tin phụ trong MFT. Việc rút gọn tên tập tin cũng sử dụng các bản ghi tên phụ mà không cần danh sách thư mục riêng biệt.
Các dòng dữ liệu bổ sung (ADS)
Các dòng dữ liệu bổ sung cho phép liên kết nhiều dòng dữ liệu với một tên tập tin, định dạng là 'filename:streamname' (ví dụ: 'text.txt:extrastream'). Các dòng này không hiển thị trong Windows Explorer và không tính vào kích thước tập tin. Khi sao chép tập tin sang mạng chia sẻ hoặc ổ đĩa USB định dạng FAT, hoặc gửi qua e-mail, chỉ có dòng chính của tập tin được giữ lại. Do đó, việc sử dụng dòng dữ liệu bổ sung cho thông tin quan trọng có thể gặp rủi ro. ADS được giới thiệu trong Windows NT 3.1 để hỗ trợ Các dịch vụ cho Macintosh (SFM) lưu trữ tài nguyên Macintosh. Mặc dù SFM không còn trong các phiên bản Windows Server hiện tại, các sản phẩm AFP của bên thứ ba vẫn sử dụng tính năng này. Malware có thể lợi dụng ADS để ẩn mã độc, và hiện có các công cụ quét đặc biệt để kiểm tra dòng dữ liệu bổ sung. Microsoft cung cấp công cụ Streams cho phép người dùng xem các dòng dữ liệu trên ổ đĩa.
Các ADS nhỏ còn được tích hợp vào Internet Explorer và các trình duyệt khác để đánh dấu tập tin tải về từ internet, cảnh báo người dùng về mức độ an toàn của chúng. Nếu người dùng không xác nhận, ADS có thể bị loại bỏ khỏi danh mục MFT của tập tin tải về.
Một số ứng dụng media đã thử sử dụng ADS để lưu trữ siêu dữ liệu cho các tập tin media nhằm tổ chức và sắp xếp mà không thay đổi nội dung dữ liệu chính của tập tin (sử dụng các thẻ nhúng nếu định dạng tập tin media như MPEG và OGG hỗ trợ). Siêu dữ liệu này có thể hiển thị trong Windows Explorer dưới dạng cột thông tin bổ sung nhờ vào một Windows Shell mở rộng, nhưng nhiều ứng dụng media vẫn ưu tiên sử dụng cơ sở dữ liệu riêng thay vì ADS để lưu trữ thông tin, vì ADS có thể hiển thị các tập tin này cho tất cả người dùng mà không được bảo mật theo từng người dùng với các tùy chọn cá nhân hóa.
Các tập tin thưa
Tập tin thưa chứa dữ liệu thưa thớt, chủ yếu là các số 0. Các ứng dụng cơ sở dữ liệu thường sử dụng loại tập tin này. Để hỗ trợ lưu trữ hiệu quả, Microsoft đã cung cấp tính năng cho phép ứng dụng chỉ định các vùng dữ liệu trống (các vùng toàn số 0). Khi đọc tập tin thưa, hệ thống tập tin xử lý các khoảng trống để cung cấp dữ liệu cần thiết. Kích thước thực tế của tập tin thưa không được tính vào khi xác định các giới hạn hạn ngạch, tương tự như với các tập tin nén.
Tập tin nén
NTFS nén tập tin bằng một biến thể của thuật toán LZ77. Dù có thể đọc và ghi trên các tập tin nén, Microsoft khuyến nghị không nên nén trên các hệ thống máy chủ hoặc mạng chia sẻ lớn do điều này có thể làm tăng tải xử lý cho bộ xử lý.
Sao chép bóng ổ đĩa
Dịch vụ sao chép bóng ổ đĩa (Volume Shadow Copy Service - VSS) giữ lại các phiên bản trước của tập tin và thư mục trên ổ đĩa NTFS bằng cách lưu trữ dữ liệu ghi đè mới và cũ (copy-on-write). Khi người dùng muốn quay lại phiên bản trước, dữ liệu cũ sẽ thay thế dữ liệu mới. Điều này cho phép các chương trình sao lưu dữ liệu mà không ảnh hưởng đến các tập tin đang được sử dụng bởi hệ thống. Microsoft khuyến nghị tạo một ổ đĩa riêng biệt cho sao lưu bóng để đảm bảo phục hồi hiệu quả trong trường hợp hệ thống gặp sự cố. VSS cũng sử dụng bản ghi USN để theo dõi các giao tác cục bộ và đảm bảo các thay đổi hệ thống tập tin được phục hồi đúng cách sau khi khởi động lại hoặc giảm xuống một phiên bản cũ nếu phiên bản mới chưa hoàn tất. Tuy nhiên, các bóng VSS này không tự động phối hợp trên nhiều tập tin hoặc ổ đĩa, trừ khi có sự hỗ trợ của người phối hợp giao tác, và chỉ dùng để đảm bảo các phiên bản cũ vẫn có thể truy cập được trong các hoạt động sao lưu.
Giao tác NTFS
Tương tự như Windows Vista, các ứng dụng có thể sử dụng Giao tác NTFS để nhóm các tập tin trong một giao tác. Giao tác đảm bảo tất cả các thay đổi được thực hiện đồng bộ, hoặc không có thay đổi nào được áp dụng nếu có vấn đề xảy ra. Giao tác NTFS sử dụng các kỹ thuật tương tự như sao chép bóng ổ đĩa (như copy-on-write) để đảm bảo an toàn dữ liệu ghi đè, và bản ghi UFS đánh dấu các giao tác chưa được hoàn tất hoặc đã được xác nhận nhưng chưa được áp dụng hoàn toàn trong trường hợp có sự cố trong quá trình thỏa hiệp.
Tuy nhiên, trong hệ thống tập tin hỗ trợ giao tác, tính năng này có thể được áp dụng tạm thời cho tất cả các tập tin cần thiết cho phân vùng, miễn là giao tác không bị thỏa hiệp. Điều này trái ngược với các tập tin hệ thống, vốn chỉ được đánh dấu và sửa đổi hoàn toàn trong các giao tác cục bộ riêng biệt.
Kỹ thuật copy-on-write được điều chỉnh để cho phép hủy bỏ các giao tác hiện tại mà không tạo ra các phân đoạn trong hệ thống tập tin đang được nhiều người tham gia sử dụng. Dữ liệu cũ có thể không được ghi đè ngay lập tức và vẫn được giữ lại, đặc biệt khi bị khóa bởi người khác trong các giao tác của nó. Trong trường hợp này, chỉ dữ liệu mới sẽ được lưu giữ trong một bóng tạm thời, và dữ liệu cũ sẽ được áp dụng qua copy-on-write VSS khi giao tác được hoàn tất. Bóng tạm thời cho dữ liệu mới, chỉ được các quá trình tham gia xem thấy, có thể không ngay lập tức được ghi vào đĩa mà có thể chỉ được duy trì trong bộ nhớ hoặc thay đổi sau. Giao tác NTFS không chỉ giới hạn trên ổ đĩa NTFS cục bộ mà còn bao gồm các dữ liệu và hoạt động từ các nguồn khác như ổ đĩa riêng biệt, thanh ghi cục bộ, cơ sở dữ liệu SQL, hoặc các dịch vụ hệ thống và từ xa.
Các giao tác mạng rộng được điều phối thông qua dịch vụ Distributed Transactions Coordinator (DTC) đảm bảo rằng tất cả các bên tham gia đều nhận được trạng thái thỏa hiệp đồng bộ. DTC giúp vận chuyển các thay đổi đã được xác nhận bởi bất kỳ bên tham gia nào và hủy bỏ các thay đổi chưa thỏa hiệp. Giao tác NTFS hỗ trợ tạo các mạng rộng phù hợp với hệ thống tập tin phân phối, bao gồm cả các tập tin cục bộ và bộ nhớ đệm ngoại tuyến.
Hệ thống tệp mã hóa (EFS - Encrypting File System)
EFS cung cấp khả năng mã hóa mạnh mẽ cho các tập tin và thư mục trên ổ đĩa NTFS. EFS hoạt động cùng với dịch vụ EFS, CryptoAPI của Microsoft và Thư viện thực thi hệ thống tập tin EFS (FSRTL). EFS mã hóa tập tin bằng khóa đối xứng khối (còn gọi là Khóa mã hóa tập tin hay FEK), vì khóa đối xứng mã hóa và giải mã dữ liệu nhanh hơn so với khóa không đối xứng. Khóa đối xứng mã hóa tập tin được mã hóa bằng khóa công khai của người dùng và lưu trong một dòng dữ liệu luân phiên của tập tin. Để giải mã, hệ thống sử dụng khóa riêng của người dùng để giải mã khóa đối xứng và sau đó giải mã tập tin. Quy trình này hoàn toàn minh bạch với người dùng. Nếu người dùng mất quyền truy cập vào khóa của mình, hệ thống EFS tạo thêm các khóa giải mã để các tác nhân khôi phục có thể truy cập tập tin khi cần. Việc nén và mã hóa do NTFS cung cấp không thể thực hiện đồng thời - NTFS chỉ hỗ trợ một trong hai chức năng và công cụ bên thứ ba cũng không thể hỗ trợ cả hai.
Cấp hạn ngạch
Tính năng cấp hạn ngạch ổ đĩa đã được giới thiệu trong NTFS phiên bản 3. Nó cho phép quản trị viên của các hệ điều hành Windows hỗ trợ NTFS thiết lập giới hạn không gian đĩa cho từng người dùng. Điều này giúp quản lý và theo dõi dung lượng ổ đĩa mà mỗi người dùng đã sử dụng. Quản trị viên có thể định mức không gian đĩa mà người dùng có thể sử dụng trước khi nhận được cảnh báo và sau đó từ chối quyền truy cập khi họ đạt đến giới hạn. Hạn ngạch ổ đĩa không áp dụng cho các tập tin nén trong NTFS, mà chỉ được kích hoạt cho các tập tin thông thường. Các ứng dụng truy vấn dung lượng ổ đĩa cũng sẽ nhận thấy dung lượng trống còn lại được cấp cho người dùng.
Tính năng cấp hạn ngạch ổ đĩa không có trong các phiên bản Windows Basic, Home và MediaCenter. Nó cần được kích hoạt sau khi cài đặt các phiên bản Windows Professional, Ultimate hoặc Server, hoặc bằng cách sử dụng các công cụ đặc biệt để kích hoạt.
Các điểm phân tích
Tính năng này được giới thiệu trong NTFS phiên bản 3 và cho phép sử dụng các thẻ phân tích trong thuộc tính không gian của tập tin hoặc thư mục. Khi một trình quản lý đối tượng phân tích tên hệ thống tập tin và gặp thuộc tính phân tích, nó sẽ phân tích lại và truyền dữ liệu phân tích do người dùng kiểm soát tới các trình lọc hệ thống tập tin đã được nạp vào Windows. Mỗi trình điều khiển lọc kiểm tra dữ liệu phân tích và thực hiện các chức năng đặc biệt nếu có sự tương quan. Các điểm phân tích được áp dụng trong việc cài đặt điểm đĩa, liên kết thư mục, quản lý lưu trữ phân bậc, lưu trữ cấu trúc tự nhiên, lưu trữ trường hợp riêng và liên kết biểu tượng.
Sự tương kết
Thông tin chi tiết về các đặc tính bổ sung không được cung cấp, làm cho việc phát triển công cụ xử lý NTFS của các nhà sản xuất bên thứ ba trở nên khó khăn hơn.
Linux
Khả năng đọc và ghi NTFS trên Linux được cung cấp thông qua trình điều khiển NTFS-3G, có sẵn trong hầu hết các bản phân phối Linux. Các giải pháp cũ và chỉ đọc bao gồm:
- Hạt nhân Linux 2.2: Các phiên bản từ 2.2.0 trở đi hỗ trợ đọc phân vùng NTFS.
- Hạt nhân Linux 2.6: Các phiên bản từ 2.6.0 trở đi bao gồm trình điều khiển của Anton Altaparmakov và Richard Russon, hỗ trợ đọc tập tin, ghi đè và thay đổi kích cỡ phân vùng.
- NTFSMount: Trình điều khiển người dùng hỗ trợ đọc và ghi NTFS, trừ các tập tin mã hóa và nén, cho phép thay đổi quyền sở hữu và quyền truy cập tập tin.
- NTFS cho Linux: Trình điều khiển thương mại của Paragon cung cấp hỗ trợ đầy đủ cho đọc và ghi NTFS.
- Captive NTFS: Trình điều khiển 'gói' sử dụng trình điều khiển Windows ntfs.sys.
Lưu ý rằng ba trình điều khiển người dùng, bao gồm NTFSMount, NTFS-3G và Captive NTFS, đều dựa trên Filesystem in Userspace (FUSE), một mô-đun hạt nhân Linux kết nối giữa không gian người dùng và mã hạt nhân để lưu trữ và truy xuất dữ liệu. Hầu hết các trình điều khiển trên (ngoại trừ Paragon NTFS cho Linux) đều là mã nguồn mở (GPL). Do cấu trúc NTFS phức tạp, trình điều khiển hạt nhân 2.6.14 và FUSE không hỗ trợ thay đổi ổ đĩa để tránh rủi ro không an toàn.
Mac OS X
Mac OS X v10.3 và các phiên bản sau đó hỗ trợ chỉ đọc cho các phân vùng NTFS. NTFS-3G, dưới giấy phép GPL, cũng hoạt động trên Mac OS X thông qua FUSE và cho phép cả đọc và ghi vào phân vùng NTFS. Đối với truy cập đọc/ghi độc quyền, 'Paragon NTFS cho Mac OS X' là một giải pháp. Mặc dù Mac OS X 10.6 có hỗ trợ ghi NTFS, tính năng này chưa được kích hoạt trong phiên bản 10.6.1, tuy nhiên, đã có cách bẻ khóa để kích hoạt chức năng này.
Microsoft Windows
Các phiên bản NTFS khác nhau thường tương thích ngược và xuôi với nhau, nhưng cần chú ý khi cài đặt ổ đĩa NTFS mới trên các phiên bản cũ của Microsoft Windows. Điều này có thể ảnh hưởng đến khả năng khởi động kép và ổ cứng di động gắn ngoài. Ví dụ, việc sử dụng phân vùng NTFS với 'Các phiên bản trước' (hay Volume Shadow Copy) trên hệ điều hành không hỗ trợ có thể dẫn đến mất mát dữ liệu của các phiên bản trước đó.
Các hệ điều hành khác
eComStation, KolibriOS và FreeBSD hỗ trợ đọc NTFS, với eComStation có trình điều khiển NTFS beta cho phép ghi/xóa, tuy nhiên không hoàn toàn an toàn. Một công cụ miễn phí từ bên thứ ba dành cho BeOS, dựa trên NTFS-3G, cho phép đọc và ghi toàn diện NTFS. NTFS-3G cũng hoạt động trên Mac OS X, FreeBSD, NetBSD, Solaris và Haiku, cùng với Linux sử dụng FUSE. Ngoài ra, một trình điều khiển đọc/ghi miễn phí cho MS-DOS có tên 'NTFS4DOS' cũng đã được phát hành.
Tương thích với FAT
Microsoft cung cấp công cụ (convert.exe) để chuyển đổi từ HPFS (chỉ có trên Windows NT 3), FAT16 và FAT32 (trên Windows 2000 và các phiên bản Windows sau) sang NTFS. Các công cụ của bên thứ ba có thể thay đổi kích thước phân vùng NTFS một cách an toàn. Windows Vista thêm khả năng thu hẹp hoặc mở rộng phân vùng, nhưng tính năng này bị hạn chế vì không di chuyển các tập tin trang nhớ hoặc tập tin cố định, hạn chế khả năng thu hẹp phân vùng. Việc khởi động lại mà không có tập tin trang nhớ hoặc sử dụng công cụ của bên thứ ba để chống phân mảnh có thể giúp giảm bớt vấn đề nếu tập tin trang nhớ là tập tin cố định. Do lý do lịch sử, các phiên bản Windows không hỗ trợ NTFS giữ thời gian theo múi giờ địa phương, và do đó các hệ thống tập tin khác cũng làm vậy. Tuy nhiên, Windows NT và các phiên bản Windows sau đều sử dụng nhãn giờ theo UTC và thực hiện chuyển đổi phù hợp cho mục đích hiển thị. Do đó, nhãn giờ NTFS là UTC. Khi sao chép hoặc di chuyển tập tin giữa các phân vùng NTFS và không phải NTFS, hệ điều hành cần chuyển đổi nhãn giờ cho phù hợp. Tuy nhiên, nếu một số tập tin được di chuyển khi ánh sáng ngày (DST) đang hiệu lực, và các tập tin khác khi giờ chuẩn có hiệu lực, có thể có sự không rõ ràng trong việc chuyển đổi. Kết quả là, đặc biệt là ngay sau khi có thay đổi múi giờ địa phương, người dùng có thể thấy một số tập tin có nhãn giờ lệch một giờ. Sự khác biệt trong việc thực hiện DST giữa bán cầu bắc và nam có thể gây lỗi nhãn giờ lên tới 4 giờ trong 12 tháng.
Các hạn chế
NTFS có những hạn chế sau đây:
- Tên tệp đặc biệt: Mặc dù hệ thống tệp hỗ trợ đường dẫn dài tới khoảng 32.767 ký tự Unicode và mỗi thành phần đường dẫn (thư mục hoặc tên tệp) có thể dài tới 255 ký tự, một số tên tệp vẫn không thể sử dụng. NTFS lưu siêu dữ liệu trong các tệp bình thường (mặc dù chúng có thể ẩn đi hoặc không thấy được); do đó, các tệp người dùng không thể sử dụng những tên này. Những tệp này tồn tại trong thư mục gốc của một ổ đĩa và chỉ dành riêng cho thư mục đó. Các tên như: $MFT, $MFTMirr, $LogFile, $Volume, $AttrDef, $Bitmap, $Boot, $BadClus, $Secure, $Upcase, và $Extend đều có mặt trong các thư mục và tệp khác.
- Kích thước ổ đĩa tối đa: Về lý thuyết, ổ đĩa NTFS có thể lên đến 2^64 cluster. Tuy nhiên, trên Windows XP Professional, kích thước tối đa của ổ đĩa NTFS là 2^32 cluster. Ví dụ, với kích thước cluster 64 KiB, kích thước tối đa của ổ đĩa NTFS sẽ là 256 TiB trừ 64 KiB. Với kích thước cluster mặc định là 4 KiB, kích thước tối đa của ổ đĩa NTFS là 16 TiB trừ 4 KiB, lớn hơn nhiều so với giới hạn 128 GiB trong Windows XP SP1. Vì các phân vùng trên ổ đĩa MBR chỉ hỗ trợ tối đa 2 TiB, ổ đĩa GPT hoặc động có thể được sử dụng để tạo ổ đĩa NTFS lớn hơn 2 TiB.
- Kích thước tệp tối đa: Theo lý thuyết là 16 EiB trừ 1 KiB (264 − 210 hay 18.446.744.073.709.550.592 bytes). Thực tế: 16 TiB trừ 64 KiB (244 − 216 hay 17.592.185.978.880 bytes).
- Các dòng dữ liệu luân phiên: Các lệnh hệ thống Windows có thể xử lý các dòng dữ liệu luân phiên. Tùy thuộc vào hệ điều hành và công cụ, một quá trình sao chép tệp có thể âm thầm tách các dòng dữ liệu. Để di chuyển hoặc sao chép tệp một cách an toàn, nên sử dụng các lệnh hệ thống BackupRead và BackupWrite, cho phép các chương trình kiểm tra từng dòng để đảm bảo không bỏ qua các dòng quan trọng.
- Chiều dài đường tối đa: Một đường dẫn tuyệt đối có thể dài tới 32.767 ký tự, trong khi một đường dẫn tương đối bị giới hạn ở 255 ký tự. Trong trường hợp tồi tệ nhất, điều này có nghĩa là độ sâu tối đa là 128 thư mục, nhưng trong thực tế, giới hạn này hiếm khi được đạt đến.
- Miền thời gian: NTFS sử dụng hệ thống tính giờ 64 bit từ Windows NT, với phạm vi từ ngày 1 tháng 1 năm 1601 đến ngày 28 tháng 5 năm 60056 và độ chính xác 10 triệu tích tắc (100 nano giây mỗi tích tắc) trong một giây. Tuy nhiên, đồng hồ hệ thống không đạt được độ chính xác này và chỉ có thể duy trì độ chính xác thấp hơn (thường là 10 giây mà không có phần cứng hỗ trợ đồng hồ tốt hơn). Ngoài ra, không phải tất cả các nhãn giờ đều chính xác như vậy: trong các thuộc tính tiêu chuẩn, độ chính xác thấp hơn nhiều, và ngày truy cập cuối (nếu chưa bị vô hiệu hóa trong thiết lập hệ thống) không luôn được báo cáo ngay lập tức, có thể bị làm tròn.
- Thiếu độ dư thừa: NTFS không giữ bản sao dự phòng của tệp MFT chứa các tham chiếu đến tệp trên phân vùng. Nếu MFT bị hỏng, dữ liệu không thể khôi phục. Vì chỉ sao lưu dữ liệu này (ảnh MFT), không chứa tất cả các mục của MFT, nên có thể không phục hồi được dữ liệu quan trọng.
Hệ thống tệp NTFS có khả năng hoạt động mạnh mẽ và tính năng tự sửa chữa. Nhờ vào khả năng lưu trữ thông tin xử lý, NTFS có khả năng phục hồi tệp tốt hơn khi ổ đĩa gặp sự cố. Nó hỗ trợ bảo mật ở cấp độ tệp, nén và kiểm định, đồng thời quản lý các ổ đĩa lớn và giải pháp lưu trữ mạnh mẽ như RAID.
NTFS sử dụng bảng MFT (Master File Table) thay cho bảng FAT (File Allocation Table) để nâng cao khả năng lưu trữ, bảo mật tệp và mã hóa dữ liệu từng tệp. NTFS cũng có khả năng chịu lỗi cao, cho phép người dùng đóng các ứng dụng bị treo mà không ảnh hưởng đến các ứng dụng khác. Tuy nhiên, NTFS không phù hợp với ổ đĩa dung lượng nhỏ (dưới 400 MB) và không thể sử dụng trên đĩa mềm.
Các phiên bản NTFS hiện có bao gồm: v1.0, v1.1, v1.2 trên các phiên bản Windows NT 1 và 4, v3.0 trên Windows 2000, v3.1 trên Windows XP và Windows Server 2003. Windows XP và Windows Server 2003 cũng hỗ trợ các phiên bản v4.0, v5.0, v5.1.
- NTFS là hệ thống tệp đặc trưng của Windows NT/2000, sử dụng 64 bit để xác định các cluster, cho phép quản lý ổ đĩa có dung lượng lên đến 16 Exabyte (16 tỷ GB). Tuy nhiên, thực tế Windows NT/2000 chỉ sử dụng 32 bit để xác định cluster với kích thước 64 KB, nên NTFS có thể quản lý các ổ đĩa tối đa 256 TB.
NTFS cung cấp nhiều tính năng tiên tiến như bảo mật tệp/thư mục, quản lý hạn ngạch đĩa, nén và mã hóa tệp, và hơn thế nữa. Một trong những đặc điểm nổi bật của NTFS là khả năng phục hồi lỗi. Trong trường hợp hệ thống bị tắt đột ngột, metadata của ổ đĩa FAT có thể bị xung đột, dẫn đến việc mất mát dữ liệu lớn. Ngược lại, NTFS giữ cho cấu trúc tệp/thư mục không bị thay đổi. Tên tệp trong NTFS không dài quá 255 ký tự, và đường dẫn đầy đủ không vượt quá 32.567 ký tự. NTFS sử dụng mã UniCode và phân biệt chữ hoa với chữ thường trong tên tệp.
Cấu trúc thư mục | B+ Tree |
Kích thước tập tin | Lý thuyết là 16 EiB nhưng thực tế hiện nay là 16 TiB |
Số lượng tập tin | 4.294.967.295 (2^32 − 1) |
Độ dài tối đa của tên tập tin | 255 ký tự |
Kích thước tối đa của ổ đĩa | Lý thuyết là 16 EiB trên thực tế là 256 TiB |
- FAT
Liên kết ngoài
- Linux-NTFS Đây là một dự án mã nguồn mở cho phép kernel Linux đọc các phân vùng NTFS.
- Captive NTFS Một chương trình sử dụng driver NTFS từ Windows để hỗ trợ Linux truy cập các phân vùng NTFS.