Page préc.
Noyau Linux et Système de Gestion des Fichiers (SGF) |
Fin de page |
Page suiv.
Systèmes de fichiers |
Le nombre de partitions d'un système à base d'Intel fut dès le départ limité à quatre, la table des partitions étant installée dans le secteur de boot (voir plus loin). Ces partitions sont maintenant appelées partitions primaires. Ce nombre devenant rapidement insuffisant, des partitions logiques ont été inventées. Leur organisation en liste chaînée rend leur nombre potentiellement illimité. Cependant, si des partitions logiques sont utilisées, elles sont contiguës au sein d'une seule et même partition primaire, appelée partition étendue (extended partition). Il ne peut y avoir qu'une seule partition étendue.
Linux ne peut gérer qu'un nombre limité de partitions par disque dur : quatre partitions primaires (dont trois sont utilisables si des partitions logiques sont utilisées), et au plus 15 partitions sur un disque dur SCSI ou 64 au total sur un disque IDE.
Linux représente les partitions comme des fichiers périphériques (device files) "bloc" qui utilisent des tampons cache (buffer cache) et sont marqués de la lettre "b" : voir au paragraphe VII.
La figure suivante présente un extrait du résultat de la commande ls –l /dev :
brw-rw---- 1 root disk
3, 0 May 5 1998 hda
brw-rw---- 1 root disk 3, 1 May 5 1998 hda1 brw-rw---- 1 root disk 3, 2 May 5 1998 hda2 brw-rw---- 1 root disk 3, 3 May 5 1998 hda3 brw-rw---- 1 root disk 3, 64 May 5 1998 hdb brw-rw---- 1 root disk 3, 65 May 5 1998 hdb1 brw-rw---- 1 root disk
8, 0 May 5 1998 sda
brw-rw---- 1 root disk
8, 16 May 5 1998 sdb
|
Conventionnellement, les disques durs IDE et SCSI sont nommés respectivement /dev/hd* (h commehard) et /dev/sd* (s comme SCSI) . Les disques sont numérotés a, b, c, etc. Les partitions primaires sur un disque sont numérotées 1, 2, 3 et 4. Les partitions logiques commencent au numéro 5. Il faut noter que les fichiers périphériques pour les disques durs, /dev/hda par exemple, ouvrent l'accès à la totalité du disque, sans tenir compte des partitions (dangereux !), ce qui permet essentiellement d'accéder au master boot record.
A chaque partition sur un disque sont assignés un bloc de début, un bloc de fin et un type qui est un code numérique sur un seul octet et devrait en principe être unique (ce n'est pas le cas mais il y a peu de risques de conflits car cela concerne des systèmes obsolètes) :
Code | Système | Type |
0x01 – 0x02 – 0x04 | DOS | différentes versions de FAT |
0x07 | OS/2 | |
0x07 | Windows NT | NTFS |
0x81 | Minix[1] | |
0x05 | Linux | partition étendue (qui contient les partitions logiques) |
0x82 | Linux | Linux partition de swap |
0x84 | Linux | système natif (en principe ext2) |
Une liste complète des types de partitions et de leur code reconnu par Linux peut être obtenue par la commande fdisk(8).
Les partitions d'un disque dur sont effectuées au moyen d'un logiciel spécialisé, le plus connu et le plus ancien étant fdisk. Bien que portant le même nom dans la plupart des systèmes d'exploitations, ses capacités sont très différentes (voir aussi Disk Druid sous Linux).
[1] Minix est un S.E. qui a été développé initialement à des fins pédagogiques par Tannenbaum en 1987. C'est à partir de ce système que Linus Thorvalds a développé les premiers noyaux de Linux.
Page préc.
Noyau Linux et Système de Gestion des Fichiers (SGF) |
Début de page |
Page suiv.
Systèmes de fichiers |