CentOS機dc1上で、ユーザuser0[123]を作成し、これらにそれぞれ、45MBのソフトリミット、50MBのハードリミットを設定する。RHELでも同様に作業できる。大まかな流れは以下の通り。
まず、容量制限を設定するファイルシステムに対して、quotaが動くよう設定する。インストール時に特に指定しなければ、LVMを使って以下の様に設定されている。
[root@dc1 ~]# cat /etc/fstab /dev/VolGroup00/LogVol00 / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 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/VolGroup00/LogVol01 swap swap defaults 0 0 [root@dc1 ~]#ユーザが自由に書込みできるのは、ユーザのホームディレクトリ
/home/user[123]
以下で、これはルート(/
)に含まれている。# 検索してみると、ルートにquotaを設定することはできない、と書いてあるページもあるが、これは誤りだ。
ルートのエントリを以下の通り編集する。
[root@dc1 ~]# cp -p /etc/fstab /etc/fstab.orig
[root@dc1 ~]# awk '{if ($2=="/" ) gsub(/defaults/,"defaults,usrquota,grpquota"); print $0 }' < /etc/fstab.orig > /etc/fstab
[root@dc1 ~]# cat /etc/fstab
/dev/VolGroup00/LogVol00 / ext3 defaults,usrquota,grpquota 1 1
LABEL=/boot /boot ext3 defaults 1 2
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/VolGroup00/LogVol01 swap swap defaults 0 0
[root@dc1 ~]#
ユーザ単位の制限のみ必要で、グループ単位の制限が不要の場合は、「,grpquota
」は無くてもよい。編集し終わったら、対象となるファイルシステムを再マウントする(unmount→mount)すればよい。しかし、ルートの場合は再起動するしかない。
[root@dc1 ~]# shutdown -r now
再起動後、シングルユーザモードに移行し、
quotacheck
コマンドを実行する。シングルユーザモードで実行するのは、以下の理由による。デフォルトでは、
quotacheck
は、対象ファイルシステムをread-onlyモードで再マウントしようとするが、ルートの場合はこれが失敗する。オプション「-m
」を指定すれば、この動作を行わないが、quotacheck
コマンド実行中に対象ファイルシステムで書込みが発生すると、使用量に誤差がでてしまう。シングルユーザモードにすれば、書込みは最低限となる。シングルユーザモードに移行する。
[root@dc1 ~]# telinit 1 INIT: Switching to runlevel: 1 INIT: Sending processes the TERM signal Shutting down Cluster Module - cluster monitor: [ OK ] Shutting down ricci: [ OK ] <<略>> Telling INIT to go to single user mode. INIT: Going single user INIT: Sending processes the TERM signal INIT: Sending processes the KILL signal sh-3.2#この時点では、quotaファイル
aquota.{user,group}
は存在していない。sh-3.2# ls -l / total 146 drwxr-xr-x 2 root root 4096 Aug 20 01:54 bin drwxr-xr-x 4 root root 1024 Aug 19 19:55 boot drwxr-xr-x 10 root root 2840 Sep 17 00:28 dev drwxr-xr-x 86 root root 12288 Sep 17 00:28 etc drwxr-xr-x 2 root root 4096 Mar 30 2007 home drwxr-xr-x 14 root root 4096 Aug 20 01:54 lib drwx------ 2 root root 16384 Aug 19 19:49 lost+found <<略>> drwxrwxrwt 3 root root 4096 Sep 17 00:27 tmp drwxr-xr-x 14 root root 4096 Aug 19 19:52 usr drwxr-xr-x 23 root root 4096 Aug 19 20:01 var sh-3.2#コマンド
quotacheck
を実行する。sh-3.2# quotacheck -cugfmaグループ単位の制限が不要の場合は、「
-g
」オプションは不要。実行完了までしばらく時間がかかる。実行後は、quotaファイルが作成されている。
sh-3.2# ls -l / total 170 -rw------- 1 root root 7168 Sep 17 00:28 aquota.group -rw------- 1 root root 6144 Sep 17 00:28 aquota.user drwxr-xr-x 2 root root 4096 Aug 20 01:54 bin drwxr-xr-x 4 root root 1024 Aug 19 19:55 boot drwxr-xr-x 10 root root 2840 Sep 17 00:28 dev drwxr-xr-x 86 root root 12288 Sep 17 00:28 etc drwxr-xr-x 2 root root 4096 Mar 30 2007 home drwxr-xr-x 14 root root 4096 Aug 20 01:54 lib drwx------ 2 root root 16384 Aug 19 19:49 lost+found <<略>> drwxrwxrwt 3 root root 4096 Sep 17 00:27 tmp drwxr-xr-x 14 root root 4096 Aug 19 19:52 usr drwxr-xr-x 23 root root 4096 Aug 19 20:01 var sh-3.2#次に、対象ファイルシステムを再マウントするが、ルートの場合は再起動するしかない。
sh-3.2# shutdown -r now
再起動後、対象ファイルシステムに対してquotaが実行されているかどうかを確認する。
[root@dc1 ~]# mount /dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw,usrquota,grpquota) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) /dev/xvda1 on /boot type ext3 (rw) tmpfs on /dev/shm type tmpfs (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) [root@dc1 ~]# repquota -a *** Report for user quotas on device /dev/mapper/VolGroup00-LogVol00 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 1570628 0 0 59255 0 0 daemon -- 20 0 0 3 0 0 lp -- 16 0 0 2 0 0 smmsp -- 16 0 0 2 0 0 avahi -- 8 0 0 1 0 0 apache -- 24 0 0 3 0 0 ntp -- 16 0 0 2 0 0 rpc -- 4 0 0 1 0 0 rpcuser -- 8 0 0 1 0 0 luci -- 263348 0 0 20552 0 0 dovecot -- 8 0 0 1 0 0 webalizer -- 32 0 0 4 0 0 piranha -- 16 0 0 3 0 0 rpm -- 24324 0 0 75 0 0 ricci -- 60 0 0 8 0 0 [root@dc1 ~]#この段階では、どのユーザに対しても制限が設定されていない。
『その1・ファイルシステム毎の設定』『その2・ユーザ毎の設定』『その3・運用』
0 件のコメント:
コメントを投稿