[Linux]


この日記のはてなブックマーク数 このエントリーを含むはてなブックマーク

ユーザやグループが使用できるディスク容量を制限するにはquotaを使用します。quotaはユーザもしくはグループに対してかけることができます。以下quotaの設定方法。


/etc/fstabを編集。quotaをかけるパーティションにusrquota及びgrpquotaを記述します。


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


ファイルシステムを再マウントします
$ mount -o remount /var


設定が正しくされたかどうかはmountコマンドで確認することができます。
usrquotaもしくはgrpquotaが表示されていればOKです


$ mount
/dev/sda2 on / type ext3 (rw)
none on /proc type proc (rw)
usbdevfs on /proc/bus/usb type usbdevfs (rw)
/dev/sda1 on /boot type ext3 (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
none on /dev/shm type tmpfs (rw)
/dev/sda5 on /var type ext3 (rw,usrquota,grpquota)
192.168.100.1:/backup/economy_nas on /backup type nfs (ro,hard,intr,addr=192.168.100.1)


quotaをかけるパーティーションのトップに移動し、aquota.userとaquota.groupを作成。(RedHatのバージョンによってはquota.userとquota.groupになります)


$ cd /var
$ touch aquota.user
$ chmod 600 aquota.user
$ touch aquota.group
$ chmod 600 aquota.group


quotacheckをかけます。警告がでますが無視してください。


$ quotacheck -mugv /var
quotacheck: WARNING - Quotafile /var/aquota.user was probably truncated. Can't save quota settings...
quotacheck: WARNING - Quotafile /var/aquota.group was probably truncated. Can't save quota settings...
quotacheck: Scanning /dev/sda5 [/var] done
quotacheck: Checked 10681 directories and 172346 files


quotacheck後、aquota.userとaquota.groupの容量が0でなくなっているのに気づくと思います。


$ ls -lah aquota.group
-rw------- 1 root root 22k 2月 17 11:08 aquota.group

$ ls -lah aquota.user
-rw------- 1 root root 55k 2月 17 11:08 aquota.user


quotaを有効にします。(quotaを無効にするにはquotaoffコマンドを使用します。)


$ quotaon -auvg
/dev/sda5 [/var]: group quotas turned on
/dev/sda5 [/var]: user quotas turned on


各ユーザ及びグループごとにedquotaコマンドでquotaを設定します。quotaにはソフトリミットとハードリミットの二つが存在します。quotaがソフトリミットに達しますとユーザに警告がでますが、猶予期間の間ははハードリミットに達するまでは引き続き書き込みが行えます。ただしハードリミット以上に書き込むことはできません。猶予期間を超えてもソフトリミットをオーバしていますと、ソフトリミットはハードリミットに変わり、オーバした容量はファイルを開いたりするたびに削除されていきます。以下の例ではソフトリミットを100MB、ハードリミットを200MBに設定しています。


$ edquota testuser


Disk quotas for user testuser (uid 500):
Filesystem blocks soft hard inodes soft hard
/dev/sda5 0 102400 204800 1 0 0


quotaの確認をするにはrepquotaコマンドを使用します。


$ repquota -auvg
info%example.com -- 7216 0 0 519 0 0
info%example.jp -- 56 0 0 13 0 0


※root以外のユーザはquotaコマンドで自分のディスク使用状態を確認できます。
$quota
Disk quotas for user root (uid 0): none


ユーザのgrace period(猶予期間)を編集したい場合は -t オプションをつけます。
$ 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 7days 7days


以上でquotaの設定はおわりですが、quotacheckコマンドを定期的に行うようcronに追加しておきましょう。quotacheckコマンドはディスクの利用状況をスキャンし、quota.userをを更新するために使用されます。RedHatですとシステムの起動時に、/etc/rc.d/rc.sysinitで自動的に実行されますが、24時間稼動しているシステムではcronに記述しておく必要があります。



関連記事
キーボード割り当ての変更(Xwindows)
multitail - 複数ファイルをtail
コンソールの設定
fetchmail
ssh_exchange_identification: Connection closed by remote host
submission portへの対応
ncコマンド (netcat)
arpwatch
webminのmajordomoモジュール
pdflibのインストール (Perl)
VIRUS: Encrypted.Zip
yum-plugin-fastestmirror
シングルモードでの起動方法
timezoneの設定
Courier-IMAP
vsftpd - FTPユーザの制限
vncserverの設定
Gnomeでのアイコンサイズ
ワークスペースの切り替え
rdesktop - リモートのウィンドウズサーバを操作
pfxファイルの変換
Mbox形式からMaildir形式への移行
namazuでUTF8ファイルの検索
CRコードの除去
fs type nfs not supported by kernel
MTAの切り替え
qpopperをstandaloneで起動
mailコマンドで添付の送信
apopのみ許可
フォントの追加
ATOKのインストール
rhn_register - 名前またはサービスが不明です
bashのreverse search機能
pg_config.h - PHPのmakeに失敗
/etc/ld.so.conf 共有ライブラリの検索パス
IGNOREEOF - Ctrl+Dでの間違いログアウトを防ぐ
syslog - ログの一括管理
ipop3d - POP3サーバ
fml - メーリングリストへのユーザ登録と削除
コマンドプロンプトの表示設定
MP-BIOS bug
サポートされているシグナルの種類
NFSのマウントオプション
netfs
/etc/fstab - ファイルシステム情報の設定
namazuでエクセルファイルの検索
IMAP - famdのエラーメッセージ
ファイル名がハイフンから始まるファイルの削除
QpopperにおけるAPOPの設定
NFSの設定
manのパスを追加
DHCPサーバの設定
quotaによるディスク容量制限
仮想コンソール
Fedora Coreにおけるmanの文字化け
webalizer - VisitTimeout
PHPのインストール
バックアップスクリプト
Sambaアクセス時のユーザ権限の設定
Bind - リモートサーバにあるbindのバージョンを調べるには
rootのパスワードを忘れたら
xinetdによるサービスの起動
Qpopperのtimeoutを変更するには
NKF 2.0.4のインストール
ジョブの一時停止
サービスの起動と停止
.bash_profile - bashの環境変数設定ファイル
ターミナルがフリーズした場合の対処法 - ctrl+q
バックグラウンドでジョブを実行するには
ユーザアカウントをロックするには
テープデバイスによるバックアップ
標準エラーのリダリレクト
rsyncによるミラーリング
namazuで特定のディレクトリを検索対象から外す
telnetでのメール受信方法
device busy の際のumount
webalizer - 検索エンジンの設定
Bind - lame server resolving をログから消すには
at - ジョブの予約
webalizerの日本語化
テープの操作
システム起動時にプログラムを立ち上げるには
sambaの設定
ランレベルの変更
PHP3と4の共存
namazuの設定
/etc/sysconfig/i18n - 言語設定ファイル
ハードディスクの増設方法
Cron - プログラムの定期実行
bashの操作方法
広告