ディスククォータを設定する2011/07/12 |
|
ディスククォータを設定してディスクの使用量を制限します。
例として、/home にマウントした ext4 ファイルシステムに対してクォータを設定します。
|
|
| [1] | クォータツールをインストールします。 |
|
[root@dlp ~]# yum -y install quota
|
| [2] | マウントオプションを追加してクォータを有効にします。 |
|
# ユーザークォータとグループクォータのオプションを付加して再マウント [root@dlp ~]# umount /home [root@dlp ~]# mount -o usrquota,grpquota /dev/sdb1 /home
[root@dlp ~]#
vi /etc/fstab # 起動時も有効となるようオプション追記
/dev/mapper/VolGroup-lv_root / ext4 defaults 1 1
UUID=cf3f9660-e40d-459d-8763 /boot ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/sdb1 /home xfs defaults,usrquota,grpquota 0 0
|
| [3] | ユーザークォータを設定します。例として「cent」ユーザーにクォータを適用します。 |
|
# 設定確認 [root@dlp ~]# quotaon -ap group quota on /home (/dev/sdb1) is off user quota on /home (/dev/sdb1) is on # Softリミット 4G, Hardリミット 5G を設定 (キロバイト単位で指定) Disk quotas for user cent (uid 500): Filesystem blocks soft hard inodes soft hard /dev/sdb1 16 4096000 5120000 7 0 0 # 設定確認 [root@dlp ~]# repquota -au
*** Report for user quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 20 0 0 2 0 0
cent -- 16 4096000 5120000 4 0 0
|
| [4] | あるユーザーへの既存設定を他ユーザーにも適用する場合は以下のように設定します。 |
|
# 「cent」ユーザーのクォータ設定を「fedora」ユーザーにも適用 [root@dlp ~]# edquota -p cent fedora [root@dlp ~]# repquota -au
*** Report for user quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 20 0 0 2 0 0
cent +- 5120000 4096000 5120000 6days 7 0 0
fedora -- 4 4096000 5120000 4 0 0
|
| [5] | グループクォータを設定します。例として「cent」グループにクォータを適用します。 |
|
# 設定確認 [root@dlp ~]# quotaon -ap group quota on /home (/dev/sdb1) is on user quota on /home (/dev/sdb1) is on # Softリミット 4G, Hardリミット 5G を設定 (キロバイト単位で指定)
Disk quotas for group cent (gid 500):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 5120000 4096000 5120000 7 0 0
# 設定確認 [root@dlp ~]# repquota -ag
*** Report for group quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
Group used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 20 0 0 2 0 0
cent +- 5120000 4096000 5120000 6days 7 0 0
fedora -- 16 0 0 4 0 0
|
| [6] | Warnquota を設定すると、制限を超えて使用しているユーザーに警告メールを送信することができます。 メールを送信するため、SMTPサーバーが稼働していることが前提になります。 |
|
[root@dlp ~]#
vi /etc/quotatab # クォータを設定したデバイスと要約を追記
/dev/sdb1: Your Home Director
# メール送信元のドメイン名を修正 [root@dlp ~]# sed -i -e "s/example\.com/server\.world/g" /etc/warnquota.conf
# warnquota 実行 [root@dlp ~]# warnquota -s
# warnquota 実行時に制限を超えているユーザーには以下のようなメールが送信される
From root@dlp.srv.world Fri Oct 23 09:38:10 2011
Return-Path: <root@dlp.srv.world>
X-Original-To: cent
Delivered-To: cent@dlp.srv.world
From: root@srv.world
Reply-To: root@srv.world
Subject: NOTE: You are exceeding your allocated disk space limits
To: cent@dlp.srv.world
Cc: root@srv.world
Date: Fri, 23 Oct 2011 09:38:10 +0900 (JST)
Status: R
Your disk usage has exceeded the agreed limits on this server
Please delete any unnecessary files on following filesystems:
Your Home Director (/dev/sdb1)
Block limits File limits
Filesystem used soft hard grace used soft hard grace
/dev/sdb1 +- 5000M 4000M 5000M 6days 7 0 0
root@srv.world
|
| Sponsored Link |
|
|