NTFS

NTFS (ang. New Technology File System) – standardowy system plików systemu Windows NT i jego następców (Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8, Windows Server 2012, Windows 10, Windows Server 2016). Wspierany jest także w systemach Linux i Berkeley Software Distribution za pomocą sterownika NTFS-3G, a także w systemie MacOS w trybie tylko do odczytu (z możliwością zapisu przy użyciu dodatkowego oprogramowania[1]).

NTFS wywodzi się od systemu plików HPFS, opracowanego przez Microsoft i IBM dla systemu OS/2. Został wprowadzony w celu zastąpienia starszego FAT-u, używanego w MS-DOS. Zaczerpnięte z HPFS ulepszenia w stosunku do FAT-u obejmują obsługę metadanych oraz dodanie struktur poprawiających szybkość pracy z dużą liczbą plików oraz dyskami o dużej pojemności. Dalsze ulepszenia (w stosunku do HPFS) polegają na wprowadzeniu listy kontroli dostępu (ACL) i dziennika operacji dyskowych (ang. journal). Ponadto NTFS nie ma tak ostrego ograniczenia dotyczącego maksymalnego rozmiaru pliku (do 4GB w FAT32), co umożliwia na przykład przechowanie obrazu płyty DVD na dysku twardym, bez dzielenia go na mniejsze pliki.

Ograniczenia

Maksymalny rozmiar pliku to:

  • Teoretycznie: 16 EB – 1 kB (264 B – 1 kB)
  • W implementacji: 16 TB – 64 kB (244 B – 64 kB)

Maksymalny rozmiar partycji to:

  • Teoretycznie: 264 klastrów – 1 klaster
  • W implementacji: 256 TB – 64 kB (232 klastrów – 1 klaster)[2]

Wersje

Microsoft wydał pięć wersji NTFS:

Numer wersji NTFSPierwszy system operacyjnyData wydaniaNowe funkcjeUwagi
1.0Windows NT 3.11993Początkowa wersjaNTFS 1.0 jest niezgodny z wersją 1.1 i nowszą: woluminów utworzonych przez system Windows NT 3.5x nie można odczytać w systemie Windows NT 3.1, dopóki nie zostanie zainstalowana aktualizacja (dostępna na nośniku instalacyjnym systemu NT 3.5x).[1]
1.1Windows NT 3.511995Skompresowane pliki, nazwane strumienie i listy kontroli dostępu
1.2Windows NT 4.01996Deskryptory bezpieczeństwa(ang.)Powszechnie nazywany NTFS 4.0 po wydaniu systemu operacyjnego
3.0Windows 20001997?Przydziały dysku, Szyfrowanie systemu plików, rzadkie pliki(ang.), punkty ponownej analizy, kronikowanie numeru sekwencji aktualizacji (USN)(ang.), folder $Extend i jego plikiKompatybilny z Windows NT 4.0 z aktualizacją Service Pack 4.

Powszechnie nazywany NTFS 5.0 po wydaniu systemu operacyjnego

3.1Windows XP i późniejsze: Windows Server 2003

Windows Vista

Windows 7

Windows 8

Windows 10

Październik 2001 r.Rozszerzono wpisy w głównej tabeli plików (MFT) o nadmiarowy numer rekordu MFT (przydatne do odzyskiwania uszkodzonych plików MFT)Powszechnie nazywany NTFS 5.1 po wydaniu systemu operacyjnego

Jest to numeracja używana w oficjalnej dokumentacji Microsoftu (np. Microsoft TechNet). Często spotyka się nieformalną numerację zgodną z wewnętrznym numerem wersji Windows, w którym dana wersja NTFS się pojawiła. Przykładowo dla NTFS używanego w Windows NT 3.51 i 4.0 podaje się numer wersji 3.5, dla Windows 2000 używa się określenia NTFS 5 itd.

Numer wersji NTFS.sys (np. v5.0 w Windows 2000) zależy od wersji systemu operacyjnego; nie należy go mylić z numerem wersji NTFS (v3.1 od Windows XP).

Przy instalacji Windows 2000 lub późniejszego Windows na komputerze, na którym istnieją już woluminy NTFS, wszystkie woluminy zostają przenumerowane do wersji używanej przez właśnie instalowaną wersję Windows lub pozostawione w niezmienionej postaci, jeśli napotkane przez instalator woluminy są późniejszej wersji (dotyczy sytuacji, w której Windows 2000 jest instalowany na komputerze, na którym jest już lub była instalacja Windows XP lub późniejszego i pozostały po niej woluminy NTFS).

W przypadku podniesienia wersji do 3.0 lub 3.1 z wersji wcześniejszych niż 3,0 nie następuje utrata danych, jednakże system Windows NT 4.0 lub wcześniejszy, jeśli nadal jest zainstalowany na komputerze, a podniesienie wersji NTFS wiąże się z dodaniem nowego systemu zamiast tzw. upgrade’u, nie będzie mógł odczytać danych z woluminów NTFS i tym samym nie będzie go można uruchomić. Ratunkiem jest zainstalowanie dodatku SP6 dla Windows NT 4.0 przed dodaniem Windows 2000 lub nowszego systemu do listy systemów na danym komputerze bądź rezygnacja z Windows NT 4 przez usunięcie systemu lub przejście do Windows 2000 lub nowszego wykonanie tzw. upgrade’u.

Pomimo numerycznej różnicy wersji 3.0 i 3.1, NTFS w obu wersjach jest zgodny w przód i wstecz w kluczowych rzeczach i system Windows 2000 – pomimo wbudowanej obsługi NTFS 3.0, nie 3.1 – nie ma kłopotów z odczytem i zapisem woluminów NTFS 3.1 utworzonych lub podniesionych przez Windows XP i Windows Server 2003. Dla przykładu, systemowe narzędzie CHKDSK może bezawaryjnie sprawdzić i w razie potrzeby usunąć błędy z woluminów NTFS wersji 3.1. Jedną z nielicznych funkcji, których zgodność pomiędzy NTFS 3.0 i 3.1 jest zachwiana, jest EFS. Jest to podyktowane zmianą techniki szyfrowania plików przez EFS pomiędzy Windows 2000 i Windows XP. Na skutek tego, w komputerze, w którym zainstalowane są zarówno Windows 2000, jak i Windows XP, a użytkownik przy uruchomieniu komputera wybiera system operacyjny za pomocą menu startowego Windows bądź innego programu typu boot manager, stacja robocza 2000 Professional nie może odczytać plików zaszyfrowanych przez XP Professional nawet jeśli użytkownik zaimportował uprzednio odpowiedni klucz EFS ze swojego konta w XP do swojego konta w 2000. Jest to jeden z powodów, dla których niewskazane jest szyfrowanie plików przy pomocy EFS na komputerach domowych. Do szyfrowania danych w środowisku domowym lub firmowym poza domeną Windows 2000 lub Windows Server 2003 bardziej wskazane są programy do szyfrowania danych niezależne od EFS czy NTFS w ogóle.

Cechy

NTFS v3.0 zawiera kilka nowych funkcji w stosunku do swoich poprzedników: obsługę plików rzadkich, przydziały dysków, punkty ponownej analizy, Śledzenie łączy rozproszonych oraz szyfrowanie na poziomie plików zwane Encrypting File System (EFS).

  • księgowanie – (od NTFS 3.0 w Windows 2000); wewnętrzny dziennik zmian znacząco poprawia ochronę danych przed błędami zapisu; wspomaga przy tym działanie narzędzi dyskowych, takich jak CHKDSK;
  • szyfrowanie plików i katalogów – (od NTFS 3.0 w Windows 2000) przy pomocy nakładek tworzących EFS – Encrypting File System – nie jest jednak możliwe zaszyfrowanie plików systemowych; od Windows XP, podsystem EFS dostępny jest tylko w wersjach Professional lub wyższych (i ich odpowiednikach, np. Vista Business); nie jest dostępny w wersjach Home i ich derywatach; EFS nie jest przeznaczony do szyfrowania prywatnych danych na komputerach domowych, a raczej do ochrony danych w systemach o wielu użytkownikach w środowiskach korporacyjnych, szczególnie w domenach Windows 2000 i Windows Server 2003; wersja EFS używana przez Windows 2000 różni się od wersji używanej w późniejszych wersjach Windows i jest z nimi niezgodna.
  • kompresja danych „w locie”; pliki kompresowane przy pomocy wbudowanych funkcji NTFS nie mogą być szyfrowane przy pomocy EFS i odwrotnie;
  • prawa dostępu dla grup i użytkowników – dostęp do tej funkcji jest ograniczony w Windows XP Home Edition i późniejszych; pełne wykorzystanie praw dostępu, wraz z możliwością wykonania inspekcji praw dostępu z zapisem do dziennika, możliwe jest w Windows 2000 (wszystkie wersje dla komputerów PC), Windows XP Professional, Windows Server 2003 i nie-domowych wersjach Windows Vista
  • transakcyjność – (od Windows Vista / Windows Server 2008) pozwala na wykonywanie transakcyjnych operacji na systemie plików. Transakcje są optymalizowane tak, aby czas ich zamknięcia był jak najkrótszy, dzięki czemu w normalnych warunkach nie stanowią dodatkowego obciążenia. Transakcje mogą obejmować wiele plików i pozostawać dowolnie długo otwarte.

Wady NTFS

  • pliki na tym systemie plików ulegają fragmentacji. Oznacza to, że wraz z użytkowaniem komputera, wydłuża się czas operacji odczytu i zapisu na dysku, co powoduje że system operacyjny uruchamia się wolniej, programy są wolniej wczytywane. Defragmentacja, będąca uporządkowaniem fizycznej struktury plików, czyli odwrotnością procesu fragmentacji, może trwać nawet kilka godzin w zależności od wielkości dysku i jego parametrów. Większość systemów plików ulega fragmentacji, jednakże m.in. linuxowe systemy plików: ext2, ext3, ext4 starają się zredukować fragmentację do minimum – w przeciwieństwie do NTFS.

Linux

Jądro Linux od wersji 2.2.0 (wydanej w 1999 roku) pozwala na odczyt partycji NTFS (wszystkie aktualne dystrybucje).

Zapis umożliwia sterownik NTFS-3G korzystający z FUSE. Od lutego 2007 sterownik NTFS-3G jest w wersji stabilnej 1.0, poprawnie zapisuje, ale nie zapewnia pełnej zgodności np. praw dostępu.

Zobacz też

Przypisy

  1. FUSE extends macOS by adding support for user space file systems: osxfuse/osxfuse, FUSE for macOS, 8 października 2019 [dostęp 2019-10-08].
  2. JasonGerend, NTFS overview, docs.microsoft.com [dostęp 2019-10-08] (ang.).

Media użyte na tej stronie

REF new (questionmark).svg
Autor: Sławobóg, Licencja: LGPL
Icon for missing references