この質問はもともと、コマンドのバージョン 3.13 の問題によって発生しましたquota
。これは、エンド ユーザーがクォータ情報を確認するためのツールとしては本質的に役に立ちません。たとえば、alice
runsの場合quota
、次のような出力が表示される可能性があります。
Disk quotas for user alice (uid 100):
Filesystem blocks quota limit grace files quota limit grace
fileserver.example.com:/staff/b/bob
9254720 9728000 10240000 119768 0 0
アリスは、これが自分のアカウントと何の関係があるのか疑問に思うでしょう。
quota-utils
パッケージの背後にいる人々は、ついにツールに内在する問題に気付いたことが判明しました。quota
バージョン 4.00 (Fedora 16 で利用可能) では、コマンドを実際に有用な情報を生成するものに変えるいくつかの新しいオプションが利用可能です。
特に興味深い-f
オプションは次のとおりです。
-f, --filesystem-list display quota information only for given filesystems
したがって、ユーザーは次を実行できます。
quota -f ~
そして、ホーム ディレクトリのクォータ情報を取得します。さらに、この-s
オプションは、すべてをブロックとして表示する代わりに、「人間が読める」数字を表示します。
アリスの場合、これは次のようになります。
$ quota -s -f ~
Disk quotas for user alice (uid 100):
Filesystem blocks quota limit grace files quota limit grace
fileserver.example.com:/staff/a/alice
9038M 9500M 10000M 120k 0 0
quota
さらに、スクリプトからの出力をより簡単に処理できるようにする 2 つのオプションがあります。
- この
-w
オプションは、「ファイルシステム」名が長すぎる場合に行の折り返しを禁止します。
- ユーザーがクォータ超過の状況にない場合、この
-p
オプション0
は猶予時間のために表示されます。これは、フィールドの数が常に同じであることを意味します (一方、以前のバージョンのquota
フィールドの数は状況によって異なる可能性があります)。
上記のすべてを組み合わせると、次のようになります。
$ quota -wp -f ~
Disk quotas for user alice (uid 100):
Filesystem space quota limit grace files quota limit grace
fileserver.example.com:/staff/a/alice 9254720 9728000 10240000 0 119768 0
これは、自動化にはるかに役立ちます。