Options traditionnelles du fichier fstab

Dans les instances Linux, pour monter automatiquement des volumes au démarrage de l'instance, vous devez définir des options spécifiques dans le fichier /etc/fstab, sinon il est possible que le lancement de l'instance échoue.

Note

Ces étapes concernent les volumes par blocs pour lesquels les chemins de périphérique cohérents ne sont pas activés. Si les chemins de périphérique cohérents sont activés pour le volume par blocs, utilisez les options du fichier /etc/fstab pour les volumes par blocs utilisant des chemins de périphérique cohérents à la place.

UUID de volumes

Dans les systèmes d'exploitation Linux, l'ordre dans lequel les volumes sont attachés n'est pas déterministe. Il peut donc être modifié à chaque redémarrage. Si vous référencez un volume à l'aide du nom de périphérique, par exemple /dev/sdb, et qu'il existe plusieurs volumes non racines, vous ne pouvez pas être certain que le volume monté pour un nom de périphérique spécifique soit le bon.

Pour éviter ce problème, indiquez l'UUID du volume dans le fichier /etc/fstab au lieu du nom de périphérique. Lorsque vous utilisez l'UUID, le processus de montage met en correspondance l'UUID du superbloc et le point de montage spécifié 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 vous connecter au volume.

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

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

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

    sudo blkid

    La sortie est semblable à la suivante :

    {{ /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"}}

    Dans cette sortie, le volume racine 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 au moyen des commandes suivantes :

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

Utiliser les 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 pour qu'il soit lancé avant le montage des volumes en spécifiant l'option _netdev sur chaque ligne du fichier /etc/fstab.

Lorsque vous créez une image personnalisée d'une instance dont les volumes, sauf le 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, spécifiez 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 incluant 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

Exécutez la commande suivante pour redémarrer l'instance et vérifier que les volumes sont montés correctement au redémarrage :

bash-4.2$ sudo reboot

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

Si l'instance ne redémarre pas 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 à l'aide de la connexion à la console série, vous pouvez supprimer, commenter ou corriger les modifications que vous avez apportées au fichier /etc/fstab.