従来のfstabオプション

Linuxインスタンスで、インスタンスの起動時にブロック・ボリュームを自動的にマウントする場合は、/etc/fstabファイル内に特定のオプションを設定する必要があります。そうしない場合、インスタンスの起動に失敗することがあります。

ノート

これらのステップは、一貫性のあるデバイス・パスが有効になっていないブロック・ボリュームに対して行うものです。ブロック・ボリュームで一貫性のあるデバイス・パスが有効になっている場合は、かわりに/etc/fstab options for block volumes using consistent device pathsを使用してください。

ボリュームUUID

Linuxオペレーティング・システムでは、ボリュームがアタッチされた順序は確定的ではないため、再起動のたびに変わる可能性があります。/dev/sdbのようにデバイス名を使用してボリュームを参照する場合、ルート以外のボリュームが複数あると、特定のデバイス名に対してマウントしようとするボリュームが、実際にマウントされるボリュームになることを保証できません。

この問題を回避するには、/etc/fstabファイル内に、デバイス名のかわりにボリュームUUIDを指定します。UUIDを使用するとき、マウント・プロセスで、スーパーブロック内のUUIDと/etc/fstabファイルで指定されたマウント・ポイントが照合されます。このプロセスによって、同じボリュームが常に同じマウント・ポイントにマウントされることが保証されます。

ボリュームのUUIDの判別

  1. ボリュームのアタッチおよびボリュームへの接続のステップに従います。

  2. ボリュームが接続された後、標準のLinuxツールを使用して、選択したファイル・システムを各ボリューム上に作成します。

    残りのステップでは、3つのボリュームがすでに接続され、各ボリューム上にXFSファイル・システムが作成されたことを前提としています。

  3. 次のコマンドを実行して、blkidユーティリティを使用してボリュームのUUIDを取得します:

    sudo blkid

    出力は次のようになります:

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

    この出力のルート・ボリュームは、/dev/sda*です。追加のリモート・ボリュームは次のとおりです:

    • /dev/sdb
    • /dev/sdc
    • /dev/sdd
  4. /mnt/vol1/mnt/vol2および/mnt/vol3でボリュームをそれぞれ自動的にアタッチするには、次のコマンドを使用して3つのディレクトリを作成します:

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

_netdevおよびnofailオプションの使用

デフォルトでは、イニシエータの起動前に/etc/fstabファイルが処理されます。/etc/fstabファイルの各行で_netdevオプションを指定して、ボリュームのマウント前にマウント・プロセスを開始するように構成します。

/etc/fstabファイルに(ルート・ボリュームを除く)ボリュームがリストされているインスタンスのカスタム・イメージを作成した場合、そのカスタム・イメージからインスタンスを起動すると失敗します。この問題を回避するには、/etc/fstabファイル内にnofailオプションを指定します。

3つのボリュームを使用するシナリオ例において、_netdevオプションとnofailオプションを使用したボリュームの/etc/fstabファイル・エントリは次のようになります:


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

/etc/fstabファイルを更新した後、次のコマンドを使用してボリュームをマウントします:

bash-4.2$ sudo mount -a

次のコマンドを使用して、インスタンスを再起動することにより、再起動時にボリュームが正しくマウントされることを確認します:

bash-4.2$ sudo reboot

/etc/fstabファイルに関する問題のトラブルシューティング

/etc/fstabファイルを更新した後にインスタンスの再起動に失敗する場合は、/etc/fstabファイルへの変更を元に戻す必要があることがあります。ファイルを更新するには、まず、インスタンスのシリアル・コンソールに接続します。シリアル・コンソール接続を使用してインスタンスにアクセスできる場合は、/etc/fstabファイルに対して行った変更を除去、コメント・アウトまたは修正できます。