soft hard 10 GB 12 GB www 10 GB 12 GB
quota をインストールする
# apt install quota
HDD のラベル付けを行う. まずシステムの確認を行う.
# df -h
Filesystem Size Used Avail Use% Mounted on udev 7.7G 0 7.7G 0% /dev tmpfs 1.6G 912K 1.6G 1% /run /dev/sdb2 3.6T 2.9G 3.4T 1% / tmpfs 7.7G 0 7.7G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock /dev/sdb1 511M 5.9M 506M 2% /boot/efi /dev/sda1 3.6T 28K 3.4T 1% /bk tmpfs 1.6GM 0 1.6G 0% /run/user/0 |
/dev/sdb2 (ルートシステム) に"root" というラベル名をつける
# tune2fs -L root /dev/sdb2
dev/sda1 (システムバックアップ) に"sys-bk" というラベル名をつける
# tune2fs -L sys-bk /dev/sda1
ラベル名の確認
# tune2fs -l /dev/sda1 | grep "Filesystem volume name" # tune2fs -l /dev/sdb1 | grep "Filesystem volume name"
スワップ領域 にもラベルをつける. まずスワップ領域の確認
# blkid /dev/sdb3 (sdb3 とは限らないことに注意)
/dev/sdb3: UUID="94200373-4c4b-4d74-87ae-da510c844cf3" TYPE="swap" PARTUUID="d2fa2ae7-05" |
一度スワップの削除後, ラベル名"swap" を付与して再作成
# swapoff /dev/sdb3 # mkswap -L swap /dev/sdb3 # swapon LABEL=swap
ファイルシステムに quota 機能を加える為には, ディスクの使用制限を加えるファイルシステムに オプションとして "usrquota (ユーザに制限を加える)" を加える必要がある. また, デバイス名(/dev/sd??)ではなく,LABEL 名で 記述する.入れ替え時に外付けHDD のhome とhome.bk を認識するための行も追加しておく(コメントアウトしておいて 入れ替え時にコメントアウトを外す).
ラベル名"home" のオプションとして usrquota を付ける. /etc/fstab を以下のように編集する.
# emacs /etc/fstab
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # |
/etc/fstab を編集後, quota を再起動すればシステムに反映されるが, 一度クオータの設定 を付け足した領域をアンマウントして # mount -a を実行することで即座に反映 させられる(以下は再構築作業時に行う).
# unmount /home # mount -a
以下は, 基本的に入れ替え作業時に行うが, 一部, quota の制限を 変える際に参考となると思われる.
quota はディスク制限に関するユーザ情報を quota,user もしくは aquota.user ファイルに蓄える. quota を有効にしたいディレクトリ(今回は /home) に aquota.user を作成する.
# rm /home/quota.user # quotacheck -a
quota をインストールしたときにデフォルトでは起動している. 上記の記録ファイルに情報を反映させるために quota を再起動する.
# /etc/init.d/quota restart
ソフトリミット10 G, ハードリミット12 G (WWW と同じ) にユーザ gate を設定する. それぞれの制限の意味を下に記述した.
gate にquota 制限をかければ, gate システムに よって他のユーザにも適用されることになる. gate ユーザの作成は ここを参照すること.
# edquota gate
nano が起動され, 以下のようなファイルが表示される. 2 行目の (soft=0, hard=0) を (soft=10000000, hard=12000000)(単位は kbytes) に変更する. block か inode かどちらかに制限を加えておけばいい.
Disk quotas for user gate (uid 500): Filesystem blocks soft hard inodes soft hard /dev/sdb1 23396 10000000 12000000 4914 0 0 |
gate システムによって EP サーバに登録されたユーザはディスク制限をかけられる. もし gate システムが無い場合, 各ユーザの quota を一つずつ編集するのは かなり手間のかかる作業になってしまう. そこで複数のユーザに同じ制限をか ける場合は次のコマンドを実行する.
# edquota -p user1 user2...
user1 のディスク制限が user2 以降のユーザにも反映される.
また、少々強引な方法だが一回で全てのユーザに制限をかけることも出来る.
$ cd /home/ # edquota -p gate `gate-user-list stable ` |
各ユーザのディスクの使用状態を見るには, 以下のようにする.
# repquota -u -a | lv
■オプション -a /etc/fstabに含まれる全てのファイルシステム(ユーザも含む) について表示. -v 全てのquota(未使用のものも含めて)を表示. -g groupユーザのquotaを表示 -u userのquotaを表示.(デフォルト)
最終更新日: 2024/11/03 (山本 峻大) | Copyright © 2000-2024 epcore |