Gestion des disques sous Linux
Mise à jour :
Sous Linux, la gestion des disques est une compétence essentielle pour tout administrateur système. Elle englobe l’identification des périphériques, le partitionnement, le montage, ainsi que l’utilisation d’outils puissants comme LVM. Grâce à des commandes simples et des utilitaires graphiques, il est possible d’optimiser l’espace de stockage, sécuriser les données et surveiller l’état des disques pour prévenir les pannes. Ce guide vous accompagne étape par étape pour maîtriser toutes les facettes de la gestion des disques sous Linux.
Comment gérer les disques sous Linux ?
Sous Linux, la gestion des disques repose sur une architecture spécifique et très cohérente. Tous les périphériques de stockage, qu’ils soient internes, externes ou virtuels, sont représentés dans le système de fichiers sous forme de périphériques de bloc. Comprendre cette structure est la première étape pour un administrateur système débutant.
Les différents types de disques et leurs noms de devices
Chaque disque branché sur un système Linux est représenté par un fichier spécial
dans le dossier /dev
. Selon le type de périphérique, la convention de nommage
change :
1. Disques durs classiques (HDD) et SSD SATA
Les disques connectés via une interface SATA utilisent une notation simple :
- Disque :
/dev/sdX
(oùX
est une lettre croissante) - Partition :
/dev/sdX1
,/dev/sdX2
, etc.
Exemples :
/dev/sda
: premier disque SATA détecté/dev/sdb1
: première partition du second disque
Pour lister les disques présents sur le système, on utilise la commande lsblk
.
2. Disques SSD NVMe
Les disques NVMe (rapides et modernes, connectés sur PCIe) sont nommés ainsi :
- Disque :
/dev/nvmeXnY
- Partition :
/dev/nvmeXnYp1
,/dev/nvmeXnYp2
Exemples :
/dev/nvme0n1
: premier disque NVMe/dev/nvme0n1p1
: première partition
Particularité : un p
est inséré avant le numéro de partition pour éviter toute
confusion.
3. Clés USB et disques durs externes
Les périphériques USB suivent la même logique que les disques SATA :
- Disque :
/dev/sdX
- Partition :
/dev/sdX1
Exemple :
/dev/sdc1
: première partition d’une clé USB branchée
Pour vérifier quel disque est nouvellement branché :
dmesg | grep -i usb
4. Disques virtuels et périphériques spéciaux
En virtualisation ou avec certaines technologies Linux, d’autres types apparaissent :
- loop devices (
/dev/loopX
) : fichiers montés comme disques (images ISO, snapshots). - RAM disks (
/dev/ramX
) : disques temporaires créés en mémoire. - md devices (
/dev/mdX
) : ensembles RAID créés parmdadm
. - dm devices (
/dev/mapper/...
) : volumes gérés par LVM ou disques chiffrés.
Exemples :
/dev/loop0
: fichier monté/dev/ram1
: second disque RAM/dev/md0
: premier volume RAID logiciel/dev/mapper/crypt-home
: volume chiffré de/home
Résumé des types de devices
Type de disque | Exemple de nom sous /dev | Description rapide |
---|---|---|
HDD/SSD SATA | /dev/sda , /dev/sdb1 | Disques classiques, partitions simples |
SSD NVMe | /dev/nvme0n1p1 | Disques PCIe très rapides |
Clé/disque USB | /dev/sdc1 | Supports de stockage amovibles |
Image disque (loop ) | /dev/loop0 | Fichiers montés comme disques |
RAID logiciel (md ) | /dev/md0 | Ensemble RAID logiciel |
LVM/Chiffrement (dm ) | /dev/mapper/vg0-home | Volumes logiques ou disques chiffrés |
Systèmes de fichiers : organiser les données
Un système de fichiers est une méthode pour stocker et organiser les fichiers sur un disque. Linux prend en charge plusieurs systèmes de fichiers, adaptés à divers usages :
- EXT4 : standard pour les systèmes Linux modernes.
- XFS : efficace pour les systèmes manipulant de très gros fichiers.
- Btrfs : pour la gestion avancée, snapshots et compression.
- FAT32/NTFS : utilisés pour l’échange avec Windows.
Pour formater une partition en EXT4 par exemple :
mkfs.ext4 /dev/sda1
Chaque type de système de fichiers a ses outils de maintenance et de réparation spécifiques, que nous verrons plus loin.
Le partitionnement sous Linux
Le partitionnement est une étape essentielle dans la gestion des disques sous Linux. Avant de pouvoir utiliser un disque pour stocker des fichiers, il faut d’abord l’organiser en partitions. Une partition est une section du disque, définie pour accueillir un système de fichiers spécifique ou servir à une fonction précise. Attention, le partitionement n’est pas obligatoire, car on peut utiliser un disque entier comme une seule partition, mais cela n’est pas recommandé pour des raisons de sécurité et de performance.
Pourquoi partitionner un disque ?
Le partitionnement répond à plusieurs objectifs :
- Isoler les données : séparer les fichiers système de l’espace utilisateur
(
/home
) pour éviter qu’un plantage n’affecte tout le système. - Optimiser la gestion : affecter des espaces dédiés à certaines fonctions,
comme
/var
pour les logs, ou/tmp
pour les fichiers temporaires. - Faciliter les sauvegardes et restaurations : restaurer une partition système sans toucher aux données utilisateur.
- Améliorer la sécurité : appliquer des règles spécifiques selon les
partitions (par exemple, interdire l’exécution de fichiers dans
/tmp
). - Supporter plusieurs systèmes d’exploitation : avoir plusieurs partitions permet d’installer Linux aux côtés de Windows (dual boot).
Structure d’un disque partitionné sous Linux
Un disque partitionné de manière classique peut ressembler à ceci :
- Une partition pour le boot (
/boot
) : elle contient les fichiers de démarrage essentiels. - Une partition pour la racine (
/
) : c’est le système de fichiers principal de Linux. - Une partition pour les données utilisateurs (
/home
) : stocke les documents, images, musiques. - Une partition swap : utilisée comme mémoire virtuelle supplémentaire.
Chaque partition peut être montée à un point précis de l’arborescence du système, donnant une grande souplesse à l’organisation.
Pour des serveurs ou des systèmes plus complexes, on peut ajouter d’autres partitions :
/var
: pour les fichiers variables (logs, caches)./tmp
: pour les fichiers temporaires./data
: pour les données de services (web, FTP)./opt
: pour les applications tierces.
Pourquoi partitionner ainsi ? Cela permet de :
- Séparer les données critiques : par exemple,
/var
peut être sur un disque différent pour éviter que des logs trop volumineux n’impactent le système. - Faciliter les sauvegardes : on peut sauvegarder
/home
sans toucher au reste du système. - Améliorer la sécurité : appliquer des permissions spécifiques sur chaque
Table de partitions : MBR vs GPT
Pour enregistrer la disposition des partitions sur le disque, Linux utilise une table de partitions. Il en existe deux principales :
-
MBR (Master Boot Record) :
- Ancien standard, limité à 4 partitions principales par disque.
- Taille maximale d’un disque : 2 To.
- Compatible avec presque tous les anciens systèmes.
-
GPT (GUID Partition Table) :
- Successeur du MBR, indispensable pour les disques récents.
- Supporte un nombre pratiquement illimité de partitions.
- Compatible avec les systèmes UEFI (remplaçant du BIOS traditionnel).
- Gère des disques de très grande capacité (au-delà de 2 To).
Sur un disque neuf, il faut choisir entre MBR ou GPT avant de créer les partitions.
Types de partitions
Quand vous partitionnez un disque, vous créez différents types de partitions selon votre besoin :
-
Partition principale :
- Contient un système de fichiers ou un système d’exploitation.
- Limitée à 4 sous MBR.
-
Partition étendue (MBR uniquement) :
- Sert de conteneur pour créer plusieurs partitions logiques à l’intérieur.
-
Partition logique :
- Crée à l’intérieur d’une partition étendue.
- Permet de contourner la limite des 4 partitions principales sous MBR.
-
Partitions EFI (pour UEFI) :
- Utilisée pour stocker les fichiers de démarrage quand le système fonctionne en mode UEFI.
- Typiquement montée sur
/boot/efi
.
Partitionnement manuel vs automatique
Lors de l’installation d’une distribution Linux, deux choix sont souvent proposés :
-
Partitionnement automatique :
- Le système choisit la taille et l’affectation des partitions.
- Convient aux débutants ou aux installations rapides.
-
Partitionnement manuel :
- L’utilisateur définit chaque partition, son point de montage, sa taille, et son système de fichiers.
- Recommandé pour ceux qui souhaitent un contrôle précis sur l’organisation de leur disque.
En résumé, le partitionnement est l’acte de découper un disque en zones de stockage indépendantes, chacune adaptée à un rôle particulier dans le système Linux. Cette étape, bien que simple dans son principe, a un impact profond sur la stabilité, la sécurité et la performance d’un système.
Points de montage : où apparaissent les disques
Sous Linux, un disque n’est accessible qu’après avoir été monté dans l’arborescence. Un point de montage est simplement un dossier où l’on accède au contenu du disque.
Exemples de points de montage :
/mnt/data
: dossier dédié à un disque supplémentaire/home
: répertoire utilisateur monté sur une partition séparée/media/usb
: point de montage automatique des clés USB
Pour monter et démonter un disque, on utilise la commande mount
et unmount
.
Résumé du cheminement standard
Voici un résumé du cheminement standard pour gérer des disques sous Linux :
- Identifier le disque : utiliser
lsblk
oufdisk -l
pour lister les disques et leurs partitions. - Partitionner le disque : utiliser
fdisk
ouparted
pour créer des partitions. - Formater les partitions : utiliser
mkfs
pour créer un système de fichiers sur chaque partition. - Monter les partitions : utiliser
mount
pour rendre les partitions accessibles. - Configurer le fstab : ajouter les partitions au fichier
/etc/fstab
pour un montage automatique au démarrage. - Vérifier l’état des disques : utiliser
smartctl
pour surveiller la santé des disques. - Gérer le stockage : utiliser des outils comme
df
,du
pour gérer l’espace disque et optimiser le stockage. - Analyser les performances : utiliser
iostat
ouiotop
pour surveiller l’activité des disques.
Ce socle de connaissances permet à tous de comprendre comment Linux gère physiquement et logiquement les disques. À partir de cette base, il devient beaucoup plus facile d’aborder les tâches pratiques : partitionnement, formatage, montage et optimisation du stockage.
Identifier les disques
Pour manipuler correctement les disques sous Linux, il est essentiel de savoir où et comment les repérer. Le système offre plusieurs méthodes d’identification, de la plus basique à la plus détaillée. Voici comment procéder efficacement, en partant de l’exploration du système brut jusqu’aux outils d’analyse approfondie.
Lire les informations brutes : /proc/partitions
Le fichier /proc/partitions
contient une vue directe des disques et partitions
reconnus par le noyau Linux. Ce fichier est généré dynamiquement à chaque
démarrage.
Pour afficher son contenu :
cat /proc/partitions
major minor #blocks name 8 0 488386584 sda 8 1 524288 sda1 8 2 10240000 sda2 8 3 477038592 sda3
Explication rapide :
- major/minor : identifiants internes du périphérique
- #blocks : taille en blocs de 1024 octets
- name : nom du disque ou de la partition (ex:
sda
,sda1
)
Limitation : /proc/partitions
ne fournit pas d’informations sur les
systèmes de fichiers, les points de montage ou les UUID.
Afficher les disques sous forme arborescente : lsblk
Pour obtenir une vue plus lisible et organisée des disques, partitions et
volumes logiques, la commande lsblk
est idéale :
lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 500G 0 disk├─sda1 8:1 0 512M 0 part /boot/efi├─sda2 8:2 0 50G 0 part /└─sda3 8:3 0 449G 0 part /home
Affiche :
- Les disques physiques (
disk
) - Les partitions (
part
) - Les volumes (
lvm
) - Les points de montage éventuels
Astuce : pour afficher plus de détails comme le type de système de fichiers et l’UUID :
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT,UUID
Outils avancés pour une analyse plus poussée
Pour des besoins plus spécifiques ou pour explorer toutes les caractéristiques d’un disque, Linux propose aussi :
lshw
: inventaire complet du matériel (nécessite souvent d’être installé) :
sudo lshw -class disk
hwinfo
(sur certaines distributions comme openSUSE) :
sudo hwinfo --disk
En progressant du simple affichage de /proc/partitions
aux outils détaillés
comme lsblk
, fdisk
et blkid
, vous pouvez analyser précisément votre
stockage sous Linux et préparer sereinement vos opérations de
partitionnement, formatage ou montage.
Partitionner un disque
Le partitionnement prépare un disque pour recevoir des systèmes de fichiers et organiser les données efficacement. Avant de créer des partitions, il est important de choisir la bonne structure logique du disque et de planifier l’organisation souhaitée.
Choisir entre MBR et GPT
Le partitionnement commence par choisir une table de partitions :
- MBR (Master Boot Record) : ancien format, limité à 4 partitions principales par disque.
- GPT (GUID Partition Table) : format moderne, permettant un grand nombre de partitions, obligatoire pour les systèmes en mode UEFI.
Pour les disques récents ou supérieurs à 2 To, GPT est recommandé.
Définir l’organisation des partitions
Selon l’usage du disque, plusieurs partitions peuvent être créées :
Point de montage | Taille suggérée | Type de partition |
---|---|---|
/boot/efi | 512 Mo | EFI System Partition |
/ | 20–30 Go | Linux filesystem |
swap | 2–4 Go ou plus selon la RAM | Linux swap |
/home | Reste du disque | Linux filesystem |
Chaque partition doit avoir une taille adaptée à son usage.
Créer une table de partitionnement
Avant de créer des partitions, il faut initialiser la table de partitions sur le disque.
Avec parted
:
sudo parted /dev/sdX mklabel gpt
ou pour un disque au format MBR :
sudo parted /dev/sdX mklabel msdos
Remplacer /dev/sdX
par l’identifiant correct du disque (ex : /dev/sda
).
Créer une partition
Avec fdisk
(MBR) :
- Lancer
fdisk
sur le disque :
sudo fdisk /dev/sdX
- Dans l’interface :
- Taper
n
pour créer une nouvelle partition. - Choisir le type de partition (primaire ou logique).
- Définir le premier et le dernier secteur, ou la taille de la partition.
- Taper
w
pour enregistrer les modifications.
Avec gdisk
(GPT) :
- Lancer
gdisk
sur le disque :
sudo gdisk /dev/sdX
- Dans l’interface :
- Taper
n
pour ajouter une partition. - Suivre les instructions pour définir la taille et le type.
Avec parted
(MBR ou GPT) :
Créer une partition de 20 Go :
sudo parted /dev/sdX mkpart primary ext4 1MiB 20GiB
Créer une partition prenant tout l’espace restant :
sudo parted /dev/sdX mkpart primary ext4 20GiB 100%
Supprimer une partition
Pour supprimer une partition existante :
Avec fdisk
:
sudo fdisk /dev/sdX
- Taper
d
pour supprimer une partition. - Sélectionner le numéro de la partition à supprimer.
- Taper
w
pour écrire les changements.
Avec parted
:
sudo parted /dev/sdX rm N
N
étant le numéro de la partition à supprimer.
Afficher les partitions existantes
Avant ou après modification, il est important de vérifier la table des partitions.
Utiliser lsblk
:
lsblk
Utiliser fdisk -l
:
sudo fdisk -l
Utiliser parted
en mode interactif :
sudo parted /dev/sdX print
Ces commandes affichent :
- La liste des partitions existantes
- Leur taille
- Leur type
- Leur point de montage (si applicable)
Avec ces outils et commandes, il est possible de partitionner n’importe quel disque sous Linux, qu’il soit utilisé pour un simple poste utilisateur ou pour un serveur complexe.
Formater une partition sous Linux
Une fois les partitions créées, il est nécessaire de les formater pour y installer un système de fichiers. Le formatage prépare la partition pour le stockage des données selon un type précis de système de fichiers.
Pour mieux comprendre quel type de filesystems choisir, consulter le guide dédié.
Utilitaires de formatage disponibles
Sous Linux, l’outil principal pour formater une partition est mkfs
(make
filesystem), décliné pour différents systèmes de fichiers.
Système de fichiers | Commande de formatage |
---|---|
EXT4 | mkfs.ext4 |
EXT3 | mkfs.ext3 |
EXT2 | mkfs.ext2 |
XFS | mkfs.xfs |
Btrfs | mkfs.btrfs |
FAT32 | mkfs.vfat |
NTFS | mkfs.ntfs |
Formater en EXT4
EXT4 est le système de fichiers le plus courant sur les distributions Linux modernes.
sudo mkfs.ext4 /dev/sdXN
Formater en XFS
XFS est optimisé pour les performances sur de très grands fichiers.
sudo mkfs.xfs /dev/sdXN
Formater en Btrfs
Btrfs est utilisé pour ses capacités avancées comme la gestion des snapshots et la compression.
sudo mkfs.btrfs /dev/sdXN
Formater en FAT32
FAT32 est recommandé pour les supports amovibles compatibles multi-plateformes.
sudo mkfs.vfat /dev/sdXN
Ajouter un label à la partition :
sudo mkfs.vfat -n "LABEL" /dev/sdXN
Formater en NTFS
NTFS est utilisé principalement pour l’échange de fichiers avec Windows.
sudo mkfs.ntfs /dev/sdXN
Options supplémentaires de formatage
Certaines options permettent de personnaliser davantage la création du système de fichiers :
- Définir un label sur une partition EXT4 :
sudo mkfs.ext4 -L NOM_LABEL /dev/sdXN
- Forcer le formatage sans confirmation :
sudo mkfs.ext4 -F /dev/sdXN
Le formatage efface toutes les données existantes sur la partition ciblée et prépare un environnement adapté pour le stockage de fichiers sous Linux.
Monter une partition sous Linux
Après avoir partitionné et formaté un disque, il est nécessaire de monter la partition pour qu’elle soit accessible dans l’arborescence du système de fichiers. Le montage associe une partition à un dossier existant, appelé point de montage.
Monter une partition manuellement
Pour monter une partition de manière temporaire :
sudo mount /dev/sdXN /chemin/vers/le/dossier
Exemple pour monter /dev/sda1
dans /mnt/data
:
sudo mkdir -p /mnt/datasudo mount /dev/sda1 /mnt/data
Le contenu de la partition sera alors accessible via /mnt/data
.
Remarque : ce montage sera perdu au prochain redémarrage si aucune configuration permanente n’est faite.
Vérifier les partitions montées
Pour vérifier quelles partitions sont actuellement montées :
lsblk
Ou encore :
findmnt
Ces commandes montrent les périphériques, leurs points de montage et leurs types de systèmes de fichiers.
Monter une partition automatiquement au démarrage
Pour que le montage soit persistant à chaque démarrage, il faut configurer le
fichier /etc/fstab
.
Ajouter une ligne dans /etc/fstab
:
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /chemin/vers/le/dossier ext4 defaults 0 2
Explication des champs :
Champ | Description |
---|---|
UUID ou /dev/sdXN | Identifiant de la partition |
Point de montage | Dossier dans lequel monter la partition |
Type | Système de fichiers (ext4, xfs, btrfs, etc.) |
Options | Options de montage (defaults, noatime, etc.) |
Dump | Sauvegarde avec dump (souvent 0) |
Pass | Ordre de vérification avec fsck (0 = désactivé, 1/2) |
Pour trouver l’UUID d’une partition :
sudo blkid
Exemple d’ajout dans /etc/fstab
:
UUID=e99b8f08-7d3b-4f8b-9e7b-6c5e546df66a /mnt/data ext4 defaults 0 2
Après modification de /etc/fstab
, tester sans redémarrer :
sudo mount -a
Cette commande monte toutes les partitions définies dans le fichier, en signalant toute erreur éventuelle.
Démonter une partition
Pour démonter une partition manuellement :
sudo umount /chemin/vers/le/dossier
Ou en utilisant le périphérique directement :
sudo umount /dev/sdXN
Le démontage est indispensable avant de retirer un disque amovible ou avant de manipuler directement une partition.
Le montage des partitions est une étape indispensable pour rendre les données disponibles sous Linux. Qu’il soit temporaire ou permanent, un montage bien configuré assure la stabilité et l’accessibilité du stockage.
Vérifier et réparer les systèmes de fichiers sous Linux
Avec le temps, des erreurs peuvent apparaître sur les systèmes de fichiers à cause de coupures électriques, de déconnexions brutales de disques ou de défaillances matérielles. Linux fournit plusieurs outils pour vérifier et réparer automatiquement ou manuellement les partitions.
Vérifier un système de fichiers avec fsck
fsck
(file system check) est l’outil standard pour analyser et corriger les
erreurs d’un système de fichiers.
Lancer une vérification simple :
sudo fsck /dev/sdXN
Important : il est préférable de démonter la partition avant d’exécuter
fsck
, pour éviter d’endommager le système de fichiers.
Démonter la partition si nécessaire :
sudo umount /dev/sdXN
Puis lancer :
sudo fsck -f /dev/sdXN
Options courantes :
-f
: forcer la vérification même si le système de fichiers est marqué comme propre.-y
: répondre automatiquement “oui” à toutes les questions de réparation.
Vérifier un système de fichiers ext2/ext3/ext4 avec e2fsck
Pour les systèmes de fichiers basés sur EXT, utiliser e2fsck
, qui est
spécifique et souvent plus rapide :
sudo e2fsck -f /dev/sdXN
e2fsck
propose les mêmes options que fsck
(-y
, -p
, -c
pour la
recherche de blocs défectueux).
Vérifier un système de fichiers XFS avec xfs_repair
Les partitions XFS ne sont pas compatibles avec fsck
. Pour les vérifier et
réparer :
- D’abord, vérifier le système de fichiers (monté en mode lecture seule si possible) :
sudo xfs_check /dev/sdXN
- Réparer un système XFS :
sudo xfs_repair /dev/sdXN
Note : xfs_repair
doit être utilisé uniquement sur des systèmes démontés.
Détecter les blocs défectueux avec badblocks
Pour analyser physiquement un disque et trouver des blocs défectueux :
sudo badblocks -v /dev/sdXN
Si des blocs défectueux sont trouvés, on peut les intégrer à une vérification
e2fsck
:
sudo e2fsck -c /dev/sdXN
Cela permet d’exclure automatiquement les blocs endommagés lors de la réparation.
Automatiser la vérification au démarrage
Les systèmes de fichiers EXT peuvent être configurés pour être vérifiés automatiquement après un certain nombre de montages.
Afficher les réglages actuels :
sudo tune2fs -l /dev/sdXN | grep -i 'mount count'
Modifier la fréquence des vérifications avec tune2fs
:
sudo tune2fs -c 30 /dev/sdXN
Cela impose une vérification tous les 30 montages.
La vérification régulière des systèmes de fichiers permet de prévenir les pertes de données et d’assurer la fiabilité du stockage sous Linux. Adapter l’outil utilisé au type de système de fichiers est essentiel pour garantir une réparation efficace.
Gérer l’espace disque sous Linux
La bonne gestion de l’espace disque est indispensable pour assurer la stabilité et les performances d’un système Linux. Surveiller l’utilisation, nettoyer les partitions encombrées et prévoir des ajustements permet d’éviter les pannes dues au manque de place.
Surveiller l’utilisation du disque avec df
La commande df
(disk free) donne un aperçu global de l’utilisation de l’espace
disque.
Afficher l’espace disque utilisé de manière lisible :
df -h
Filesystem Size Used Avail Use% Mounted on/dev/sda2 50G 20G 28G 42% //dev/sda3 449G 30G 397G 7% /home
- Size : taille totale de la partition
- Used : espace utilisé
- Avail : espace disponible
- Use% : pourcentage d’utilisation
- Mounted on : point de montage
Analyser l’utilisation détaillée avec du
La commande du
(disk usage) analyse l’espace utilisé par les fichiers et les
répertoires.
Afficher la taille des dossiers dans un répertoire donné :
du -h /chemin/vers/dossier
Afficher uniquement le total :
du -sh /chemin/vers/dossier
Lister et trier les sous-dossiers selon leur taille :
du -h --max-depth=1 /chemin | sort -h
Explorer l’espace disque avec ncdu
Pour naviguer dans l’espace disque de manière interactive, ncdu
est un outil
très pratique.
Installation sur Debian/Ubuntu :
sudo apt install ncdu
Lancer ncdu
:
ncdu /chemin
Cela permet de repérer rapidement les dossiers volumineux à nettoyer.
Détecter les fichiers ouverts sur un disque plein
Parfois, même après avoir supprimé des fichiers, l’espace n’est pas libéré car des fichiers supprimés sont toujours utilisés par des processus.
Identifier ces fichiers avec lsof
:
sudo lsof | grep deleted
Relancer le processus ou démonter le système de fichiers pour libérer l’espace.
Redimensionner une partition sous Linux
Il arrive qu’une partition devienne trop petite ou trop grande par rapport aux besoins du système. Linux permet de redimensionner une partition sans perdre les données, sous certaines conditions. Cette opération se déroule en deux étapes : modifier la taille de la partition et ajuster la taille du système de fichiers.
Prérequis avant redimensionnement
Avant de modifier une partition :
- Sauvegarder les données pour éviter toute perte accidentelle.
- Démonter la partition si elle est montée :
sudo umount /dev/sdXN
- Vérifier le système de fichiers :
sudo e2fsck -f /dev/sdXN
Redimensionner une partition : méthode générale
- Modifier la taille de la partition avec
parted
ougparted
(outil graphique). - Redimensionner le système de fichiers avec une commande spécifique à son type.
Attention : certaines partitions (comme /
) nécessitent un redémarrage en
mode de secours ou l’utilisation d’un live CD pour être modifiées.
Agrandir une partition EXT4
Après avoir étendu la partition (avec parted
ou gparted
), étendre le système
de fichiers :
sudo resize2fs /dev/sdXN
Cette commande adapte automatiquement la taille du système de fichiers à celle de la partition.
Réduire une partition EXT4
Pour réduire une partition :
- Vérifier et réduire d’abord le système de fichiers :
sudo resize2fs /dev/sdXN TAILLE
Exemple pour réduire à 10 Go :
sudo resize2fs /dev/sdXN 10G
- Réduire ensuite la taille de la partition avec
parted
ougparted
.
Important : toujours réduire le système de fichiers avant de réduire la partition physique.
Agrandir une partition XFS
Les partitions XFS ne peuvent être qu’agrandies, pas réduites.
Pour agrandir un système de fichiers XFS après modification de la partition :
sudo xfs_growfs /point/de/montage
Exemple :
sudo mount /dev/sdXN /mntsudo xfs_growfs /mnt
Cas des volumes LVM
Les partitions gérées par LVM offrent une grande flexibilité pour redimensionner les volumes logiques sans modification complexe de la table de partitions.
Consultez le guide dédié : Gestion des volumes logiques LVM sous Linux ↗.
Analyser les performances des disques sous Linux
La performance des disques influence directement la réactivité et la stabilité d’un système Linux. Pour diagnostiquer efficacement des lenteurs ou optimiser un serveur, il est essentiel de connaître les bons outils, mais aussi de comprendre les termes utilisés lors des analyses.
Vocabulaire de base pour l’analyse disque
Avant de passer aux outils, voici les principaux termes que vous rencontrerez dans les rapports d’analyse :
Terme | Signification |
---|---|
IOPS | Nombre d’opérations d’entrée/sortie par seconde. Indique la capacité du disque à traiter un grand nombre de petites opérations rapidement. |
Throughput | Débit de transfert, mesuré en Mo/s ou Go/s. Représente la quantité de données lues ou écrites par seconde. |
Latency | Temps de réponse d’une opération de lecture/écriture, mesuré en millisecondes (ms). Plus la latence est basse, plus le disque est réactif. |
await | Temps moyen d’attente pour les opérations disque. Un await élevé peut indiquer une saturation ou un problème matériel. |
util% | Pourcentage du temps où le disque est occupé à traiter des requêtes. Un disque utilisé à 100% peut devenir un goulot d’étranglement. |
Comprendre ces notions est indispensable pour interpréter correctement les résultats fournis par les outils de diagnostic.
Mesurer la performance brute avec hdparm
hdparm
permet de tester rapidement la vitesse de lecture d’un disque.
Installation sur Debian/Ubuntu :
sudo apt install hdparm
Tester la vitesse de lecture séquentielle :
sudo hdparm -Tt /dev/sdX
-T
mesure la vitesse du cache.-t
mesure la vitesse de lecture directe du disque.
Surveiller l’activité en temps réel avec iostat
iostat
fait partie du paquet sysstat
et fournit des statistiques détaillées
sur l’activité disque.
Installation :
sudo apt install sysstat
Utiliser iostat
:
iostat -xz 1
Les colonnes importantes :
- r/s, w/s : lectures et écritures par seconde
- rMB/s, wMB/s : débit en lecture et écriture
- await : délai moyen d’une opération
- util : taux d’occupation du disque
Analyser l’utilisation par processus avec iotop
iotop
permet de surveiller en temps réel les processus qui utilisent le plus
d’entrées/sorties.
Installation :
sudo apt install iotop
Lancer iotop
:
sudo iotop
Chaque processus affiché indique :
- Son pourcentage d’IO
- Le débit de lecture et d’écriture associé
Visualiser l’activité disque avec dstat
dstat
est un outil polyvalent pour analyser simultanément l’activité disque,
réseau, CPU et mémoire.
Installation :
sudo apt install dstat
Afficher uniquement l’activité disque :
dstat -d
Afficher disque et réseau :
dstat -dn
Tester les performances de lecture/écriture avec dd
dd
permet de simuler des écritures et lectures pour mesurer les performances
séquentielles.
Écrire un fichier de test :
dd if=/dev/zero of=/chemin/vers/montage/testfile bs=1G count=1 oflag=direct
Lire ce fichier :
dd if=/chemin/vers/montage/testfile of=/dev/null bs=1G
Cette méthode donne une estimation simple du débit séquentiel.
L’analyse régulière des performances disques permet d’anticiper les problèmes, de détecter des saturations, et d’optimiser l’allocation des ressources dans un environnement Linux. Connaître et comprendre les principaux indicateurs est essentiel pour une gestion efficace.
Analyser l’état de santé des disques sous Linux
Surveiller l’état de santé des disques est essentiel pour anticiper les pannes matérielles, éviter les pertes de données et planifier les remplacements de matériel. Sous Linux, plusieurs outils permettent de contrôler l’intégrité physique des disques en exploitant la technologie SMART (Self-Monitoring, Analysis and Reporting Technology).
Vocabulaire de base pour l’analyse de santé
Avant d’utiliser les outils d’analyse SMART, il est important de comprendre certains termes fréquents :
Terme | Signification |
---|---|
SMART | Système interne des disques pour surveiller leur propre santé. |
Bad sectors | Secteurs défectueux irréparables du disque. |
Reallocated sectors | Secteurs déplacés vers des zones de réserve après détection d’erreurs. |
Pending sectors | Secteurs suspects en attente de vérification. |
Temperature | Température de fonctionnement du disque, un facteur critique pour la durée de vie. |
Spin Retry Count | Nombre de tentatives nécessaires pour démarrer le disque (indicateur de défaillance mécanique). |
Comprendre ces indicateurs permet d’interpréter les rapports SMART correctement et d’agir avant une défaillance grave.
Activer et utiliser SMART avec smartmontools
Le paquet smartmontools
fournit les outils nécessaires pour interroger et
tester l’état SMART des disques.
Installation sur Debian/Ubuntu :
sudo apt install smartmontools
Vérifier si SMART est activé
Pour vérifier si SMART est actif sur un disque :
sudo smartctl -i /dev/sdX
Informations principales :
- Activation de SMART :
SMART support is: Enabled
- Modèle du disque et numéro de série
- Capacité du disque
Si SMART n’est pas activé, l’outil propose généralement une commande pour l’activer.
Analyser l’état de santé général
Lancer une vérification rapide de l’état du disque :
sudo smartctl -H /dev/sdX
Sortie typique :
SMART overall-health self-assessment test result: PASSED
Si le résultat est autre que PASSED
, le disque présente probablement des
défaillances.
Afficher tous les attributs SMART détaillés
Pour obtenir une vue complète des paramètres surveillés :
sudo smartctl -A /dev/sdX
Parmi les attributs à surveiller :
- Reallocated_Sector_Ct (secteurs réalloués)
- Current_Pending_Sector (secteurs instables)
- Temperature_Celsius (température de fonctionnement)
Un nombre élevé de secteurs réalloués ou de secteurs en attente est un signe avant-coureur de panne.
Lancer des tests de diagnostic SMART
Test court (quelques minutes) :
sudo smartctl -t short /dev/sdX
Test long (plusieurs dizaines de minutes) :
sudo smartctl -t long /dev/sdX
Pour consulter les résultats après un test :
sudo smartctl -l selftest /dev/sdX
Les tests permettent de détecter des erreurs matérielles invisibles en utilisation normale.
Surveillance continue avec smartd
smartd
est un démon qui surveille les disques en arrière-plan et envoie des
alertes en cas de problème détecté.
Configurer smartd
:
- Modifier
/etc/smartd.conf
pour y ajouter les disques à surveiller. - Redémarrer le service :
sudo systemctl restart smartd
Surveiller régulièrement la santé des disques est une habitude indispensable pour maintenir un système Linux fiable et éviter les pertes de données imprévues. L’analyse SMART donne une vision précise de l’état physique des disques et permet d’agir avant qu’une panne ne survienne.
Bonnes pratiques pour la gestion des disques sous Linux
Pour assurer la fiabilité, la performance et la longévité des systèmes de stockage sous Linux, il est essentiel d’appliquer quelques bonnes pratiques. Une gestion proactive permet d’éviter les incidents critiques, d’améliorer l’organisation et de faciliter la maintenance du système.
1. Toujours sauvegarder avant toute opération
Avant de modifier une partition, formater un disque ou redimensionner un volume, il est impératif de réaliser une sauvegarde complète des données. Même les outils les plus sûrs ne garantissent pas un risque zéro lors des opérations de bas niveau.
Utiliser des outils comme :
rsync
tar
- Des solutions de sauvegarde comme BorgBackup, Restic ou Bacula.
2. Utiliser UUID ou LABEL pour les montages
Dans le fichier /etc/fstab
, privilégier les UUID ou les LABEL au lieu
des chemins classiques /dev/sdX
.
Exemple avec UUID :
UUID=e99b8f08-7d3b-4f8b-9e7b-6c5e546df66a /mnt/data ext4 defaults 0 2
Cela évite des erreurs en cas de changement de nom des périphériques après un redémarrage ou une modification matérielle.
3. Séparer les partitions critiques
Créer des partitions séparées pour :
/home
(données utilisateurs)/var
(logs, bases de données)/tmp
(fichiers temporaires)/srv
(services réseau)
Cela protège le système en isolant les zones où l’espace disque peut se remplir rapidement.
4. Vérifier régulièrement l’espace disque
Surveiller l’utilisation du disque permet d’anticiper les saturations qui pourraient bloquer les services ou rendre le système instable.
Utiliser régulièrement :
df -h
et
du -sh /chemin
Pour identifier rapidement les partitions proches de la saturation.
5. Automatiser la surveillance de l’état des disques
Mettre en place une surveillance automatique de l’état de santé des disques avec
smartd
.
Configurer des alertes par mail ou via un outil de supervision comme Nagios, Zabbix ou Prometheus pour détecter les défaillances imminentes.
6. Prévoir l’alignement des partitions sur les SSD
Sur les disques SSD, veiller à l’alignement correct des partitions dès leur
création avec parted
ou gparted
.
Aligner les partitions sur des blocs de 1 MiB améliore considérablement la durée de vie et les performances des SSD.
7. Utiliser LVM pour plus de flexibilité
Adopter LVM (Logical Volume Manager) permet de :
- Redimensionner les volumes sans interruption.
- Ajouter dynamiquement de nouveaux disques.
- Prendre des snapshots pour des sauvegardes rapides.
Consultez le guide dédié : Gestion des volumes logiques LVM sous Linux.
8. Planifier des vérifications système de fichiers
Configurer des vérifications automatiques avec tune2fs
pour les partitions
EXT4 :
sudo tune2fs -c 30 /dev/sdXN
Cela force un contrôle après 30 montages et permet de détecter des erreurs avant qu’elles ne deviennent critiques.
9. Respecter la température de fonctionnement
Surveiller la température des disques pour éviter la surchauffe, notamment sur les serveurs.
Utiliser :
sudo smartctl -A /dev/sdX
Idéalement, la température des disques doit rester entre 30°C et 45°C.
10. Documenter les interventions
Tenir un journal des opérations sur les disques (créations, suppressions, modifications, pannes détectées) permet de suivre l’historique et d’intervenir plus efficacement en cas de problème.
Appliquer ces bonnes pratiques assure une gestion des disques sûre, optimisée et préventive, indispensable pour maintenir un environnement Linux performant et stable sur le long terme.
Contrôle des connaissances
Pourquoi ce contrôle ?
Cet contrôle va vous permettre de valider vos connaissances sur le sujet abordé dans le guide. Il comporte des QCM, des questions vrai/faux et des réponses ouvertes à un mot.
🕒 Le chronomètre commence dès que vous cliquez sur Démarrer le test. Vous devrez terminer l’examen avant la fin du temps imparti.
🎯 Pour réussir, vous devez obtenir au moins 80% de bonnes réponses.
💡 Je ne fournis pas directement les réponses aux questions. Cependant, si certaines sont complexes, des pistes d’explication pourront être proposées dans le guide ou après l’examen.
Bonne chance ! 🚀
Conclusion
La gestion des disques sous Linux est une compétence incontournable pour garantir la stabilité, la performance et la sécurité d’un système. En maîtrisant l’identification, le partitionnement, le montage, la surveillance et l’optimisation des disques, vous construisez une infrastructure fiable et évolutive. Avec de bonnes pratiques régulières et les outils adaptés, vous pouvez anticiper les problèmes, protéger vos données et maintenir vos systèmes Linux en parfait état de fonctionnement.