2. quota を使うための設定

2-1. /etc/fstab

 /etc/fstab 中に quota を有効にする記述を行います。
 各パーティション(領域)毎に quota を用いるかどうか、適用する場合はユーザ単位(usrquota)かグループ単位(grpquota)か、あるいは両方かを記述します。

 以下は何も設定を変えていない /etc/fstab です。

# This file is edited by fstab-sync - see 'man fstab-sync' for details
/dev/VolGroup00/LogVol00 /                      ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
/dev/devpts             /dev/pts                devpts  gid=5,mode=620  0 0
/dev/shm                /dev/shm                tmpfs   defaults        0 0
/dev/VolGroup00/LogVol02 /home                  ext3    defaults 1 2

 『 /home 』パーティションに対してユーザ制限を行いたい場合は【 defaults 】の項目を【 defaults,usrquota 】と書き換えます。

# This file is edited by fstab-sync - see 'man fstab-sync' for details
/dev/VolGroup00/LogVol00 /                      ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
/dev/devpts             /dev/pts                devpts  gid=5,mode=620  0 0
/dev/shm                /dev/shm                tmpfs   defaults        0 0
/dev/VolGroup00/LogVol02 /home                  ext3    defaults,usrquota 1 2

 ※注意※ スペルは【 usrquota 】です。【 userquota 】のように誤った指定を行うと、サーバ起動時にパーティションがマウント(認識されて利用できる状態)できなくなってしまいます。書き損ねの無いよう、くれぐれも注意が必要です。

 グループに対して制限を行いたい場合は【 grpquota 】の記述を追加します。

# This file is edited by fstab-sync - see 'man fstab-sync' for details
/dev/VolGroup00/LogVol00 /                      ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
/dev/devpts             /dev/pts                devpts  gid=5,mode=620  0 0
/dev/shm                /dev/shm                tmpfs   defaults        0 0
/dev/VolGroup00/LogVol02 /home                  ext3    defaults,grpquota 1 2

 ユーザおよびグループ両方に対して制限したい場合は【 usrquota,grpquota 】の両方を記述します。

# This file is edited by fstab-sync - see 'man fstab-sync' for details
/dev/VolGroup00/LogVol00 /                      ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
/dev/devpts             /dev/pts                devpts  gid=5,mode=620  0 0
/dev/shm                /dev/shm                tmpfs   defaults        0 0
/dev/VolGroup00/LogVol02 /home                  ext3    defaults,usrquota,grpquota 1 2

2-2. quota 情報管理ファイルの作成

 次の手順で管理用のファイルを作成します。以下は /home 領域にクォータの設定をする場合です。/home の部分は各々の環境に置き換えてご利用下さい。

# touch /home aquota.user
# touch /home aquota.group
# chmod 600 /home/aquota.user /home/aquota.group

 もしユーザの制限しか行わないのであれば aquota.user の作成のみで構いません。

 quota の設定を行っているそれぞれのマウントポイントのルート(/)に対して設定が必要です。/usr ディレクトリ配下にもユーザ制限を適用させたい場合は /usr/aquota.user という設定が必要になります。

 念のため、ファイルが正しく作成されているか確認します。

# ls -l /home/aquota.*
-rw-------  1 root root 0  6月 23 16:44 /home/aquota.group
-rw-------  1 root root 0  6月 23 16:44 /home/aquota.user

2-3. quota 情報管理ファイルの更新

 quotacheck コマンドを使い quota の情報が有効になっているかどうかを確認します。

 たとえば、/home だけに適用させている場合は

# /sbin/quotacheck -vugM -F vfsv0 /home
quotacheck: WARNING -  Quotafile /home/aquota.user was probably truncated. Can't save quota settings...
quotacheck: WARNING -  Quotafile /home/aquota.group was probably truncated. Can't save quota settings...
quotacheck: Scanning /dev/mapper/VolGroup00-LogVol02 [/home] -

 このように quotacheck コマンドを用います。
 -v は詳細の表示、-u はユーザに対して quota を適用、-g はグループに対して quota を適用、-M は read/write モードでチェックをかけるという意味です。-F でファイルシステムのタイプ(詳しくは man quotacheck)を指定し、/home は対象領域です。

 全ての領域に対してチェックさせたい場合は -a オプションを用いることもできます。

# /sbin/quotacheck -vugMf -F vfsv0 -a
quotacheck: Scanning /dev/mapper/VolGroup00-LogVol00 [/] done
quotacheck: Checked 17846 directories and 152725 files
quotacheck: Scanning /dev/mapper/VolGroup00-LogVol02 [/home] done
quotacheck: Checked 71 directories and 109 files

2-4. 手動で有効にするテスト

 quota を有効にするためには quotaon コマンドを用います。以下は実行例です。

# /sbin/quotaon -avug -F vfsv0
/dev/mapper/VolGroup00-LogVol00 [/]: group quotas turned on
/dev/mapper/VolGroup00-LogVol00 [/]: user quotas turned on
/dev/mapper/VolGroup00-LogVol02 [/home]: group quotas turned on
/dev/mapper/VolGroup00-LogVol02 [/home]: user quotas turned on

 -a は quota が /etc/fstab で設定されている全領域に適用、-v は処理の経過を表示、-u はユーザに対して適用、-g はグループに対して適用、-F はファイルシステム、ここでは vfsv0 を指定します。

 ちなみに、手動で無効にしたい場合は quotaoff コマンドです。引数は quotaon と同じ意味です。

# /sbin/quotaoff -avug -F vfsv0
/dev/mapper/VolGroup00-LogVol00 [/]: group quotas turned off
/dev/mapper/VolGroup00-LogVol00 [/]: user quotas turned off
/dev/mapper/VolGroup00-LogVol02 [/home]: group quotas turned off
/dev/mapper/VolGroup00-LogVol02 [/home]: user quotas turned off

 "turn off" が無効にしました!という意味です。

2-5. サーバ起動時に自動実行されるように設定

 最後にサーバの再起動を行い、サーバ再起動後も正常に有効になっていれば問題ありません。

# /sbin/reboot

 などで再起動をかけます。  再起動後に quotaon コマンドに -p オプションをつけます。

# /sbin/quotaon -avugp -F vfsv0
group quota on / (/dev/mapper/VolGroup00-LogVol00) is on
user quota on / (/dev/mapper/VolGroup00-LogVol00) is on
group quota on /home (/dev/mapper/VolGroup00-LogVol02) is on
user quota on /home (/dev/mapper/VolGroup00-LogVol02) is on

 この実行結果は【 すべて on 】でした。
 つまり、サーバ再起動後に自動で quota が有効になっている事が分かります。



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: Thu, 23 Jun 2005 21:20:25 JST (6822d)