3.quota の運用によるディスク容量制限

3-1. repquota コマンドによる使用状況の確認。

 repquota コマンドを用いることで、どのユーザがどれだけファイルやiノードを使用しているか、設定の上限を超過しているかなど確認することが出来ます。

 全ての領域を確認する場合は -a オプションを使います。

# /usr/sbin/repquota -a

 /home などの特定パーティション(領域)の状態を示したいときは、パーティション名を repquota の後につけます。以下は実行例です。

# /usr/sbin/repquota /home/
*** Report for user quotas on device /dev/mapper/VolGroup00-LogVol02
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --   77912       0       0              6     0     0
zem       -- 1364132       0       0            120     0     0
akane     --    5848       0       0             16     0     0
sakura    --     104       0       0             12     0     0
ayaka     --     104       0       0             12     0     0
yayoi     --  627460       0       0             13     0     0

 Block grace time はファイルサイズのソフトリミットです。7 days となっているので、ソフトリミットで設定した値(単位は kB=キロバイト)を超えても7日使えるという意味です。

 数値の【 0 】は無制限です。初期状態ではどのアカウントに対しても制限はありません。

 Inode grace time はiノード数のソフトリミットです。ソフトリミットで指定したiノード数を超えても7日間の猶予が与えられます。
 Block limits はファイルの使用状況です。File Limits はiノード数の使用状況です。

 User はユーザ名です。-- となっている箇所は、超過したら + に変わります。ユーザの超過は +-、グループの超過は -+、両方の超過は ++ として表示されます。

 その横に Used と表示されているのが、現在使用されているファイル容量(単位は kB=キロバイト)です。ちなみに 1024 kB = 1 MB です。5 MB の制限をしたい場合は、1,024 * 5 = 5120 と記述する必要があります。

3-2. edquota コマンドによる quota の制限

 ユーザに対して容量の制限をするのは 【 edquota -u ユーザ名】です。  たとえば、【 ayaka 】アカウントの制限を編集したい場合は

# /usr/sbin/edquota -u ayaka

 と実行します。実行後は次のような画面が開きます。

Disk quotas for user ayaka (uid 503):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/mapper/VolGroup00-LogVol00          0          0          0          0        0        0
  /dev/mapper/VolGroup00-LogVol02        104          0          0         12        0        0

 Filesystem がパーティション(領域)名です。blocks が現在使用しているファイルサイズ(単位は kB)、左から soft が容量に対するソフトリミット、hard が容量に対する上限、soft がiノードに対するソフトリミット、hard がiノード数の上限です。

Disk quotas for user ayaka (uid 503):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/mapper/VolGroup00-LogVol00          0          0           0          0        0        0
  /dev/mapper/VolGroup00-LogVol02        104       1024        2048         12        0        0

 この例では「/dev/mapper/VolGroup00-LogVol02」という領域に対してソフトリミット 1,024 kB(1MB)、ハードリミット2,048kb(2MB)を設定した例です。

 設定後の状況がどうなっているかは quota コマンドで確認できます。

 ayaka アカウントの quota 制限状況を確認するには

# /usr/bin/quota -u ayaka
Disk quotas for user ayaka (uid 503):
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
/dev/mapper/VolGroup00-LogVol02
                    104    1024    2048              12       0       0

 このように確認できます。

 グループに対しての制限は edquota に -g (group)オプションをつけます。

# /usr/sbin/edquota -g stellvia

 設定方法はユーザとまったく変わりません。適用範囲が個々のユーザに対してか、それともグループ全体に対して適用されるかどうかです。編集画面も全く同じです。

Disk quotas for group stellvia (gid 506):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/mapper/VolGroup00-LogVol00          0          0          0          0        0        0
  /dev/mapper/VolGroup00-LogVol02     627564          0          0         25        0        0

 stellvia グループ quota 制限状況を確認するには -g (group)オプションをつけます。

# /usr/bin/quota -g stellvia
Disk quotas for group stellvia (gid 506):
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
/dev/mapper/VolGroup00-LogVol02
                 627564*      0    2048              25       0       0

 ちなみに、ファイルの上限に達すると

warning, user block quota exceeded

 とエラーがでます。FTP 中に上記のようなエラーが出たら、クォータの容量を超過していないか調べた方がいいです。

3-3. quota 設定のコピー

 設定のコピーは edquota に -p オプションを使います。  ayaka アカウントの quota 設定を yayoi と sakura に設定したい場合

# /usr/sbin/edquota -p ayaka -u yayoi sakura

 です。

(-p コマンドの実行前の repquota)

*** Report for user quotas on device /dev/mapper/VolGroup00-LogVol02
Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --   77912       0       0              6     0     0
zem       -- 1364132       0       0            120     0     0
akane     --    5848       0       0             16     0     0
sakura    --     104       0       0             12     0     0
ayaka     --     104    1024    2048             12     0     0
yayoi     --  627460       0       0             13     0     0

(-p コマンドの実行後=設定がコピーされています)

Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
User            used    soft    hard  grace    used  soft  hard  grace
----------------------------------------------------------------------
root      --   77912       0       0              6     0     0
zem       -- 1364132       0       0            120     0     0
akane     --    5848       0       0             16     0     0
sakura    --     104    1024    2048             12     0     0
ayaka     --     104    1024    2048             12     0     0
yayoi     +-  627460    1024    2048  7days      13     0     0

 ayaka アカウントの情報が sakura と yayoi にコピーされました。
 yayoi アカウントは容量を超過しているので、名前の横のステータスが +- となっています。

3-4. 猶予期間の変更

 ソフトリミットの猶予期間は、初期状態のままでは 7 days (7日間)です。

 変更するためには【 edquota -t 】を実行します。

# /usr/sbin/edquota -t

 実行すると次のような画面が開きます。

Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
  Filesystem             Block grace period     Inode grace period
  /dev/mapper/VolGroup00-LogVol00                  7days                  7days
  /dev/mapper/VolGroup00-LogVol02                  7days                  7days

 パーティション(ボリューム)毎に変更をかけることが出来ます。
 運用されている環境に応じて、適時変更してご利用ください。

3-5 /etc/warnquota.conf について

 メールで警告を出す際の諸設定です(工事中、ちょっとまってね。。。)



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: Thu, 23 Jun 2005 21:20:03 JST (6940d)