RHEL 7 でのマウント順序に関する変更点
RHEL 7 での systemd の導入により、多くのサービスとプロセスが並行して開始されるようになったため、起動プロセスが大幅に高速化されました。これらの結果の 1 つは、ファイルシステムがマウントされる順序が一貫していないことです。マウントの順序は、/etc/fstab のエントリに基づいて保証されなくなりました。ファイルシステムは、systemd のもう 1 つの「ユニット」になりました。プロセス起動の並列性のため、特定のターゲット ユニットの起動順序は一貫していません。
RHEL7 では、systemd は /etc/fstab のマウント エントリの順序ではなく、マウントの順序を処理します。したがって、/etc/fstab 内のエントリーの順序は、RHEL 7 でマウントされている順序と同じである必要はありません。RHEL 6 では、/etc/fstab ファイル内でファイルシステムを構成することは比較的簡単でした。
以下は systemd の man ページからの抜粋です:
Mount units may either be configured via unit files, or via /etc/fstab (see fstab(5) for details). Mounts listed in /etc/fstab will be converted into native units dynamically at boot and when the configuration of the system manager is reloaded. In general, configuring mount points through /etc/fstab is the preferred approach.
マウント順の修正方法
RHEL 7 では、ファイルシステムは systemd の別の「ユニット」タイプになりました。 /etc/fstab ファイル内でファイルシステムを構成した場合、システムは実行中の環境の存続期間中、これらのエントリを動的な「マウント」ユニット タイプに単純に変換します。これらの動的に作成されたシステム マウント ユニット タイプは、/run/systemd/generator/ で確認できます。
ユーザー定義ユニットを配置する正しい場所は /etc/systemd/system/ です .各マウント ユニットをここにコピーし、ファイルに必要な調整を加えます。
注意 :/etc/systemd/system ディレクトリにエントリを追加するときに、マウント ポイントに対応するエントリを /etc/fstab から削除します。マウント順序を修正するには、Requires の組み合わせを使用します そして後 ユニットオプション。このユーザー定義のユニットは、マウント ポイントごとに追加する必要があります。
たとえば、「データ」マウント ポイントの場合、ファイル /etc/systemd/system/test.mount を作成します。
[Unit] Description= data mount Requires=tmp.mount After=tmp.mount [Mount] What=/dev/datavg/datalv Where=/data Type=ext4 [Install] WantedBy=multi-user.target
必須 オプションは、/tmp ファイルシステムが存在しない限り、このファイルシステムがマウントされないことを意味します。 その後 オプションは、/tmp ファイルシステムがマウントされた後にのみ /test ファイルシステムがマウントされることを意味します。
注意 :マウント ポイントがファイル システム階層内の別のマウント ポイントの下にある場合、両方のユニット間の依存関係が自動的に作成されるため、/test/test1 の requires および after エントリを作成して、/test が存在し、マウントされた後にのみマウントする必要はありません。 .