NTFS
A Wikipédiából, a szabad lexikonból.
Az NTFS vagy New Technology File System (új technológiájú fájlrendszer) a Microsoft Windows NT és utódainak (Windows 2000, Windows XP, Windows Server 2003) szabványos fájlrendszere. A korábbi Windows 95, 98, 98SE és ME nem képesek natív módon olvasni az NTFS fájlrendszert, bár léteznek programok erre a célra is.
Az NTFS a Microsoft korábbi FAT fájlrendszerét váltotta le, melyet az MS-DOS és a korábbi Windows verziók esetén használtak. Az NTFS több újdonsággal rendelkezik a FAT fájlrendszerrel szemben, mint például a metaadatok támogatása, fejlettebb adatstruktúrák támogatása a sebesség, a megbízhatóság és lemezterüet felhasználás érdekében, valamint már rendelkezik hozzáférésvédelmi listával és megtalálható benne a naplózás is. A fő hátránya a korlátozott támogatottsága a nem-Microsoft operációs rendszerek oldaláról, mivel a pontos specifikáció a Microsoft szabadalma.
Az NTFS-nek három verziója létezik:
- v1.2 - NT 3.51, NT 4
- v3.0 - Windows 2000
- v3.1 - Windows XP, Windows Server 2003, Windows Vista
Ezekre a verziókra gyakran v4.0-ként, v5.0-ként és v5.1-ként is szoktak hivatkozni a Windows verziója alapján. Az újabb verziók újabb funkciókat vezettek be. Például a Windows 2000-ben jelent meg a kvóta támogatás.
Tartalomjegyzék |
[szerkesztés] Belső működés
Az NTFS-en belül minden fájlokkal kapcsolatos információt (fájlnév, létrehozás dátuma, hozzáférési jogok, tartalom) metaadatként tárolnak. Ez az elegáns, bár absztrakt megközelítés lehetővé tette újabb fájlrendszer funkciók létrehozását a Windows NT fejlesztése során - egy érdekes példa az Active Directory által használt indexelő mezők hozzáadása. A fájlnevek Unicode (UCS-2) formátumban vannak tárolva.
Az NTFS B+-fákat használ a fájlrendszer adat tárolására. Bár bonyolult megvalósítani, rövidebb hozzáférési időt biztosít bizonyos esetekben. Egy fájlrendszer naplót használnak magának a fájlrendszer integritásának (de nem az egyes fájloknak) a biztosítására. Az NTFS-t használó rendszerek biztonságosabbak, ami egy kiemelten fontos követelmény a Windows NT-k korábbi verzióinak instabil mivolta miatt.
A megvalósítás részletei nem nyilvánosak, így külső gyártóknak nagyon nehéz NTFS-t kezelő eszközöket előállítani.
[szerkesztés] Együttműködés
A Microsoft elkészített egy eszközt, amellyel NTFS kötetté alakíthatók a FAT kötetek, azonban egyéb eszközt – amely segítené más rendszerekkel való együttműködést –, nem tett közzé.
Több kereskedelmi- és szabad szoftver is képes biztonságosan átméretezni NTFS köteteket. Az átméretezést a Microsoft lehetővé teszi a Windows Vistában.
A Linux kernel natív NTFS olvasási képességgel rendelkezik, de a dokumentáció hiánya, a fájlrendszer bonyolultsága, valamint a fejlesztők hiánya késlelteti a teljes írás támogatást. A Captive NTFS projekt hozzáférést biztosít az NTFS fájlrendszerhez, felületet biztosítva az operációs rendszer és az ntfs.sys között, ami szinte minden NTFS partíción létezik (és minden Windows NT telepítésen). Ez csak lassú írás/olvasási lehetőséget biztosít, és vannak adatvesztéssel járó esetek is. A Captive NTFS korlátozza az írható fájl méretet is az NTFS partíciókon.
Linux alatt FUSE segítségével az ntfs-3g egy újabb lehetőség a fájlrendszer elérésére.
A Mac OS X 10.3-as verzió felett képes olvasni NTFS köteteket.
[szerkesztés] Képességek
Az NTFS 5.0 a harmadik NTFS-verzió volt, amit a Microsoft közzétett. Több új lehetőséget tartalmazott: kvóta, sparse fájl-támogatás (ami lehetővé teszi, hogy egy nagy fájl üres részei ne foglaljanak helyet), elosztott link követés és titkosítás (Encrypting File System, EFS).
- Alternatív adatfolyam (ADS - alternative data stream)
- Az alternatív adatfolyamok (ADS) lehetővé teszik egy fájl csatolását több adatfolyamhoz. Például a szöveg.txt nevű fájl tartalmazhat egy ADS-t szöveg.txt:titok.txt néven (fájlnév:ads formátumban), amit csak az ADS név ismeretében vagy speciális fájlkezelő programokkal lehet elérni. Az alternatív adatfolyamok nem fedezhetőek fel a fájl méretének vizsgálatával, de elvesznek az eredeti fájl törlésével, illetve mikor a fájlt ADS-t nem támogató meghajtóra másolják (például egy FAT partícióra, floppy lemezre, hálózati megosztásra). Bár az ADS hasznos szolgáltatás, észrevétlenül csökkentheti a szabad területet.
- Kvóta
- A fájlrendszer kvótákat az NTFS 5-ben vezették be. Lehetővé teszik az adminisztrátorok számára, hogy korlátozzák az egyes felhasználók által lefoglalható tárterületet. Lehetővé teszi az adminisztrátor számára azt is, hogy lekérdezze az egyes felhasználók által lefoglalt terület méretét. Beállítható, hogy a felhasználó mikor kapjon figyelmeztetést, majd mikor tiltsa le a lemezfoglalást a rendszer. Az alkalmazások, melyek lekérik a szabad tárterületet, a kvótának megfelelő szabad területet fogják visszakapni.
- Encrypting File System (EFS)
- Erős, és a felhasználó számára átlátszó, fájl és könyvtár titkosítást biztosít az NTFS kötetetken. Az EFS együttműködik az EFS szolgáltatással, a Microsoft CryptoAPIjával és az EFS File System Run-Time Library-vel (FSRTL).
- Az EFS szimmetrikus kulccsal (File Encryption Key, FEK) titkosít, mivel azzal nagyobb teljesítmény érhető el, mint egy aszimmetrikus kulcsú megoldással. A szimmetrikus kulcsot egy, a titkosítást igénybe vevő felhasználó publikus kulcsával titkosítják, és ezt a titkosított adatot a titkosított fájl alternatív adatfolyamába mentik. A visszafejtéshez a felhasználó privát kulcsával visszafejtik a szimmetrikus kulcsot, majd a szimmetrikus kulccsal visszafejtik a titkosított fájlt. Mivel ez a folyamat rendszer szinten történik, a felhasználó számára láthatlan. Arra az esetre, ha a felhasználó elvesztené a privát kulcsát (pl. adatvesztés történt), helyreállító ügynökök visszafejthetik a fájlt.
- Ezért is függ a titkosítás erőssége a felhasználók által használt jelszavaktól, ami sebezhetővé teszi az eljárást helyi támadásokkal szemben.
- Fájltömörítés
- Az NTFS képes a fájlok tömörítésére az LZ77 algoritmus (melyet a ZIP fájl formátumban is használnak) használatával. Bár a tömörített fájlok írása és olvasása transzparens módon történik, a Microsoft ajánlása szerint a tömörítés használata kerülendő szerver rendszereken és profilokat tároló hálózati megosztásokon, mert jelentős processzor terhelést idéz elő.
- Kötet csatolási pont
- Hasonló a Unix csatolási pontokhoz, ahol egy másik fájlrendszer gyökerét csatolják egy könyvtárba. Az NTFS esetén ez lehetővé teszi fájlrendszerek csatolását külön meghajtó betűjel (pl. C:) használata nélkül.
- Könyvtár csatlakozások (junction)
- Hasonló a kötet csatolási ponthoz, de kötetek helyett könyvtárakra hivatkozik. Például ha a
C:\A
könyvtár aC:\B
könyvtárra hivatkozik, akkor megnyitása esetén aC:\B
könyvtár tartalmához fog hozzáférni. A könyvtár csomópont megegyezik a Unix szimbolikus hivatkozásaival, bár a Unix szimbolikus linekek fájlokra és könyvtárakra is alkalmazhatóak. - Hard link (kemény kötés)
- A hard link hasonlít a könyvtár csomópontokhoz, de fájlokra, és nem könyvtárakra érvényes. A hard link csak az azonos köteten elhelyezkedő fájlokon használható, mivel egy Master File Table] (MFT) rekord jelzi a hivatkozást.
[szerkesztés] Korlátozások
- Maximális fájlméret
- Elméleti határ: 16 EiB - 1 KiB (264 bájt - 1 KiB).
- Megvalósítás: 16 TiB - 64 KiB (244 bájt - 64 KiB).
- Maximális kötet méret
- Elméletben a maximális NTFS kötetméret 264 − 1 klaszter (foglalási egység). Ennek ellenére a maximális NTFS kötetméret a Windows XP Professional megvalósításának megfelelően 232 − 1 klaszter.
- Például 64 KiB-os klaszterméret használata esetén a maximális NTFS kötetméret 256 TiB - 64 KiB. Az alapértelmezett 4 KiB klaszterméretet használva a maximális kötetméret 16 TiB - 4 KiB. Mivel a partíciós táblák a master boot recordot (MBR) tároló lemezeken legfeljebb 2 TiB méretű partíciókat támogatnak, dinamikus köteteket kell használni 2 TiB fölötti kötetek létrehozására.
[szerkesztés] Külső hivatkozások
- NTFS.com – dokumentációk és egyéb anyagok az NTFS-hez kapcsolódva
- NTFS technikai referencia
- Captive-NTFS
- Linux-NTFS.org