第2章 GFS2 使用に関する推奨事項

本セクションでは、GFS2 の使用に関する一般的な推奨事項を説明します。

2.1. atime 更新の設定

各ファイルの inode と、ディレクトリーの inode には、3 つのタイムスタンプが関連付けられています。

  • ctime - inode のステータスが最後に変更した時刻
  • mtime - ファイル (またはディレクトリー) のデータが最後に変更した時刻
  • atime - ファイル (またはディレクトリー) のデータに最後にアクセスした時刻

デフォルトで GFS2 などの Linux ファイルシステムにあるため、atime 更新が有効な場合は、ファイルが読み込まれるたびにその inode を更新する必要があります。

ほとんどのアプリケーションは、atime により提供される情報を使用しないため、このような更新では、不要な書き込みのトラフィックとファイルロックのトラフィックが大量に必要になる可能性があります。そのトラフィックにより、パフォーマンスが低下する可能性があります。したがって、電源を切るか、atime 更新頻度を減らすことが推奨されます。

atime 更新の影響を軽減するには、以下の方法を利用できます。

  • relatime (relative atime) でマウントします。これは、以前の atime 更新が mtime または ctime の更新よりも古い場合に atime を更新します。これは、GFS2 ファイルシステムのデフォルトのマウントオプションです。
  • noatime または nodiratime でマウントします。noatime でのマウントは、そのファイルシステムのファイルやディレクトリーの両方の atime 更新を無効にします。nodiratime でのマウントは、そのファイルシステムのディレクトリーに対してのみ atime 更新を無効にします。一般的に、noatime マウントオプションまたは nodiratime マウントオプションを指定して GFS2 ファイルシステムをマウントすることが推奨されています。この場合は、アプリケーションがこれを許可する noatime が優先されます。このような GFS2 ファイルシステムパフォーマンスにおける引数の効果は、「GFS2 ノードロック機能」を参照してください。

次のコマンドを使用して、noatime Linux マウントオプションを指定して GFS2 ファイルシステムをマウントします。

mount BlockDevice MountPoint -o noatime
BlockDevice
GFS2 ファイルシステムを置くブロックデバイスを指定します。
MountPoint
GFS2 ファイルシステムがマウントされるディレクトリーを指定します。

この例では、GFS2 ファイルシステムは /dev/vg01/lvol0 に置かれ、atime 更新がオフの状態で /mygfs2 にマウントされます。

# mount /dev/vg01/lvol0 /mygfs2 -o noatime