ジャーナルクォータと一般クォータの違い

ジャーナルクォータと一般クォータの違い

ファイルシステムにクォータを設定しようとしていますが、次のような有名なメッセージを受け取りました。

クォータの確認:カーネルはログクォータをサポートできますが、それを使用していません。異常終了後にクォータチェックを実行しないようにするには、ログクォータに切り替えることをお勧めします。

ジャーナル処理されたクォータとジャーナリングされていないクォータの違いを説明するリンク/ソースを見つけようとしましたが、見つかりませんでした。

これらの違いは何で、いつどのようなものを使用すべきですか?

また、ログクォータを作成するときに使用する必要があるインストールオプション(関連文書が見つかりません)はですqfmt=vfsv1

このオプションは何ですか?

ベストアンサー1

この古いものからディスカッショントピック:

起動時に、カーネルは実行時(例:から)ファイルシステムの使用量を読み取り、そのファイルシステムに格納されているファイルaquota.userの情報を制限します。aquota.groupシステムが起動したら:quotaoninit.d

  • の場合通常クォータクォータ情報は、新しいファイルシステムリポジトリがファイルに割り当てまたは解放されるとカーネルによって継続的に追跡されますが、コマンド(つまり、システムコールのサブコマンド)が実行されたときにのみファイルに書き込まれaquota.*ます(通常、終了スクリプトの一部として)。 ) が実行されます。quotaoffquotasyncQ_SYNCquotactl
  • そしてジャーナルクォータ、違いは、aquota.*ファイルの使用情報が空間割り当てを実行するファイルシステムトランザクションの一部として更新されることです。

起動中に不完全なファイルシステムのシャットダウンが検出された場合(たとえば、/var/lib/quota/offDebianシステムが実行されていないために見つからない場合quotaoff)、シャットダウン前にカーネルメモリのファイルシステムの使用量と制限情報を正しくフラッシュできない可能性があります。aquota.*ファイルに。

  • もしそうなら、通常クォータ quotacheckaquota.*ファイルシステムのブロック割り当て構造を読み取って収集した実際の使用情報でファイルを更新するには、これを実行します。
  • 万が一の場合でもジャーナルクォータシステムクラッシュ後にログが実行され再生されると、ファイルのスペース使用量情報がaquota.*自動的に更新されます。fsckただし、ログの再生に加えて、いくつかのファイルシステムの破損が検出された場合(たとえば、スーパーブロックに記録された一貫性のないメタデータ)、ファイルシステムを修正して修復する必要がある場合は実行する必要がありますquotacheckfsck

どちらの場合も、クォータが無効な状態(またはシステムの起動後に無効になった状態)でシステムが起動すると、カーネルが維持する使用情報は手動で実行されるか、異常終了のために実行されない限りquotacheck実際の使用情報と同期されません。 。cronジョブとスクリプトは、通常のシステム操作中または完全なシャットダウン後に実行されないようにinit.d作成されることがよくあります(カーネルコマンドラインパラメータを参照)。quotacheckquotacheck.mode

また、ログクォータを作成するときに使用する必要があるインストールオプション(関連文書が見つかりません)はですqfmt=vfsv1

これがファイルの形式ですaquota.*。 ~からカーネルの設定:

config QFMT_V2
...この設定オプションは、クォータフォーマットの
カーネルサポートを有効にします。どちらの形式も32ビットUID / GIDをサポートし、vfsv1形式は64ビットinodeおよびブロッククォータ制限もサポートします。vfsv0vfsv1

そしてからクォータ(2):

現在、3 つのクォータ形式がサポートされています。

  • QFMT_VFS_OLD元のクォータ形式。
  • QFMT_VFS_V0 標準のVFS v0クォータフォーマットは32ビットUIDとGIDを処理でき、クォータ制限は最大2 ^ 42バイトと2 ^ 32 inodeです。
  • QFMT_VFS_V1 2 ^ 64バイトと2 ^ 64 inodeのクォータ制限で32ビットUIDとGIDを処理できるクォータ形式。

バージョン1クォータファイル(フォーマットQFMT_VFS_OLDまたはインストールオプションjqfmt=vfsold、カーネル設定QFMT_V1)は名前が付けられていますquota.*。バージョン2クォータファイル(フォーマットQFMT_VFS_V0およびQFMT_VFS_V1/またはインストールオプション、jqfmt=vfsv0およびjqfmt=vfsv1)はログクォータをサポートします。

おすすめ記事