• 検索結果がありません。

第 4 章  ディスク管理

4.7   quota の設定

4.7.1 quota とは

quota を制御するツールを用いると、ユーザーごとやグループごとに、ファイルシステムの使用可能領域を制限 できます。制限するのはブロック数とiノード数です。1 ブロックは1KB です。iノードとは、ファイルの情報を格納 する領域で、通常は1 ファイルに1 つ使用されます。

4.7.2 quota の設定方法

/etc/fstab の修正

まず/etc/fstab を編集して、mount のオプションを加えます。quota 設定をしたいファイルシステムの記述 の第4フィールドにusrquota またはgrpquota の記述を追加します。次の例では、/home にマウントする ファイルシステムにユーザーquota、グループquota の両方のオプションを指定しています。

LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2

/etc/fstab を編集したら、該当するファイルシステムをマウントし直します。

# /bin/mount -o remount /

quota ファイルの作成

次のコマンドにより、/etc/fstab に記述されているquota を設定するファイルシステムを自動的にチェックし て、該当するファイルシステムのトップディレクトリにquota ファイル (aquota.useraquota.group) を作り ます。

# /sbin/quotacheck -vaug

quota ファイルはテキストエディタなどで編集できないので、注意してください。

また、ルートパーティションの場合は-mオプションが必要です。

4.7 quota の設定

quota ファイルの編集

edquota コマンドでquota ファイルを編集して、各ユーザー、各グループにquota を設定します。次の例では、

ユーザーfoo の設定を行っています。

# /usr/sbin/edquota -u foo

グループasianux の設定を行いたい場合には、次のコマンドを実行します

# /usr/sbin/edquota -g asianux

edquota コマンドを実行すると、デフォルトではvi が起動します(エディタは環境変数EDITOR で変更できま す)。以下は、edquota の実行後にエディタに表示される内容です。

Disk quotas for user foo (uid 500):

Filesystem blocks soft hard inodes soft hard /dev/sda5 200 300 500 51 0 0

変更するのは、soft とhard に対応する数値です。

hard は、絶対に超えることのできない最大の制限値です。

soft は、制限時間が設定されている場合に動作する制限値です。ユーザーの使用量がsoft の値を超えるとユー

ザーに警告メッセージが出され、猶予期間に入ります。猶予期間中はhard 制限値まで使用可能ですが、猶予 期間が過ぎると書き込みができなくなります。

猶予期間の設定は次のコマンドで行います。

# /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/sda5 1days 1days

quota の有効化

上記の設定後にシステムを再起動すれば有効になります。手動でquota を有効にするには、quotaon を使用 します。次の例では、/etc/fstab にquota の記述がされているすべてのファイルシステムで、ユーザー quotaとグループquota を有効にします。

# /sbin/quotaon -vaug

/dev/sda5 [/home]: group quotas turned on /dev/sda5 [/home]: user quotas turned on

無効にするには、次のコマンドを実行します。

# /sbin/quotaoff -vaug

/dev/sda5 [/home]: group quotas turned off /dev/sda5 [/home]: user quotas turned off

quota の確認

quotaの設定内容を確認するには、quotaコマンドを使用します。次の例では、ユーザーfooに対する設定内

容を確認できます。

# /usr/bin/quota -u foo

Disk quotas for user foo (uid 500):

Filesystem blocks quota limit grace files quota limit grace /dev/sda5 312* 300 500 24:00 52 0 0