NTFS francais
description
Transcript of NTFS francais
Système de gestion de fichiers sous Windows (NTFS)
créé pour satisfaire des critères de- taille des volumes et fichiers- sécurité un enjeu : la performance
NTFS (New Technology File System)
Intro: Voyant les limitations de ses systèmes de fichiers,
Microsoft a créé le NTFS. En théorie, le NTFS utilise 64 bits pour adresser les
clusters. Toutefois, 32bits seulement sont utilisés sous Windows XP.
Le NTFS a plusieurs caractéristiques non supportées par le FAT: l’impact des erreurs disque est minimal, le système de fichier contient de l’information pour la sécurité des fichiers, les noms sont en Unicode(le standard de codage de caractères), etc.
Ce système permet ainsi l’utilisation de noms longs, mais, contrairement au système FAT32, il est sensible à la casse, c’est-à-dire qu’il est capable de différencier des noms en majuscules de noms en minuscules.
NB:NTFS (NTFS) utilisé uniquement sur Windows NT, W2000, XP, 7,8.
Pour ce qui est des performances, l’accès aux fichiers sur une partition NTFS est plus rapide que sur une partition de type FAT car il utilise une technique plus performants pour localiser les fichiers (un arbre binaire).
La limite théorique de la taille d’une partition est de 16 exaoctets (17 milliards de To), mais la limite physique d’un disque est de 2To.
Rq : NTFS v.5 devrait aussi apporter la possibilité d’administration à distance...
Le NTFS fonctionne par Volume. Un volume est une fraction d’un disque dur
de taille déterminée par l’usager (Un disque dur peut être un unique volume). Chaque volume du NTFS est décrit par des fichiers
invisibles à l’usager contenus à l’intérieur du volume. Ces fichiers, des
métafichiers, décrivent la structure et le contenu du volume. Voici quelques
exemples de métafichiers: – Le fichier $BADCLUS décrit les clusters défectueux sur le disque – Le fichier $BITMAP décrit les clusters libres du disque. – Le fichier $LOGFILE décrit toutes les transactions effectuées sur le disque (permet de récupérer d’une faute de disque) – …
en NTFS tout est fichier . . . - métadonnées du système - métadonnées des fichiers/répertoires - fichiers/répertoires exemples : - fichier $MFT -> localisation détaillée
de tous les fichiers - fichier $Boot -> tailles, localisation de
la MFT,
Boot & mtf
Le MFT (Master File Table) :
Le MFT est le métafichier principal du NTFS. Ce métafichier contient l’information sur l’ensemble du disque dur.
Les données sont stockées sous forme d’enregistrements (records) dans la MFT. Un fichier, par exemple, est représenté par un ou plusieurs enregistrements.
la $MFT est un fichier d’enregistrements :
entrée >= enregistrement - création d’un fichier => ajout d’entrée - suppression d’un fichier => marquage
(uniquement) -> la $Mft : ne fait que grandir
la MFT et sa zone réservée zone réservée et MFT - but : maintenir la $MFT, qui ne fait
qu’augmenter de taille, non fragmentée - taille zone par défaut : 12,5% de la partition - le fichier $MFT grandit dans sa zone au
début, puis au delà (il se fragmente) -> une MFT fragmentée ralentit le système
la taille de la zone peut être configurée avant le formatage
NtfsMftZoneReservation : valeurs de 1 à 4 permet de lui
réserver : 1 -> 1/8 = 12,5% de l’espace (valeur par défaut) 2 -> 2/8 = 25% de l’espace 3 -> 3/8 = 37,5% de l’espace 4 -> 4/8 = 50% de l’espace
la valeur 4 (50%) protège mieux la MFT de la fragmentation à
long terme plus de place pour de nouveaux fichiers ? - si possible la zoneMFT est réduite de
(50%) - l’action est répétée si nécessaire, elle est
irréversible Les outils de défragmentation intégrés ne défragmentent pas la MFT
zone MFT : quelle taille choisir au moment du formatage ?
plutôt des petits fichiers -> grande zone MFT (moins
d’espace pour les blocs) plutôt des grands fichiers -> petite
zone MFT (plus d’espace pour les blocs)
Les 16 premiers d’enregistrements de la MFT contiennent des informations sur le volume. Il s’agit de métadonnées qui décrivent la structure du système de fichier.
Le premier enregistrement de la MFT contient les attributs décrivant la table elle-même. Le deuxième enregistrement de la MFT est un pointeur sur une copie de la MFT en mémoire afin de prévenir la corruption de données.
La taille de la MFT peut augmenter. Par exemple, lors de l’ajout d’un fichier sur le disque, au moins un d’enregistrement de plus est requis. Pour que la MFT soit rapide d’accès, il faut que ses enregistrements soient le plus contigus possible dans la mémoire. Aussi, de l’espace est réservée à l’initialisation de la MFT pour son agrandissement .
MFT et "File Record"
La MFT regroupe un ensemble de fichiers
(les metadata files mais aussi les fichiers utilisateurs, répertoires…). On appelle File Record
Ce File Record est vu comme un enregistrement dans la table MFT.
Un File Record contient un certain nombre d'information (dates, taille, nom, droits, données…). Ces informations appelées attributs existent sous deux formes principales: les Attributs résidents et les non-résidents.
Attribut $Data d'un File Record: Voilà comment sont stockées les
données: à l'intérieur de l'attribut Data du FileRecord.
Il s'agit ici de références VCN et LCN (définies précédemment).
I. Système de gestion de fichiers
Un système de gestion de fichiers (SGF) est une façon de stocker les informations et de les organiser dans des fichiers sur ce que l'on appelle des mémoires secondaires (disque dur, CDROM, clé USB, SSD, disquette, etc.). La gestion des fichiers permet de traiter, de conserver des données ainsi que de les partager entre plusieurs programmes informatiques.
Le SGF Assure la correspondance entre l'organisation logique et l'organisation physique des fichiers
L’organisation logique est la représentation des informations pour l'utilisateur sous un format normalisé (c'est-à-dire des répertoires racine et des sous-répertoires).
L’organisation physique est l’implantation physique des fichiers sur les mémoires secondaires , c’est la méthode d’allocation du support de masse.
4-La Sécurité et le contrôle des fichiers le SGF permet le partage des fichiers par différents programmes d’applications tout en assurant la sécurité et la confidentialité des données. Aussi le SGF se doit aussi de garantir la conservation des fichiers en cas de panne.
-Un cluster (ou unité d’allocation » ou bloc) est la plus petite unité de disque que le système d’exploitation est capable de gérer.
-Un fichier occupe un nombre entier de cluster.
Le concept de fichier :
un fichier est une collection d'informations numériques réunies sous un même nom, enregistrée sur un support de stockage tel qu'un disque dur, un CD-ROM, ou une bande magnétique, et manipulées comme une unité.
Le nom du fichier sert à décrire le contenu. Ce nom comporte souvent un suffixe. Chaque fichier comporte un certain nombre de métadonnées (des informations) concernant la longueur du fichier, son auteur, les personnes autorisées à le manipuler, ainsi que la date de la dernière modification.
L'essence du fichier est les informations qu'il contient. Le format de fichier est la convention selon laquelle les informations ainsi que les métadonnées sont numérisées et emballées dans le fichier. Le format du fichier est propriétaire lorsque la convention n'est connue que de son auteur et n'a jamais été publiée. Selon la nature et le format du contenu, les fichiers peuvent être qualifiés d'exécutables, de compressés, de textes, de documents, d'images, d'audio ou de vidéos. Avant l'arrivée des ordinateurs, les fichiers sont des piles de fiches réunies dans des classeurs. L'utilisation des ordinateurs et du stockage magnétique a facilité et accéléré la manipulation de grands fichiers tels que ceux utilisés dans le commerce et l'administration publique. La manipulation des fichiers est un des services classiques offerts par les systèmes d'exploitation.
Structure disque :
Ici, la plus petite unité d’allocation disque se nomme Cluster. Un Cluster est formé de 4 secteurs. En voici une illustration : « schéma »
Un petit fichier, aussi petit soit- il, occupe tout un cluster. Un fichier peut occuper plusieurs clusters, mais le dernier cluster ne sera pas rempli.
=> il y a un gaspillage de l’espace disque.
secteurs & clusters d'un disque dur.
Résumé : - Le formatage de bas niveau a pour but
de préparer la surface du disque à accueillir des données. Il ne dépend donc pas du système d'exploitation et permet grâce à des tests effectués par le constructeur de marquer les secteurs défectueux.
Formatage logique : Le formatage logique d’un disque
permet de créer un système de gestion de fichiers sur le disque, qui va permettre à un système d'exploitation (DOS, Windows, UNIX, ...) d'utiliser l'espace disque pour stocker et utiliser des fichiers.
Pour s’adresser au disque, NTFS utilise deux terminologies :
LCN (Logical Cluster Numbers) : représente le numéro de cluster depuis le début du volume (c’est à dire de la partition NTFS en question) jusqu’à la fin.
VCN (Virtual Cluster Numbers) : Offset fichier en cluster (taille fichier de 0 à m).
structure
NTFS - structure Dans une partition NTFS on distingue 4(+1 ?) zones : 1. le $Boot, position fixe 2. une zone "réservée" : buffer MFT, pour maintenir le fichier $MFT non fragmenté 3. les espaces fichiers et répertoires : pour les
données hors MFT 4. le fichier $MFTMirr (début MFT) 5. la copie du secteur 0 (selon sourceforge)
sauvegardée à la fin de la partition (non décrit comme fichier)
la zone fichiers utilisateur et système contient les données de fichiers
volumineux à différence des petits fichiers
contenus dans la MFT !
NTFS - MFT
structure des entrées MFT L’entrée de la MFT pour un fichier contient un ensemble d’attributs : - les métadonnées du fichier (sous forme
d’attributs) - les données : attribut $DATA (petits fichiers ) - la localisation sur le disque (LCN’s : attribut
$DATA non résident - grands fichiers ) et les répertoires ? En NTFS ils renseignent
l’entrée MFT des fichiers
NTFS - MFT - une entrée MFT a une longueur variable (nombre d’attributs, taille de chaque attribut, . . .) - inspirée des bases de données relatonnelles - longueur variable -> un entête précise la taille - entrées de taille variable et enregistrements
de taille fixe entête de l’enregistrement attr1 attr2 attr3 attr4
espace inutilisé enregistrement de la MFT
un attribut peut être résident ou non : description entièrement contenue dans
l’enregistrement MFT ou non
Sécurité NTFS
Règles d'évaluation des droits effectifs : 1- Les autorisations NTFS peuvent être
cumulées : celles de l'utilisateur + celles des groupes
2- Les autorisations de fichiers sont prioritaires sur les autorisations de dossiers
3- Les autorisations "Refusées" sont prioritaires sur les autorisations accordées
4- Héritage : par défaut les autorisations d'un dossier sont héritées pour les fichiers et sous-dossiers.
Copies et déplacement : 1- Copie ou déplacement vers une autre
partition NTFS : héritage des autorisations du nouvel emplacement
2- déplacement dans la même partition NTFS : conservation des droits du fichier ou dossier déplacé
3- Copie ou déplacement vers une partition non NTFS : suppression des autorisations NTFS
Les utilisateurs NTFS peuvent apartenir à plusieurs
groupes une ambigüité à lever : Un Utilisateur u1 est membre des groupes g1
et g2 u1 est autorisé à Lire X g1 est autorisé à Lire X g2 est interdit de lecture de X : Quel droits a finalement l’utilisateur u1 sur X ?
NTFS - fichier Secure
fichier des descripteurs de sécuritéles ACL sont stockées dans le fichier système
$Secure contient tous les descripteurs de sécurité
connus par le système (liste de combinaisons domaine-
permissions) ce fichier ne fait que augmenter au fur et à
mesure qu’on introduit des nouvelles configurations de
droits !
pour accélérer l’accès aux descripteurs de sécurité :
deux approches : - accès direct par hashing sur base du descripteur
de sécurité (existe-t-il déjà ?) (création, modification
de droits) - accès indexé par la valeur du "Security Id" (Standard_information ) (vérification des droits lors du open)
le système devra mettre à disposition des appels système
qui permettent de modifier les descripteurs de sécurité
les autorisations de sécurité interviennent à chaque
ouverture de fichier : => un des rôles de l’appel système
open : vérifier les droits du processus appelant
Les ACLs (Access Control List) Le système NTFS enregistre un ACL pour chaque
fichier ou dossier d’un volume NTFS.L’ACL contient une liste des comptes utilisateurs et des groupes avec l’autorisation d’accès pour le fichier ou le dossier. Lorsqu’un utilisateur tente d’accéder à une ressource, l’ACL doit contenir une entrée (un ACE4) pour le compte d’utilisateur ou le groupe dans lequel l’utilisateur fait parti. L’entrée en question doit contenir le type d’accès demandé pour
autoriser la requête. S’il n’existe pas d’ACE spécifique pour l’utilisateur en question, l’accès est refusé.
comparativement unix utilise par défaut un système d’ACL
plus simple : ACL’s de taille fixe - droits pour 3
domaines : user, group,others
Les refus d’accès supplantent les autorisations d’accès.
Au final, il faut retenir les 3 règles suivantes :
· Les permissions NTFS sont cumulatives · Les permissions sur les fichiers sont
prioritaires sur les permissions sur les dossiers
· Un refus d’accès est prioritaire sur une autorisation d’accès
Copier et Déplacer des dossiers/fichiers
Lorsque l’on copie ou déplace des fichiers ou des dossiers, les permissions en place sur ces données peuvent changer.
Copie de données
Copie de données Lorsque l’on copie des données entre des
dossiers ou des volumes : · Windows considère qu’il s’agit de
nouveaux fichiers, les droits reprennent donc ceux
du répertoire de destination. · Vous devez avoir des droits d’écriture dans
le dossier destination · Vous devenez le « Creator Owner »
Déplacement de données
Lorsque l’on déplace des données au sein du même volume NTFS :
· Les données conservent les droits originaux
· Vous devez avoir le droit en écriture dans le dossier destination · Vous devez avoir les droits de modification sur les données sources. · Vous devenez le « Creator Owner »
fiabilité
deux aspects : - journal des transactions - rémappage de clusters défectueux
remappage de clusters - à l’écriture, un nouveau cluster est
attribué au fichier (pas de perte de données) - à la lecture d’un cluster défectueux une
erreur est retournée, les données sont perdues les clusters défectueux sont chaînés
dans BadClus