Accueil🇫🇷Chercher

NTFS

NTFS (de l'anglais New Technology File System) est un système de fichiers développé par Microsoft Corporation pour sa famille de systèmes d'exploitation Windows NT, à partir de Windows NT 3.1, Windows 2000 et utilisé depuis par tous leurs successeurs (XP, Server 2003, 7, etc.).

NTFS
New Technology File System
DĂ©veloppeur Microsoft
Nom anglais New Technology File System
Introduction
(Windows NT 3.1)
Identificateur de partition 0x07 (MBR)[N 1]
Structure
Contenu des répertoires B+ tree
Allocation de fichiers B+ tree
Mauvais blocs B+ tree
Limitations
Taille maximale de fichier en pratique 16 Tio[1]
(en thĂ©orie 16 Eio).
Nombre maximal de fichiers 4 294 967 295 (2 32-1)
Taille maximale du nom de fichiers 255 caractères (UTF-16)
Taille maximale de volume en pratique 256 Tio[1] - [N 2]
(en thĂ©orie 16 Eio)[N 3]
Caractères autorisés dans les noms de fichiers Unicode (UTF-16), tout caractère à l'exception de "/"
Fonctionnalités
Dates enregistrées Création, modification, accès
Plage de dates 1er janvier 1 - 28 mai 9999999
Forks Oui (Alternate Data Streams, voir (en) Fork (filesystem))
Attributs Lecture seule, caché, système, archive
Permissions ACL
Compression intégrée Par fichier, LZ77 (à partir de Windows NT 3.51)
Chiffrement intégré Par fichier,
DES-X (Ă  partir de Windows 2000),
Triple DES (Ă  partir de Windows XP),
AES (Windows XP Service Pack 1, Windows 2003 et suivants)[2]

NTFS est le successeur du système de fichiers FAT comme système de fichiers de prédilection des systèmes d'exploitation Microsoft Windows antérieurs. NTFS dispose de nombreuses améliorations techniques par rapport à la FAT et au HPFS (High Performance File System), comme un support amélioré des métadonnées, et l'utilisation de structures de données avancées pour améliorer les performances, la fiabilité et l'utilisation de l'espace disque, ainsi que des extensions supplémentaires, telles que la liste de contrôle d'accès (ACL) et la journalisation du système de fichiers.

Histoire

Dans le milieu des années 1980 Microsoft et IBM ont formé un projet conjoint visant à créer la prochaine génération de système d'exploitation graphique. Il en résulta OS/2, mais Microsoft et IBM, en désaccord sur de nombreux points, se sont finalement séparés. OS/2 est resté un projet d'IBM. Microsoft a commencé à travailler sur Windows NT. Le système de fichiers de OS/2, HPFS, comportait de nombreuses nouvelles fonctionnalités importantes. Lors de la création de son nouveau système d'exploitation, Microsoft a emprunté beaucoup de ces concepts pour NTFS[2]. Probablement en raison de cette origine commune, NTFS et HPFS partagent le même code d'identification de type de partitionnement de disque (07). Partager un identifiant est inhabituel, car il y avait des dizaines de codes disponibles, et d'autres systèmes de fichiers importants ont leur propre code. FAT en a plus de neuf (un pour chacune des FAT12, FAT16, FAT32, etc.). Des algorithmes permettant d'identifier le système de fichiers dans un type de partition 07 doivent effectuer des contrôles supplémentaires. Il est également clair que NTFS doit une partie de sa conception architecturale à Files-11 utilisé par VMS. Cela est sûrement dû au fait que Dave Cutler fut le chef principal des Windows NT et VMS à la fois.

Versions

Le format sur disque de NTFS a cinq versions publiées :

  • v1.0 avec Windows NT 3.1, publiĂ©e mi-1993 ;
  • v1.1 avec Windows NT 3.5, publiĂ©e en automne 1994 ;
  • v1.2 avec Windows NT 3.51 (mi-1995) et Windows NT 4.0 (mi-1996) (parfois dĂ©nommĂ© « NTFS 4.0 » parce que la version du pilote du système de fichiers est la 4.0) ;
  • v3.0 Ă  partir de Windows 2000 (« NTFS v5.0 » ou « NTFS5 »)[3] ;
  • v3.1 Ă  partir de Windows XP (automne 2001 ; « NTFS v5.1 »).

NTFS sous GNU/linux

NTFS est peu documenté, à dessein selon certains, car, pour cette raison, et aussi du fait que l'on n'avait pas pu réaliser de rétroconception complète à son sujet, les pilotes GNU/Linux n'y donnaient accès qu'en lecture et partiellement en écriture jusqu'à l'arrivée du pilote libre NTFS-3G. Celui-ci n'est pas complet, mais permet des lectures/écritures sur du NTFS.

Historique des pilotes (pour permettre l'accès et l'écriture sur des partitions NTFS non compressées) :

  • Le premier pilote Linux est un module de noyau nommĂ© NTFS qui ne permet que la lecture et l'Ă©criture en mode remplacement seulement (considĂ©rĂ© comme stable depuis le noyau 2.6.15), mais ni la crĂ©ation, ni la suppression de fichiers. Ce pilote est dĂ©sormais bloquĂ© par dĂ©faut par la plupart des distributions Linux, ce pilote n'Ă©tant plus considĂ©rĂ© comme activement maintenu.
  • Le deuxième pilote est un pilote de type fuse nommĂ© Captive NTFS. Il est beaucoup plus lent, mais permet la lecture et l'Ă©criture de manière plus sĂ»re pour la partition. Il s'agit techniquement d'une encapsulation de la DLL Windows. Ce pilote est connu pour de gros bugs, comme des plantages sur l'Ă©criture de gros fichiers. Ce pilote est lui aussi dĂ©prĂ©ciĂ© Ă  la suite de l'arrivĂ©e de NTFS-3G.
  • La sociĂ©tĂ© Paragon offre des solutions commerciales de pilotes de noyau NTFS pour les systèmes *nix (Linux, MacOS), supportant notamment la journalisation.
  • La sociĂ©tĂ© Tuxera (en) offre aussi des solutions commerciales.
  • Le pilote libre NTFS-3G, en version stable 1.0 depuis le , permet une Ă©criture fiable et la crĂ©ation de fichiers sur les partitions NTFS. Toutefois, NTFS-3G n'est pas un pilote de noyau, il s'agit d'un pilote fuse. Ă€ ce titre, mĂŞme s'il a atteint un bon degrĂ© de fiabilitĂ© au point de devenir la solution par dĂ©faut dans les distributions, comme tout pilote fuse, il souffre de lenteurs, de certaines restrictions inhĂ©rentes au système fuse. Il permet de rejouer le journal NTFS, mais ne supporte pas de rĂ©elle journalisation qui est un des grands intĂ©rĂŞts de NTFS. Il n'offre donc pas encore toute la sĂ©curitĂ© et la vĂ©locitĂ© de certaines solutions commerciales.
  • La sociĂ©tĂ© Paragon a annoncĂ© vouloir dĂ©velopper des pilotes de noyau libre, compatible avec la licence GNU/Linux (Ă  ce titre distincte de son offre commerciale), en remplacement du vieux pilote de module susmentionnĂ©. Ces travaux ont Ă©tĂ© soumis aux Ă©quipes de dĂ©veloppement du noyau, Paragon s'engageant Ă  en effectuer le suivi et le dĂ©veloppement. Courant 2021, ce pilote a Ă©tĂ© officiellement intĂ©grĂ© dans le noyau Linux 5.15 sous le nom de module NTFS3 afin de le distinguer du prĂ©cĂ©dent[4]. Ce pilote supporte la lecture, l'Ă©criture, il est capable, comme NTFS-3G de rejouer le journal. En tant que pilote de noyau, Il est nettement plus rapide que fuse NTFS-3G, et implĂ©mente plus de fonctionnalitĂ©s. Ce pilote devrait rapidement Ă©clipser NTFS-3G dès lors que le noyau 5.15 se diffusera dans les distributions Linux les plus courantes. Ă€ ce jour, il ne supporte pas encore la pleine journalisation, mais selon la page de rĂ©fĂ©rence du noyau Linux, il semble qu'il soit prĂ©vu de dĂ©velopper une journalisation Ă  travers le "Journal Block Device" (JBD) (se rĂ©fĂ©rer Ă  la "todo list"). Lorsque cette journalisation sera implĂ©mentĂ©e, le système NTFS pourra ĂŞtre utilisĂ© sous des environnements Linux libres dans des contextes plus intensifs, avec un niveau de sĂ©curitĂ© très satisfaisant qui s'approchera d'un comportement natif sous Microsoft Windows.

Réparation spontanée

Les corruptions de données augmentant proportionnellement au volume des données, il devenait trop long et fréquent de lancer manuellement des réparations du système de fichier (chkdsk).

C'est pourquoi Microsoft a implémenté la réparation spontanée NTFS sur tous ses systèmes d'exploitation depuis Windows Server 2008[5].

Taille de bloc

La taille des blocs (cluster) d'un volume NTFS est définie lors du formatage (entre 512 octets et 64 kilooctets). Si l'utilisateur ne précise pas la taille de bloc demandée, la valeur par défaut est en fonction de la taille du volume[6] :

Taille du volumeTaille de bloc
7 Mo - 512 Mo512 octets
512 - 1024 Mo1 Ko
1024 Mo - 2 Go2 Ko
2 Go - 2 To4 Ko

Notes et références

Notes

  1. EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT)
  2. Limites s'appliquant Ă  Windows 2000 (SP4), XP (SP1+) et Windows Server 2003 (liĂ© aux implĂ©mentations de NTFS dans ses systèmes d'exploitation, sans ses Service Packs, la limite est encore moindre - puisqu'on se retrouve limitĂ© au modèle d'adressage « LBA28 bits » - soit 128 Gio). Ses limites sont liĂ©es au nombre maximum de clusters (232 - 1 pour la taille maximale de volume, et 228 - 1 pour la taille maximale de fichier), combinĂ©e avec la taille maximale d'un cluster, actuellement fixĂ©e Ă  64 Kio, c'est-Ă -dire un regroupement de maximum 128 (27) secteurs physiques de 512 bytes.
  3. Soit 264 clusters - 1, possibles d'après l'architecture théorique de NTFS.

Références

  1. (en) « How NTFS Works », sur TechNET de Microsoft (version du 8 juillet 2006 sur Internet Archive).
  2. (en)« Overview and history of NTFS », sur le site pcguide.com.
  3. « Inside Win2K NTFS, Part 1 », Microsoft, .
  4. « NTFS3 — The Linux Kernel documentation », sur www.kernel.org (consulté le )
  5. « Réparation spontanée NTFS », technet.microsoft.com.
  6. (en) How NTFS Works, sur le site microsoft.com, consulté le 21 aout 2015

Voir aussi

Articles connexes

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.