ファイルシステムロギングには、トランザクションボリュームを使用する方法と UFS ロギングを使用する方法の 2 種類があります。
ファイルシステムロギングとは、UFS ファイルシステムを更新する前にその変更をログに書き込む処理のことです。 ログに記録されたトランザクション情報は、後でファイルシステムに適用することができます。 たとえば、新しいディレクトリを作成する場合、mkdir コマンドは、ログに記録されてからファイルシステムに適用されます。
システムの再起動時に、不完全なトランザクションは廃棄され、操作が完結しているトランザクションは適用されます。 つまり、完結したトランザクションだけが適用されるために、ファイルシステムの整合性が常に保たれます。 したがって、fsck コマンドを使ってファイルシステムの整合性をチェックする必要はありません。
システムクラッシュが起こると、実行中のシステムコールが中断され、UFS の整合性が損なわれます。 fsck コマンドを実行せずに UFS をマウントすると、このような不整合によってシステム異常やデータの損傷が発生することがあります。
大規模なファイルシステムの整合性をチェックするには、ファイルシステムのデータを読み取り、検証する必要があるため、長い時間がかかります。 UFS ロギングを使用すれば、完結しなかったシステムコールの呼び出しによる変更は破棄されるため、起動時に UFS ファイルシステムをチェックする必要はありません。
UFS ロギングとトランザクションボリューム の機能は、ファイルシステム情報のログを維持するという点では同じです。 両者の主な違いは次のとおりです。
トランザクションボリュームではログ情報を物理的に異なるデバイスに書き込むことができるが、UFS ロギングでは、ログとファイルシステムが同じボリュームに作成されます。
UFS ロギングの性能は、どのような場合でもトランザクションボリュームよりも優れています。
UFS ロギングではルート (/) を含むあらゆる UFS ファイルシステムのログをとることができるが、トランザクションボリュームではルート (/) ファイルシステムのログをとることはできません。
将来の Solaris リリースでは、トランザクションボリュームは Solaris オペレーティング環境から削除される予定です。 Solaris 8 リリースからサポートされている UFS ロギングは、トランザクションボリュームと同じ機能を備えており、より高い性能を提供します。UFS ロギングでは、システム管理の要件やオーバーヘッドが軽減されます。 最適な性能と機能を得る上でこれらの利点は非常に重要です。
UFS ロギングを有効にするには、ファイルシステムに対して mount_ufs -logging オプションを使用するか、/etc/vfstab ファイルを編集してファイルシステムのマウントオプションに logging を追加する必要があります。 UFS ロギングを有効にしたままファイルシステムをマウントする方法の詳細については、『Solaris のシステム管理 (デバイスとファイルシステム)』の第 17 章「ファイルシステムのマウントとマウント解除 (手順)」と mount_ufs(1M) のマニュアルページを参照してください。
トランザクションボリュームの使用方法については、以降の節をお読みください。
UFS ファイルシステムのロギングを新たに使用する場合は、トランザクションボリュームではなく、UFS ロギングを使用してください。
トランザクションボリューム は、ファイルシステムのロギングを管理するためのボリュームで、本質的には UFS ロギングと同じです。 どちらの方法でも、UFS の更新をファイルシステムに適用する前にログに記録します。
トランザクションボリュームは、2 つのデバイスからなります。
ログデバイスやマスターデバイスは、物理的なスライスでも、ボリュームでもかまいません。 ただし、信頼性と可用性を高めるために、ログデバイスには RAID 1 ボリューム (ミラー) を使用するようにします。 これは、物理ログデバイスにデバイスエラーが発生すると、データが失われることがあるからです。 マスターデバイスにも、RAID 1 や RAID 5 ボリュームを使用することができます。
トランザクションボリュームにログデバイスがあれば、ロギングは、トランザクションボリュームがマウントされたときに自動的に開始されます。 マスターデバイスには、UFS ファイルシステムがあらかじめ格納されていてもかまいません (トランザクションボリュームを作成しても、マスターデバイスの内容が変更されることはありません)。 あるいは、後でトランザクションボリュームにファイルシステムを作成することもできます。 同じように、トランザクションボリュームを削除しても、マスターデバイスの UFS ファイルシステムが変更されることはありません。
トランザクションボリュームを構成したら、そのトランザクションボリュームを物理スライスや別の論理ボリュームと同じように使用できます。 トランザクションボリュームを作成する方法については、「トランザクションボリュームの作成 」を参照してください。
次の図に、マスターデバイス d3 とミラー化されたログデバイス d30 から構成されるトランザクションボリューム d1 を示します。
次の図に、ミラー化されたログデバイス d30 を共有している 2 つのトランザクションボリューム d1 と d2 を示します。 両方のマスターデバイスと共有ログデバイスはどれも RAID 1 ボリュームです。