Options fstab traditionnelles

Sur les instances Linux, si vous voulez monter automatiquement des volumes lors de l'initialisation de l'instance, vous devez définir des options spécifiques dans le fichier /etc/fstab, sinon le lancement de l'instance risque d'échouer.

Remarque

Ces étapes concernent les volumes de blocs qui ne disposent pas de chemins de dispositif cohérents activés. Si les chemins de dispositif cohérents sont activés pour le volume de blocs, utilisez plutôt les options /etc/fstab pour les volumes de blocs avec des chemins de dispositif cohérents.

UUID de volume

Sur les systèmes d'exploitation Linux, l'ordre dans lequel des volumes sont attachés n'est pas déterministe. Il peut donc être modifié à chaque redémarrage. Si vous faites référence à un volume à l'aide du nom de dispositif, tel que /dev/sdb, et que vous possédez plusieurs volumes non racines, vous ne pouvez pas garantir que le volume que vous souhaitez monter pour un nom de dispositif spécifique sera bien le volume monté.

Pour éviter ce problème, indiquez l'UUID de volume dans le fichier /etc/fstab au lieu du nom de dispositif. Lorsque vous utilisez l'UUID, le processus de montage met en correspondance l'UUID du superbloc avec le point de montage indiqué dans le fichier /etc/fstab. Ce processus garantit que le même volume est toujours monté sur le même point de montage.

Détermination de l'UUID d'un volume

  1. Suivez les étapes pour attacher un volume et établir la connexion à celui-ci.

  2. Une fois les volumes connectés, créez le système de fichiers de votre choix sur chaque volume à l'aide des outils Linux standard.

    Les étapes restantes supposent que trois volumes ont été connectés et qu'un système de fichiers XFS a été créé sur chaque volume.

  3. Exécutez la commande suivante afin d'obtenir les UUID des volumes à l'aide de l'utilitaire blkid :

    sudo blkid

    La sortie obtenue ressemble à ce qui suit :

    {{ /dev/sda3: UUID="1701c7e0-7527-4338-ae9f-672fd8d24ec7" TYPE="xfs" PARTUUID="82d2ba4e-4d6e-4a33-9c4d-ba52db57ea61"}}
    {{ /dev/sda1: UUID="5750-10A1" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="082c26fd-85f5-4db2-9f4e-9288a3f3e784"}}
    {{ /dev/sda2: UUID="1aad7aca-689d-4f4f-aff0-e0d46fc1b89f" TYPE="swap" PARTUUID="94ee5675-a805-49b2-aaf5-2fa15aade8d5"}}
    {{ /dev/sdb: UUID="699a776a-3d8d-4c88-8f46-209101f318b6" TYPE="xfs"}}
    {{ /dev/sdd: UUID="85566369-7148-4ffc-bf97-50954cae7854" TYPE="xfs"}}
    {{ /dev/sdc: UUID="ba0ac1d3-58cf-4ff0-bd28-f2df532f7de9" TYPE="xfs"}}

    Le volume racine dans cette sortie est /dev/sda*. Les volumes distants supplémentaires sont les suivants :

    • /dev/sdb
    • /dev/sdc
    • /dev/sdd
  4. Pour attacher automatiquement les volumes à /mnt/vol1, /mnt/vol2 et /mnt/vol3 respectivement, créez les trois répertoires à l'aide des commandes suivantes :

    bash-4.2$ sudo mkdir /mnt/vol1
    {{ bash-4.2$ sudo mkdir /mnt/vol2}}
    {{ bash-4.2$ sudo mkdir /mnt/vol3}}

Utilisation des options _netdev et nofail

Par défaut, le fichier /etc/fstab est traité avant le démarrage de l'initiateur. Configurez le processus de montage afin qu'il se lance avant le montage des volumes en indiquant l'option _netdev sur chaque ligne du fichier /etc/fstab.

Lorsque vous créez une image personnalisée d'une instance où les volumes, à l'exception du volume racine, sont répertoriés dans le fichier /etc/fstab, le lancement des instances à partir de l'image personnalisée échoue. Pour éviter ce problème, indiquez l'option nofail dans le fichier /etc/fstab.

Dans l'exemple de scénario avec trois volumes, les entrées du fichier /etc/fstab pour les volumes avec les options _netdev et nofail sont les suivantes :


UUID=699a776a-3d8d-4c88-8f46-209101f318b6 /mnt/vol1 xfs defaults,_netdev,nofail 0 2
UUID=ba0ac1d3-58cf-4ff0-bd28-f2df532f7de9 /mnt/vol2 xfs defaults,_netdev,nofail 0 2
UUID=85566369-7148-4ffc-bf97-50954cae7854 /mnt/vol3 xfs defaults,_netdev,nofail 0 2

Après avoir mis à jour le fichier /etc/fstab, utilisez la commande suivante pour monter les volumes :

bash-4.2$ sudo mount -a

Redémarrez l'instance pour vérifier que les volumes sont montés correctement lors du redémarrage à l'aide de la commande suivante :

bash-4.2$ sudo reboot

Dépannage des problèmes liés au fichier /etc/fstab

En cas d'échec du redémarrage de l'instance après la mise à jour du fichier /etc/fstab, vous devrez peut-être annuler les modifications apportées au fichier /etc/fstab. Pour mettre à jour le fichier, connectez-vous d'abord à la console série de l'instance. Lorsque vous avez accès à l'instance via la connexion à la console série, vous pouvez enlever ou corriger les modifications apportées au fichier /etc/fstab, ou annuler leur mise en commentaire.