Disques sous Linux
1. Rappels théoriques
1.1. Disques : commandes à retenir
cat /proc/partitions
ls /dev/sd* || ls /dev/vd*
blkid
lsblk
findmnt
df -h
du
man du
fdisk
gdisk
mkfs.*
cat /etc/fstab
cat /etc/mtab
mount
mount -a
mkswap
swapon
swapoff
partprobe
fsck.*
-
mkfs
,mkfs.*
dumpe2fs, xfsdump, xfsrestore
debugfs
tune2fs
-
xfs_info
,xfs_check
etxfs_repair
-
smartd
,smartctl
mdadm.conf
mdadm
/proc/mdstat
1.2. Concepts
- Partitions
- Systèmes de fichier EXT3, EXT4, BTRFS, XFS, NFS
- Structure du système de fichier
- Le système de fichier EXT4
- Le système de fichier XFS
- Le système de fichier NFS
- Le système de fichier CIFS
- LVM
- Opérations LVM
- RAID
- Swap
- Quotas
1.3. Partionnement
Un disque est composé d’une ou plusieurs partitions dont la table est contenue dans le MBR (Master Boot Record) ou dans le GUID Partition Table (GPT) :
Le MBR (Master Boot Record) définit des tables primaires, étendue, logiques.
On utilse fdisk
pour configurer le MBR et gdisk
pour configurer le GPT.
Les caractéristiques d’une partition sont :
- La taille en secteurs
- Un drapeau qui indique si elle est active
- Le type de partition
Une partition peut être utilisée pour héberger :
- un système de fichiers
- un espace Swap
- une application
1.4. Systèmes de fichiers
Les données sont normalement présentées à l’utilisateur et aux programmes selon une organisation structurée, sous la forme de répertoires et de fichiers. Pour pouvoir stocker ces données structurées sur un périphérique, il faut utiliser un format qui les représente sous la forme d’une succession de blocs de données : c’est ce qu’on appelle un système de fichiers. Un FS est concrètement une arborescence de fichiers stockée typiquement dans une partition ou un LV.
Est associé à chaque système de fichiers :
- un pilote du noyau
- des structures de données mémoire et disque
- des utilitaires qui permettent la création et la maintenance du FS, voire sa sauvegarde
Formater un FS, c’est formater une partition en écrivant sur disque les tables système (Superbloc, table d’inode, répertoire racine, …) associé à son type.
Un FS contient différentes tables système :
- Le super-bloc qui contient les données générales (taille, montage, …)
- La table des inodes qui contient la table de description et d’allocation des fichiers, chaque fichier étant représenté par un numéro d’inoeuds (inode).
- Un répertoire est une table de correspondance de fichiers/numéro d’inoeud.
Les fichiers hébergés par un FS ne sont accessibles que s’ils sont montés c’est-à-dire s’il est associé à un répertoire (répertoire de montage).
1.5. Types de FS
- Ext2
- Journalisés :
- ext3
- ext4
- reiserfs
- xfs
- btrfs
- Microsoft :
- msdos
- fat
- ntfs
- CD-Rom :
- iso9660
- Réseau :
- nfs
- cifs
- Cluster :
- GlusterFS
- Système :
- proc
- sys
- udev
- selinux
- cgroup
- cpuset
- Spéciaux :
- tmpfs
- unionfs (persistence live-usb)
- aufs
- cachefs
- cramfs
- squashfs
- fuse
- Loop
1.6. FS à journalisation
ext3 est une évolution de ext2 et a pour principale différence l’utilisation d’un fichier journal, lui permettant ainsi d’éviter la longue phase de récupération lors d’un arrêt brutal de la machine.
Bien que ses performances soient moins appréciées que celles de certains de ses compétiteurs, comme ReiserFS ou XFS, il a l’avantage majeur de pouvoir être utilisé à partir d’une partition ext2, sans avoir à sauvegarder et à restaurer des données (un système de fichiers ext3 peut être monté et utilisé comme un système de fichiers ext2). Tous les utilitaires de maintenance pour les systèmes de fichiers ext2, comme fsck, peuvent également être utilisés avec ext3.
Son avantage sur ReiserFS, lui aussi journalisé, est la possibilité de mettre en œuvre le logiciel dump, abondamment utilisé en entreprise pour les sauvegardes.
ext3 alloue les blocs libres juste à côté des autres blocs utilisés par le fichier, ce qui a pour effet de minimiser l’espace physique entre les blocs.
Beaucoup moins assujetti, il est néanmoins par définition fragmenté, c’est pourquoi son successeur ext4 inclut un utilitaire de défragmentation natif travaillant au niveau des bits et gérant la défragmentation à chaud.
ext4 garde une compatibilité avec son prédécesseur et est considéré par ses propres concepteurs comme une étape intermédiaire devant mener à un vrai système de fichiers de nouvelle génération tel que Btrfs. Toutefois, ext4 est une étape utile et non une simple solution temporaire.
1.7. Table de comparaison des FS
Inspiré de https://doc.ubuntu-fr.org/systeme_de_fichiers#comparaison_de_systemes_de_fichiers
Nom du système de fichiers | Taille maximale d’un fichier | Taille maximale d’une partition | Journalisée ou non ? | Gestion des droits d’accès? | Notes |
---|---|---|---|---|---|
ext2fs (Extended File System) | 2 TiB | 4 TiB | Non | Oui | Extended File System est le système de fichiers natif de Linux. En ses versions 1 et 2, on peut le considérer comme désuet, car il ne dispose pas de la journalisation. Ext2 peut tout de même s’avérer utile sur des disquettes 3½ et sur les autres périphériques dont l’espace de stockage est restreint, car aucun espace ne doit être réservé à un journal, par de l’embarqué en temps réel. |
ext3fs | 2 TiB | 4 TiB | Oui | Oui | ext3 est essentiellement ext2 avec la gestion de la journalisation. Il est possible de passer une partition formatée en ext2 vers le système de fichiers ext3 (et vice versa) sans formatage. |
ext4fs | 16 TiB | 1 EiB | Oui | Oui | ext4 est le successeur du système de fichiers ext3. Il est cependant considéré par ses propres concepteurs comme une solution intermédiaire en attendant le vrai système de nouvelle génération que sera Btrfs |
ReiserFS | 8 TiB | 16 TiB | Oui | Oui | Développé par Hans Reiser et la société Namesys, ReiserFS est reconnu particulièrement pour bien gérer les fichiers de moins de 4 ko. Un avantage du ReiserFS, par rapport à ext3, est qu’il ne nécessite pas une hiérarchisation aussi poussée: il s’avère intéressant pour le stockage de plusieurs fichiers temporaires provenant d’Internet. Par contre, ReiserFS n’est pas recommandé pour les ordinateurs portables, car le disque dur tourne en permanence, ce qui consomme beaucoup d’énergie. |
XFS | 8 EiB | 16 EiB | oui | oui | Performant et flexible. Attention, il n’est pas possible de réduire une partition xfs |
FAT (File Allocation Table) | 2 GiB | 2 GiB | Non | Non | Développé par Microsoft, ce système de fichiers se rencontre moins fréquemment aujourd’hui. Il reste néanmoins utilisé sur les disquettes 3½ formatées sous Windows et devrait être utilisé sous Linux si une disquette doit aussi être lue sous Windows. Il est aussi utilisé par plusieurs constructeurs comme système de fichiers pour cartes mémoires (memory sticks), car, bien documenté, ce système de fichiers reste le plus universellement utilisé et accessible. |
FAT32 | 4 GiB | 8 TiB | Non | Non | Ce système de fichiers, aussi créé par Microsoft, est une évolution de son prédécesseur. Depuis ses versions 2000 SP4 et XP, Windows ne peut pas formater (ou bloque volontairement le formatage) une partition en FAT32 d’une taille supérieure à 32 Go. Cette limitation ne s’applique pas sous Linux, de même qu’avec des versions antérieures de Windows. Une partition FAT32 d’une taille supérieure à 32 Go déjà formatée pourra être lue par Windows, peu importe sa version. |
NTFS (New Technology File System) | 16 TiB | 256 TiB | Oui | Oui | Ce système de fichiers a aussi été développé par Microsoft, et il reste très peu documenté. L’écriture depuis Linux sur ce système de fichiers est stable à l’aide du pilote ntfs-3g. Ce pilote est inclus de base dans Ubuntu, et disponible en paquets dans les dépôts pour les versions antérieures. |
exFAT | 16 TiB | 256 TiB | Oui | Oui | Ce système de fichiers a aussi été développé par Microsoft. L’écriture depuis Linux sur ce système de fichiers est stable à l’aide du pilote exfat-fuse. |
Légende des unités : EiB = Exbioctets (1024 pébioctets) :: PiB = Pébioctet (1024 tébioctet) :: TiB = Tébioctet (1024 gibioctets) :: GiB = Gibioctet (1024 mibioctets)
1.8. Auditer les disques
Lister les disques et les partitions
cat /proc/partitions
fdisk -l
Lister les FS disponibles :
cat /proc/filesystems
Points de montages :
lsblk
blkid
cat /proc/mounts
findmnt --fstab-
Points de montage automatiques :
cat /etc/fstab
cat /etc/mtab
df -Th
Commandes sur les fichiers
du -sh /
stat nomdefichier
1.8. Formatage Ext3/Ext4
La commande mk2fs
fait appel à des programmes de plus bas niveau comme mkfs.ext3
ou mkfs.ext4
Pour formater un périphérique en, on retiendra :
EXT2
mk2fs /dev/sdx1
en EXT3
mk2fs -j /dev/sdx1
ou
mkfs.ext3 /dev/sdx1
ou encore
mk2fs -t ext3 /dev/sdx1
en EXT4
mkfs.ext4 /dev/sdx1
On retiendra d’autres commandes espace-utilisateur du sytème de fichiers “EXT” comme par exemple :
-
tune2fs -l /dev/sdx1
qui affiche les paramètres d’un FS ext3 -
e2fsck /dev/sdx1
qui vérifie ou répare-y
un FS -
dumpe2fs /dev/sdx1
qui affiche des informations sur un FS -
e2label /dev/sdx1
qui affiche ou modifie l’étiquette d’un FS -
tune2fs -c mmc
qui modifie les paramètres d’un FS (vérification après un nombre maximal de montage -
resize2fs
redimensionne un FS debugfs
-
e2image
sauvegarde les métadonnées dans un fichier, lisible avecdebugfs -i
oudumpe2fs -i
-
e2freefrag
affiche la fragmentation de la place libre -
e2undo
rejoue le journal qui n’a pas été accompli -
tune2fs -j /dev/sdx1
convertit un FS ext2 en FS ext3 -
tune2fs -O extents,uninit_bg,dir_index /dev/sdx1
convertit un FS ext3 en FS ext4
1.9. Formatage XFS
En Debian8 :
apt-get install xfsprogs
xfs_admin
xfs_bmap
xfs_copy
xfs_db
xfs_estimate
xfs_freeze
xfs_fsr
xfs_growfs
xfs_info
xfs_io
xfs_logprint
xfs_metadump
xfs_mdrestore
xfs_mkfile
xfs_ncheck
xfs_quota
1.10. SWAP
La mémoire swap est un espace de stockage visant à pallier à un manque de mémoire vive du système. La mémoire swap sert à étendre la mémoire utilisable par un système d’exploitation par un fichier d’échange ou une partition dédiée.
-
mkswap
est la commande qui permet de créer un espace swap. -
swapon
permet d’activer une swap -
swapoff
permet de désactiver une swap
Les arguments possibles pour désigner l’espace de stockage swap :
- un fichier
- un périphérique type bloc, un disque, une partition
- un LABEL avec l’option
-L
- un UUID avec l’option
-U
La commande swapon -s
permet de voir la configuration des mémoire SWAP.
1.11. Montage manuel du système de fichier
La commande mount
permet de monter le FS d’un périphérique sous un répertoire local vide. C’est à partir de cet emplacement que le FS sera accessible.
La syntaxe de la commande mount
est la suivante :
mount -t type -o options /dev/sdx1 /repertoire_vide
Les options habituelles, parmi d’autres, peuvent être ro
, rw
, sync
(écriture synchrones sans passer par une mémoire cache) ou encore loop
pour monter un fichier plutôt q’un périphérique bloc.
La commande umount
démonte le périphérique désigné à condition qu’il ne soit plus utilisé.
1.12. Montage du système de fichier au démarrage
Au démarrage, les différents FS d’un système seront montés selon indications du fichier /etc/fstab
. Ce fichier contient six champs :
# <périphérique> <point de montage> <type> <options> <dump> <fsck>
/dev/sda1 / xfs defaults 0 1
/dev/sda2 /opt xfs defaults 0 0
Si les quatre premiers champs obligatoires sont assez évident, on notera les deux derniers champs optionnels :
- dump active la sauvegarde
- fsck réalise la vérification automatique du FS au démarrage. En EXT, la valeur est toujours 1 pour le répertoire racine
/
La commande mount -a
va lire le fichier /etc/fstab
et monter les FS indiqués.
Le fichier /etc/mtab
contient tous les FS que le noyau utilise.
1.13. Montage automatique du système de fichier
Le montage automatique (autofs) permet de définir des emplacements du système qui serviront de point de montage de manière opportune. Par exemple, lorsque l’emplacement /data/backup
sera accédé, un périphérique bloc /dev/sdx1
y sera monté.
Une table principale /etc/auto.master
contient les emplacements et la référence pour cet emplacement dans une table secondaire qui contient les directives d’automontage. Le démon autofs
vérifie en permanence l’accès à ces dossiers.
Ce mécanisme est utile notamment pour “automonter” des disques distants, des répertoire /home
itinérants, etc.
Eventuellement en Centos 7, il faudra l’installer via yum -y install autofs
et vérifier le démarrage du service via systemctl status autofs
Par exemple en Debian8 :
apt-get install autofs
Paramétrage de autofs (5.0.8-2+deb8u1) ...
Creating config file /etc/auto.master with new version
Creating config file /etc/auto.net with new version
Creating config file /etc/auto.misc with new version
Creating config file /etc/auto.smb with new version
Creating config file /etc/default/autofs with new version
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
Traitement des actions différées (« triggers ») pour systemd (215-17+deb8u6) ...
cat /etc/auto.{master,misc}
#
# Sample auto.master file
# This is an automounter map and it has the following format
# key [ -mount-options-separated-by-comma ] location
# For details of the format look at autofs(5).
#
#/misc /etc/auto.misc
#
# NOTE: mounts done from a hosts map will be mounted with the
# "nosuid" and "nodev" options unless the "suid" and "dev"
# options are explicitly given.
#
#/net -hosts
#
# Include /etc/auto.master.d/*.autofs
#
+dir:/etc/auto.master.d
#
# Include central master map if it can be found using
# nsswitch sources.
#
# Note that if there are entries for /net or /misc (as
# above) in the included master map any keys that are the
# same will not be seen as the first read key seen takes
# precedence.
#
+auto.master
#
# This is an automounter map and it has the following format
# key [ -mount-options-separated-by-comma ] location
# Details may be found in the autofs(5) manpage
cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
# the following entries are samples to pique your imagination
#linux -ro,soft,intr ftp.example.org:/pub/linux
#boot -fstype=ext2 :/dev/hda1
#floppy -fstype=auto :/dev/fd0
#floppy -fstype=ext2 :/dev/fd0
#e2floppy -fstype=ext2 :/dev/fd0
#jaz -fstype=ext2 :/dev/sdc1
#removable -fstype=ext2 :/dev/hdd
1.14. Créer un système de fichier loop
Création d’un fichier de 1Go
dd if=/dev/zero of=/root/fs_ext4.img bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1,1 GB) copied, 2,94363 s, 365 MB/s
Formatage en ext4
mkfs.ext4 /root/fs_ext4.img
mke2fs 1.42.9 (4-Feb-2014)
/root/fs_ext4.img is not a block special device.
Proceed anyway? (y,n) y
Discarding device blocks: done
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
Montage
mkdir /mnt/ext4
mount -t ext4 -o loop /root/fs_ext4.img /mnt/ext4
losetup -a
/dev/loop0: [fc00]:917833 (/root/fs_ext4.img)
Vérification
df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 981M 12K 981M 1% /dev
tmpfs tmpfs 199M 1,5M 197M 1% /run
/dev/dm-0 ext4 18G 3,8G 13G 23% /
none tmpfs 4,0K 0 4,0K 0% /sys/fs/cgroup
none tmpfs 5,0M 0 5,0M 0% /run/lock
none tmpfs 992M 152K 992M 1% /run/shm
none tmpfs 100M 68K 100M 1% /run/user
/dev/sda1 ext2 236M 40M 184M 18% /boot
/dev/loop0 ext4 976M 1,3M 908M 1% /mnt/ext4
# echo $(date) > /mnt/ext4/f1
# echo $(date) > /mnt/ext4/f2
# mkdir /mnt/ext4/dir
# ls /mnt/ext4
dir f1 f2 lost+found
Démontage et vérification du FS :
umount /root/fs_ext4.img
fsck /root/fs_ext4.img
fsck from util-linux 2.20.1
e2fsck 1.42.9 (4-Feb-2014)
/root/fs_ext4.img: clean, 14/65536 files, 12638/262144 blocks
Rendre le point de montage automatique au démarrage :
echo "/root/fs_ext4.img /mnt/ext4 ext4 rw 0 0" >> /etc/fstab
mount -a
df -Th
1.15. Quotas
Les quotas sur les disques se gèrent différemment d’un FS à l’autre.
Depuis que XFS est le FS par défaut on utilise les utilitaires XFS intégrés : https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Storage_Administration_Guide/xfsquota.html
- En FS EXT4, il faut les utilitaires disponibles :
yum -y install quota || apt-get install quota quotatool
- Il sera nécessaire aussi d’activer les options
usrquota
etgrpquota
dans/etc/fstab
:
- Il sera nécessaire aussi d’activer les options
# grep quota /etc/fstab
/root/fs_ext4.img /mnt/ext4 ext4 rw,usrquota,grpquota 0 0
- On crée (
-c
) la base de donnée de quota pour le FS de manière verbeuse (-v
) des utilisateurs (-u
) et groupes (-u
) :
- On crée (
# quotacheck -cugv /mnt/ext4
- Vérification :
# quotacheck -avug
Voici les limites proposées :
soft (souple) : avertira les utilisateurs d’un dépassemnt souple (en Ko).
hard : Empêchera l’usage supplémentaire du disque en cas de dépassemnt.
On peut aussi limiter le nombre d’inodes.
Enfin, on appelle la période de grâce le délai pendant lequel une limite souple peut être dépassée pour devenir une limite dure.
- Configurer un utilisateur
# edquota -u jack
- Configurer un groupe :
# edquota -u devel
- Vérifier les quotas :
# repquota -as
*** Rapport pour les quotas user sur le périphérique /dev/loop1
Période de sursis bloc : 7days ; période de sursis inode : 7days
Space limits File limits
Utilisateur utilisé souple stricte sursis utilisé souple stricte sursis
----------------------------------------------------------------------
root -- 20K 0K 0K 2 0 0
- Régler la période de sursis :
edquota -t
2. RAID
On se contentera de parler ici des technologies RAID0, RAID1 et RAID5. On peut se référer à la source pour les autres types de RAID notamment combinés (RAID01, RAID10, …) : https://fr.wikipedia.org/wiki/RAID_(informatique)
Le RAID est un ensemble de techniques de virtualisation du stockage permettant de répartir des données sur plusieurs disques durs afin d’améliorer soit les performances, soit la sécurité ou la tolérance aux pannes de l’ensemble du ou des systèmes.
L’acronyme RAID a été défini en 1987 par l’Université de Berkeley, dans un article nommé A Case for Redundant Arrays of Inexpensive Disks (RAID), soit « regroupement redondant de disques peu onéreux ». Aujourd’hui, le mot est devenu l’acronyme de Redundant Array of Independent Disks, ce qui signifie « regroupement redondant de disques indépendants ».
Le système RAID est :
- soit un système de redondance qui donne au stockage des données une certaine tolérance aux pannes matérielles (ex : RAID1).
- soit un système de répartition qui améliore ses performances (ex : RAID0).
- soit les deux à la fois, mais avec une moins bonne efficacité (ex : RAID5).
Le système RAID est donc capable de gérer d’une manière ou d’une autre la répartition et la cohérence de ces données. Ce système de contrôle peut être purement logiciel ou utiliser un matériel dédié.
2.1. RAID 0 : volume agrégé par bandes
Le RAID 0, également connu sous le nom d’« entrelacement de disques » ou de « volume agrégé par bandes » (striping en anglais), est une configuration RAID permettant d’augmenter significativement les performances de la grappe en faisant travailler n disques durs en parallèle (avec n > ou = 2).

La capacité totale est égale à celle du plus petit élément de la grappe multiplié par le nombre d’éléments présent dans la grappe, car le système d’agrégation par bandes se retrouvera bloqué une fois que le plus petit disque sera rempli (voir schéma). L’espace excédentaire des autres éléments de la grappe restera inutilisé. Il est donc conseillé d’utiliser des disques de même capacité.
Le défaut de cette solution est que la perte d’un seul disque entraîne la perte de toutes ses données.
Dans un RAID 0, qui n’apporte aucune redondance, tout l’espace disque disponible est utilisé (tant que tous les disques ont la même capacité).
Dans cette configuration, les données sont réparties par bandes (stripes en anglais) d’une taille fixe. Cette taille est appelée granularité.
2.2. RAID 1 : Disques en miroir
Le RAID 1 consiste en l’utilisation de n disques redondants (avec n > ou = 2), chaque disque de la grappe contenant à tout moment exactement les mêmes données, d’où l’utilisation du mot « miroir » (mirroring en anglais).

La capacité totale est égale à celle du plus petit élément de la grappe. L’espace excédentaire des autres éléments de la grappe restera inutilisé. Il est donc conseillé d’utiliser des éléments identiques.
Cette solution offre un excellent niveau de protection des données. Elle accepte une défaillance de n-1 éléments.
Les coûts de stockage sont élevés et directement proportionnels au nombre de miroirs utilisés alors que la capacité utile reste inchangée. Plus le nombre de miroirs est élevé, et plus la sécurité augmente, mais plus son coût devient prohibitif.
Les accès en lecture du système d’exploitation se font sur le disque le plus facilement accessible à ce moment-là. Les écritures sur la grappe se font de manière simultanée sur tous les disques, de façon à ce que n’importe quel disque soit interchangeable à tout moment.
Lors de la défaillance de l’un des disques, le contrôleur RAID désactive (de manière transparente pour l’accès aux données) le disque incriminé. Une fois le disque défectueux remplacé, le contrôleur RAID reconstitue, soit automatiquement, soit sur intervention manuelle, le miroir. Une fois la synchronisation effectuée, le RAID retrouve son niveau initial de redondance.
La migration du RAID1 vers RAID0, RAID5, RAID6 est presque toujours envisageable, ce qui fait du RAID1 une bonne solution de départ si on n’a pas un besoin de performance important.
2.3. RAID 5 : volume agrégé par bandes à parité répartie
Le RAID 5 combine la méthode du volume agrégé par bandes (striping) avec une parité répartie. Il s’agit là d’un ensemble à redondance N+1. La parité, qui est incluse avec chaque écriture se retrouve répartie circulairement sur les différents disques. Chaque bande est donc constituée de N blocs de données et d’un bloc de parité. Ainsi, en cas de défaillance de l’un des disques de la grappe, pour chaque bande il manquera soit un bloc de données soit le bloc de parité. Si c’est le bloc de parité, ce n’est pas grave, car aucune donnée ne manque. Si c’est un bloc de données, on peut calculer son contenu à partir des N-1 autres blocs de données et du bloc de parité. L’intégrité des données de chaque bande est préservée. Donc non seulement la grappe est toujours en état de fonctionner, mais il est de plus possible de reconstruire le disque une fois échangé à partir des données et des informations de parité contenues sur les autres disques.

On voit donc que le RAID 5 ne supporte la perte que d’un seul disque à la fois. Ce qui devient un problème depuis que les disques qui composent une grappe sont de plus en plus gros (1 To et plus). Le temps de reconstruction de la parité en cas de disque défaillant est allongé. Il est généralement de 2 h pour des disques de 300 Go contre une dizaine d’heures pour 1 To. Pour limiter le risque il est courant de dédier un disque dit de “spare”. En régime normal il est inutilisé. En cas de panne d’un disque, il prendra automatiquement la place du disque défaillant. Cela nécessite une phase communément appelée “recalcul de parité”. Elle consiste pour chaque bande à recréer sur le nouveau disque le bloc manquant (données ou parité).
Bien sûr pendant tout le temps du recalcul de la parité le disque est disponible normalement pour l’ordinateur qui se trouve juste un peu ralenti.
Ce système nécessite impérativement un minimum de trois disques durs. Ceux-ci doivent généralement être de même taille, mais un grand nombre de cartes RAID modernes autorisent des disques de tailles différentes.
La capacité de stockage utile réelle, pour un système de X disques de capacité c identiques est de (X-1) fois c. En cas d’utilisation de disques de capacités différentes, le système utilisera dans la formule précédente la capacité minimale.
Ainsi par exemple, trois disques de 100 Go en RAID 5 offrent 200 Go utiles ; dix disques, 900 Go utiles.
Ce système allie sécurité (grâce à la parité) et bonne disponibilité (grâce à la répartition de la parité), même en cas de défaillance d’un des périphériques de stockage.
Laisser un commentaire