quotaの確認
quotaのインストールの確認。Vine等ではインストールされている
$ rpm -qa | grep quota
Vine3.0 3.1はkernelでquotaがoffになっているので再コンパイルが必要 kernel再コンパイルは
# make mrproper # make xconfig
ここでFilesystem -> quotaをONにする または.configで
# # File systems # CONFIG_QUOTA=y CONFIG_QFMT_V2=y <--Raidのときは必要のようだ を確認
# make dep # make bzlilo # make modules # make modules_install # mv /vmlinuz /boot/
/etc/lilo.confを修正
/etc/fstabを編集して
/dev/hda1 / ext3 defaults,usrquota 1 1
今回は/にかけるので、/に quota.user と aquota.userというファイルを作成しrootのみ読み書き可にする
# cd / # touch quota.user # chmod 600 quota.user # touch aquota.user # chmod 600 aquota.user
次のコマンドを実行
# mount -o remount / # /sbin/quotacheck -muv(g) / <--グループがあるとgをつける quotacheck: WARNING - Quotafile //aquota.user was probably truncated. Can't save quota settings... quotacheck: Scanning /dev/hda1 [/] done quotacheck: Checked 6601 directories and 109325 files
WARNINGを無視して/aquota.userか/quota.userのどちらかの容量が0でなけれがOK
システム再起動。(quota起動のため)
# reboot
# /usr/sbin/edquota okada
viで以下のような内容が開く
Disk quotas for user okada (uid 501): Filesystem blocks soft hard inodes soft hard /dev/hda1 168 1024 1100 29 0 0 blocks: kb単位で現在使用されている容量 soft: kb単位で使用許可する容量。初期値は0なので、ここを指定。 hard: kb単位で使用許可絶対容量。あとでGrace Periodで指定する期限までは 後半のsoft、hardはinodeについての制限を規定する。しないときは0でよい。 この容量までは使用が認められる。softはこの値を超える、Grace Period期限経つ とエラーメッセージが出力される。初期値は0なので、ここを指定する。 inodes 以降も同じ意味だがこちらはfile数を指定する。soft、hardすべてにおいて 0は指定なしを意味する。
Grace Periodを設定する
# /usr/sbin/edquota -t
viで以下のような内容が開く
race period before enforcing soft limits for users: Time units may be: days, hours, minutes, or seconds Filesystem Block grace period Inode grace period /dev/hda1 7 days 7 days
容量、ファイル数の制限がsoftの値を超えたときメッセージを出すまで期限を設定
/dev/hda1 0 0
にする。
全体の確認コマンド
# /usr/sbin/repquota -a
個人の確認コマンド $ quota
次のコマンドにより testというユーザの条件をtest2にコピー。
# /usr/sbin/edquota -p test test2
以下のコマンドは不要かも 一週間1回くらいはquotacheck -aを実行し、データベースを更新
crontab -e
* * * * 0 /sbin/quotacheck -a <---Vine2.6のバージョンは-aがあったがVine3.xではなくなっている
Vine3.xからはquotacheckは一度quotaoffしてから
# /sbin/quotaoff / # /sbin/quotacheck -muv(g) / # /sbin/quotaon /
強制的に行うには
# /sbin/quotacheck -mf /
グループにquotaをかける(/home以下に)[この場合はグループ全体での容量制限で、個人ではない]
/etc/fstabを編集
LABEL=/home /home ext3 defaults,grpquota 1 2
(ユーザ、グループ両方のときはdefaults,grpquota,usrquotaとする)
# cd /home # touch quota.group # chmod 600 quota.group # touch aquota.group # chmod 600 aquota.group # mount -o remount /home # quotacheck -mvu(g) /home <---ユーザだけの時はgは不要 Scanning /home [/home] done Checked 50 directories and 175 files Using quotafile /home/quota.group Updating in-core group quotas # reboot
# /usr/sbin/edquota -g student # /usr/sbin/edquota -g -t Grace period before enforcing soft limits for groups: Time units may be: days, hours, minutes, or seconds Filesystem Block grace period Inode grace period /dev/hda3 0 days 0 days # /usr/sbin/repquota -a
Block limits File limits group used soft hard grace used soft hard grace root -- 32992 0 0 25 0 0 staff -- 2636 0 0 199 0 0 student -- 4 5000 5000 1 0 0
Block limits:容量で制限(Kb) File limits:ファイル数で制限 0の時は制限なし。