Linux - disk quota



 ◆ ディスククォータの管理 - ハードリミットとソフトリミット

 Linuxでは、
ディスククォータの機能により、ユーザまたはグループごとに使用可能なディスク容量を
 制限できます。この制限はディスク容量の
サイズだけでなく、inode数でも指定することができます。
 ディスククォータでは以下5つのパラメータを使用して、使用できるディスク容量の制限を設定します。

設定項目 説明
ハードリミット ( ユーザーごと )

 1ユーザが利用できる最大のディスク容量。
 ハードリミットを超えるとそれ以上は書き込みできない。

ソフトリミット ( ユーザーごと )

 容量制限の警告が発生されるタイミング。
 ソフトリミットを越えると警告が発せられるが、ディスクへの書き込みは可能。
 但しソフトリミットを越えたまま猶予期間を過ぎると、書き込みができなくなる。

ハードリミット ( グループごと )

 グループが利用できる最大のディスク容量。ハードリミットを超えると、
 そのグループに属する全てのユーザは、それ以上は書き込みできない。

ソフトリミット ( グループごと )

 容量制限の警告が発生されるタイミング。
 ソフトリミットを越えると警告が発せられるが、ディスクへの書き込みは可能。
 但しソフトリミットを越えたまま猶予期間を過ぎると、書き込みができなくなる。

猶予期間

 ソフトリミットを越えると猶予期間(デフォルトで7日間)に入る。猶予期間が
 過ぎるまでにソフトリミット以下にファイルなどを削除しなければ、
 現在のソフトリミットのステータスが、ハードリミットとしてみなされてしまう。



   



 なお、現在のディスク使用量と設定されているディスククォータ容量はquotaコマンドで確認できます。

 ◆ 構文 : quota [ -u ] [ オプション ] ユーザ名

オプション 説明
-u  指定したユーザーに設定されたディスククォータの状況を表示 ( デフォルト )
-g  指定したグループに設定されたディスククォータの状況を表示
-v  詳細情報の表示


 ◆ 実行例 : ユーザー"student1"のディスククォータ状況の表示
 # quota student1


 ◆ ディスククォータの管理 - 設定手順

 1. /etc/fstab ファイルに以下のどちらかのマウントオプションを指定

マウントオプション 説明
usrquota ユーザごとのディスククォータを設定
grpquota グループごとのディスククォータを設定


 以下の例では vi /etc/fstab により、/dev/sda5の「/home」に、ユーザごとのディスククォータを設定

 /dev/sda5  /home  ext3  defaults,usrquota 1 2



 2. マウントオプションの変更の適用のため、ファイルシステムのアンマウントとマウントを実行


 # umount /home


 # mount /home



 3. ユーザごとのクォータ情報が記憶されるaquota.userを作成し、rootが読み書き可能なアクセス権を設定


 # touch /home/aquota.user


 # chmod 600 /home/aquota.user



 4. データベースの初期化

 ファイルシステムのディスク使用量をチェックし、データベースファイル(aquota.user、aquota.group)
 に記録するためには、
quotacheckコマンドを使用します。

 ◆ 構文 : quotacheck [ オプション ] ファイルシステム名

オプション 説明
-a  /etc/fstab ファイルに従い、クォータをチェック
-u ユーザ名  指定したユーザの情報のみ編集
-g グループ名  指定したグループの情報のみ編集

 # quotacheck /home



 5. クォータの有効化

 /etc/fstabファイルに設定したディスククォータを有効化するためには、
quotaonコマンドを使用します。

 ◆ 構文 : quotaon [ オプション ] ファイルシステム名

オプション 説明
-a  /etc/fstab ファイルに従い、クォータを有効化
-u  ユーザごとのディスククォータの有効化
-g  グループごとのディスククォータの有効化

 # quotaon /home



 6. ユーザごとのクォータの設定

 ユーザごとのクォータの設定を行うためには、
edquotaコマンドを使用します。

 ◆ 構文 : edquota [ オプション ] ユーザ名

オプション 説明
-t  ファイルシステムごとのソフトリミットの猶予期間を設定
-u  ユーザの設定 ( デフォルト )
-g  グループの設定

 # edquota student1

 設定が完了したらrepquotaコマンドで指定したファイルシステムのディスククォータ状況を確認可能。例 : repquota /home



Linux 技術入門

Copyright(C) 2002-2024 ネットワークエンジニアとして All Rights Reserved