Aller au contenu principal

Chapitre 3.8 - Types de Systèmes de Fichiers

Objectifs d'Apprentissage​

À la fin de ce chapitre, vous serez capable de:

  • Comprendre les différents types de systèmes de fichiers
  • Identifier les systèmes de fichiers courants
  • Choisir le bon système de fichiers selon le cas
  • Comprendre les systèmes de fichiers spéciaux

Qu'est-ce qu'un Système de Fichiers?​

Un système de fichiers (File System) définit comment les données sont organisées et stockées sur un disque. Linux supporte de nombreux types de systèmes de fichiers.


Systèmes de Fichiers Locaux​

ext4 (Fourth Extended)​

Le plus courant sur Linux:

Caractéristiques:

  • Journalisé: Résistant aux pannes
  • Taille max: 1EB (exabyte)
  • Fichier max: 16TB
  • Stable et mature

Usage:

  • Système de fichiers par défaut
  • Disques locaux
  • Serveurs généralistes

Commandes:

# Créer
mkfs.ext4 /dev/sda1

# Vérifier
fsck.ext4 /dev/sda1

# Voir les infos
tune2fs -l /dev/sda1

xfs​

Performant pour gros fichiers:

Caractéristiques:

  • Très performant pour gros fichiers
  • Taille max: 8EB
  • Fichier max: 8EB
  • Allocation dynamique

Usage:

  • Bases de données
  • Fichiers volumineux
  • Serveurs haute performance

Commandes:

# Créer
mkfs.xfs /dev/sda1

# Vérifier
xfs_repair /dev/sda1

# Voir les infos
xfs_info /dev/sda1

btrfs (B-Tree File System)​

Fonctionnalités avancées:

Caractéristiques:

  • Snapshots: Instantanés
  • Compression: Transparente
  • Copy-on-Write: Efficace
  • RAID intégré

Usage:

  • Systèmes nécessitant snapshots
  • Sauvegardes
  • Environnements de développement

Commandes:

# Créer
mkfs.btrfs /dev/sda1

# Créer un snapshot
btrfs subvolume snapshot /mnt/data /mnt/data/snapshot1

# Compression
mount -o compress=zlib /dev/sda1 /mnt

Comparaison​

FSTaille MaxFichier MaxJournalUsage
ext41EB16TBOuiGénéral
xfs8EB8EBOuiGros fichiers
btrfs16EB16EBOuiAvancé

Systèmes de Fichiers Réseau​

NFS (Network File System)​

Partage de fichiers sur réseau:

# Serveur: Exporter
# /etc/exports
/home/user1 192.168.1.0/24(rw,sync)

# Client: Monter
mount -t nfs server:/home/user1 /mnt/nfs

Usage:

  • Partage de fichiers entre systèmes Unix/Linux
  • Serveurs de fichiers centralisés

CIFS/SMB​

Compatible Windows:

# Monter un partage Windows
mount -t cifs //server/share /mnt/smb -o username=user

Usage:

  • Partage inter-plateformes
  • Compatibilité Windows

Systèmes de Fichiers Spéciaux​

tmpfs​

En mémoire (RAM):

# Monter tmpfs
mount -t tmpfs -o size=1G tmpfs /mnt/tmpfs

# Utilisé pour:
# - /tmp (souvent)
# - /dev/shm (mémoire partagée)

Caractéristiques:

  • Très rapide (RAM)
  • Temporaire (perdu au redémarrage)
  • Taille limitée par RAM

procfs​

Interface vers le kernel:

# Monté automatiquement sur /proc
# Contient:
# - /proc/cpuinfo: Info CPU
# - /proc/meminfo: Info mémoire
# - /proc/pid/: Détails processus

Caractéristiques:

  • Système de fichiers virtuel
  • Données en temps réel
  • Lecture seule (généralement)

sysfs​

Informations système:

# Monté automatiquement sur /sys
# Contient:
# - /sys/class/: Classes de périphériques
# - /sys/devices/: Périphériques

Caractéristiques:

  • Interface matériel
  • Configuration matériel
  • Virtuel

Commandes de Gestion​

Voir les Systèmes de Fichiers Montés​

# Liste simple
mount

# Format lisible
df -h

# Types de systèmes de fichiers
mount | grep -E '^/dev' | awk '{print $5}' | sort -u

Monter/Démonter​

# Monter
mount /dev/sda1 /mnt
mount -t ext4 /dev/sda1 /mnt

# Monter avec options
mount -o rw,noexec /dev/sda1 /mnt

# Démonter
umount /mnt
umount /dev/sda1

# Forcer le démontage (si occupé)
umount -f /mnt
umount -l /mnt # Lazy unmount

Configuration Permanente (/etc/fstab)​

# Format: device mountpoint fstype options dump pass
/dev/sda1 / ext4 defaults 0 1
/dev/sda2 /home ext4 defaults 0 2
/dev/sda3 /var xfs defaults 0 2
server:/export /mnt/nfs nfs defaults 0 0

Options courantes:

  • defaults: rw, suid, dev, exec, auto, nouser, async
  • noexec: Pas d'exécution
  • nosuid: Ignore SUID
  • ro: Lecture seule
  • noatime: Pas de mise à jour atime

Vérification et Réparation​

fsck​

Vérifier et réparer:

# Vérifier (sans réparation)
fsck /dev/sda1

# Réparer automatiquement
fsck -a /dev/sda1

# Forcer la vérification
fsck -f /dev/sda1

# Spécifique à ext4
fsck.ext4 /dev/sda1

Important:

  • Démonter avant fsck (si possible)
  • Mode single-user pour système racine

Résumé​

Dans ce chapitre, vous avez appris:

Types locaux: ext4 (standard), xfs (gros fichiers), btrfs (avancé)
Types réseau: NFS (Unix), CIFS/SMB (Windows)
Types spéciaux: tmpfs (RAM), procfs (kernel), sysfs (système)
Gestion: mount, umount, /etc/fstab pour montage permanent
Vérification: fsck pour réparer les systèmes de fichiers


Prochaines Étapes​

Lab 3.4: Pratique Complète
Module 4: Gestion des Processus


Chapitre créé le: Décembre 2024