15. Gestion du stockage et des disques sur Ubuntu Server : guide simple

Introduction

La gestion du stockage et des disques sur Ubuntu Server est une compétence essentielle pour les administrateurs, en particulier dans des environnements dynamiques comme les plateformes cloud (AWS, Azure, Google Cloud) ou les plateformes de virtualisation (VMware, Hyper-V, Proxmox). Des tâches telles que l’extension des disques du système d’exploitation, l’initialisation des disques de données ou l’optimisation des configurations de stockage sont des scénarios courants. Si les outils d’automatisation simplifient souvent ces processus, une solide compréhension des étapes sous-jacentes est essentielle pour un dépannage efficace et une intervention manuelle.

Dans ce guide, nous explorerons la gestion du stockage et des disques sur Ubuntu Server, y compris les types de systèmes de fichiers, le partitionnement, le formatage et l’optimisation des disques. Avec des exemples pratiques adaptés aux environnements physiques comme virtualisés, ce guide vous fournira les connaissances nécessaires pour gérer efficacement les tâches de stockage.


Articles précédents :

01. Introduction à Ubuntu Server – SysOSX: AI & Cloud

02. Comment configurer votre premier serveur Ubuntu : guide du débutant – SysOSX: AI & Cloud

03. Maîtriser la ligne de commande Linux pour Ubuntu Server – SysOSX: AI & Cloud

04. Gestion des utilisateurs et des autorisations sur Ubuntu Server : guide complet – SysOSX: AI & Cloud

05. Bases des réseaux pour Ubuntu Server : guide complet – SysOSX: AI & Cloud

06. Installation et gestion des logiciels sur Ubuntu Server : guide complet – SysOSX: AI & Cloud

07. Appliquer les correctifs et mettre à jour Ubuntu Server : guide complet – SysOSX: AI & Cloud

08. Sécuriser votre serveur Ubuntu : étapes pratiques de durcissement et de protection – SysOSX: AI & Cloud

09. Audit et journalisation du serveur Ubuntu

10. Outils de surveillance système pour Ubuntu Server : guide complet – SysOSX: AI & Cloud

11. Journalisation centralisée pour le serveur Ubuntu : un guide indispensable – SysOSX: AI & Cloud

12. Audit et conformité pour Ubuntu Server : bonnes pratiques – SysOSX: AI & Cloud

13. Configurer votre serveur Ubuntu pour l’hébergement et les applications web : guide ultime – SysOSX: AI & Cloud

14. Héberger plusieurs sites web sur un seul serveur Ubuntu : conseils utiles – SysOSX: AI & Cloud



Comprendre les types de systèmes de fichiers

Un système de fichiers définit la manière dont les données sont stockées et accessibles sur un disque. Choisir le bon système de fichiers est crucial pour les performances, la fiabilité et la compatibilité. Voici les systèmes de fichiers les plus courants pour les serveurs Ubuntu :

Systèmes de fichiers courants pour Ubuntu

  1. Ext4 (quatrième système de fichiers étendu)
    • Système de fichiers par défaut pour les serveurs Ubuntu.
    • Offre la journalisation, la prise en charge des fichiers volumineux et d’excellentes performances.
    • Idéal pour les charges de travail à usage général.
    • Commande de formatage : sudo mkfs.ext4 /dev/sdX1
  2. XFS
    • Système de fichiers journalisé haute performance, conçu pour les fichiers volumineux et les charges de travail à forte intensité d’E/S.
    • Couramment utilisé dans les environnements d’entreprise et cloud.
    • Commande de formatage : sudo mkfs.xfs /dev/sdX1
  3. Btrfs (système de fichiers B-Tree)
    • Système de fichiers avancé offrant la prise en charge des instantanés, la compression des données et des fonctionnalités RAID.
    • Adapté aux charges de travail complexes et aux environnements nécessitant des sauvegardes fréquentes.
  4. NTFS
    • Utilisé principalement pour la compatibilité avec les environnements Windows.
    • Utile pour les systèmes à double démarrage ou les disques partagés entre Linux et Windows.
  5. FAT32 et exFAT
    • Systèmes de fichiers légers utilisés pour les disques amovibles et la compatibilité multiplateforme.

Choisir le bon système de fichiers

  • Ext4 : Charges de travail à usage général.
  • XFS : Charges de travail haute performance dans les environnements d’entreprise ou cloud.
  • Btrfs : Fonctionnalités avancées comme les instantanés et la compression.
  • NTFS/FAT32 : Compatibilité multiplateforme.

Partitionner des disques sur Ubuntu Server

Le partitionnement divise un disque physique en sections logiques, ce qui permet une meilleure organisation et gestion des données. C’est particulièrement utile pour séparer les fichiers système, les sauvegardes et les données d’application.

Étapes pour partitionner un disque sur Ubuntu Server

  • Identifier le disque :
    Utilisez la commande lsblk  pour lister tous les disques disponibles et leurs partitions : lsblk
  • Créer une partition :
    Utilisez fdisk ou parted pour créer une nouvelle partition. Exemple avec fdisk: sudo fdisk /dev/sdX
    • Appuyez sur n pour créer une nouvelle partition.
    • Indiquez la taille et le type de la partition.
    • Appuyez sur w pour écrire les modifications sur le disque.
  • Vérifier la partition :
    Exécutez lsblk  à nouveau pour confirmer que la nouvelle partition a été créée.

Formater des disques de données sur Ubuntu Server

Le formatage prépare une partition à l’utilisation en créant un système de fichiers.

Étapes pour formater un disque de données sur Ubuntu Server

  • Installer les outils nécessaires :
    Assurez-vous que l’utilitaire mkfs  est installé (inclus par défaut dans la plupart des distributions).
  • Formater la partition :
    Utilisez la commande mkfs pour formater la partition. Exemple : sudo mkfs.ext4 /dev/sdX1
  • Créer un point de montage :
    Remarque importante : Dans les environnements cloud, évitez d’utiliser /mnt comme point de montage. Le répertoire /mnt est souvent réservé aux disques temporaires sur les plateformes cloud (comme Azure ou AWS), qui peuvent être effacés lors des redémarrages ou des mises à jour du système. Utilisez plutôt un répertoire personnalisé tel que /data ou /storage. Exemple :
sudo mkdir /data
  • Monter la partition :
    Montez la partition formatée sur le répertoire nouvellement créé :
sudo mount /dev/sdX1 /data
  • Rendre le montage persistant :
    Pour garantir le montage automatique de la partition au démarrage, ajoutez-la au fichier /etc/fstab :
echo '/dev/sdX1 /data ext4 defaults 0 2' | sudo tee -a /etc/fstab  

Rendre le montage persistant : utiliser l’UUID dans les environnements cloud

Pour garantir le montage automatique de la partition au démarrage, il est essentiel de l’ajouter au fichier /etc/fstab. Cependant, dans les environnements cloud, il est recommandé d’utiliser l’UUID (identifiant unique universel) pour monter les disques au lieu de référencer directement le nom du périphérique (par exemple, /dev/sdX1). Les noms de périphériques peuvent changer après un redémarrage du système, en particulier dans les environnements virtualisés ou cloud, ce qui peut entraîner des échecs de montage. L’utilisation de l’UUID garantit un montage cohérent et fiable.

Étapes pour rendre le montage persistant avec l’UUID

  • Trouver l’UUID de la partition :
    Utilisez la commande blkid pour récupérer l’UUID de la partition :
sudo blkid
  • Exemple de sortie :
/dev/sdX1: UUID="123e4567-e89b-12d3-a456-426614174000" TYPE="ext4"
  • Modifiez le fichier /etc/fstab :
    Ajoutez une entrée au fichier /etc/fstab en utilisant l’UUID au lieu du nom du périphérique.
    Exemple : echo 'UUID=123e4567-e89b-12d3-a456-426614174000 /data ext4 defaults 0 2' | sudo tee -a /etc/fstab
  • Vérifier la configuration :
    Testez la configuration en démontant la partition et en la remontant avec la commande mount -a :
sudo umount /data  
sudo mount -a  

  • Redémarrer et confirmer :
    Redémarrez le système pour vous assurer que le disque est monté correctement au démarrage : sudo reboot

Pourquoi utiliser l’UUID dans les environnements cloud ?

  • Cohérence : Les noms de périphériques comme /dev/sdX peuvent changer après un redémarrage en raison de l’énumération dynamique des périphériques sur les plateformes cloud.
  • Fiabilité : Les UUID sont uniques pour chaque partition et restent constants, ce qui garantit un montage fiable.
  • Bonne pratique : Les fournisseurs cloud comme AWS, Azure et Google Cloud recommandent d’utiliser des UUID ou des étiquettes pour monter les disques dans les environnements de production.

Scénarios cloud et virtualisation : extension et initialisation des disques

Scénario 1 : extension du disque du système d’exploitation

Sur les plateformes cloud comme AWS, Azure ou Google Cloud, les disques du système d’exploitation peuvent être étendus à partir de la couche physique. De nombreuses plateformes détectent et étendent automatiquement le disque du système d’exploitation. Cependant, une intervention manuelle peut être nécessaire pour redimensionner le système de fichiers afin d’utiliser le nouvel espace.

Étapes pour étendre le disque du système d’exploitation sur Ubuntu Server :

  1. Vérifier l’espace disque :
    Vérifiez l’espace disque étendu avec lsblk: lsblk
  2. Redimensionner le système de fichiers :
    Utilisez resize2fs  pour les systèmes de fichiers Ext4 : sudo resize2fs /dev/sdX1

Scénario 2 : initialisation du disque de données, veuillez consulter la section précédente


Surveiller et optimiser l’utilisation du disque

Surveiller l’utilisation du disque

  1. Vérifier l’utilisation de l’espace disque :
    Utilisez la commande df pour afficher l’utilisation de l’espace disque : df -h
  2. Analyser l’utilisation des répertoires :
    Utilisez la commande du pour vérifier la taille de répertoires spécifiques : du -sh /var/log
  3. Surveillance avancée :
    Installez ncdu pour l’analyse interactive de l’utilisation du disque :
sudo apt install ncdu 
ncdu /

Optimiser l’utilisation du disque

  • Supprimer les fichiers temporaires :
sudo apt-get autoclean  
sudo apt-get clean  
sudo apt-get autoremove  

  • Trouver les fichiers volumineux qui consomment de l’espace disque
    Localisez les fichiers volumineux à l’aide de la commande find :
sudo find / -type f -size +100M

Références

Dans le prochain article, nous explorerons la configuration d’un serveur de base de données sur des serveurs Ubuntu. Vous apprendrez à :

  • Installez et configurez MySQL ou MariaDB pour vos applications.
  • Sécurisez votre serveur de base de données pour protéger les données sensibles.
  • Optimisez les performances de la base de données pour les environnements de production.

Que vous déployiez des bases de données dans le cloud ou sur site, ce guide vous fournira des informations concrètes pour vous aider à gérer efficacement votre infrastructure de bases de données.

Ne le manquez pas — restez à l’écoute !