#norelated #navi(FC4/quota) #contents ------------------------------ * 3.quota の運用によるディスク容量制限 [#j6cc55c2] ** 3-1. repquota コマンドによる使用状況の確認。 [#b30b15c7] repquota コマンドを用いることで、どのユーザがどれだけファイルやiノードを使用しているか、設定の上限を超過しているかなど確認することが出来ます。 全ての領域を確認する場合は -a オプションを使います。 # /usr/sbin/repquota -a /home などの特定パーティション(領域)の状態を示したいときは、パーティション名を repquota の後につけます。以下は実行例です。 # /usr/sbin/repquota /home/ *** Report for user quotas on device /dev/mapper/VolGroup00-LogVol02 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 77912 0 0 6 0 0 zem -- 1364132 0 0 120 0 0 akane -- 5848 0 0 16 0 0 sakura -- 104 0 0 12 0 0 ayaka -- 104 0 0 12 0 0 yayoi -- 627460 0 0 13 0 0 Block grace time はファイルサイズのソフトリミットです。7 days となっているので、ソフトリミットで設定した値(単位は kB=キロバイト)を超えても7日使えるという意味です。&br; 数値の【 0 】は無制限です。初期状態ではどのアカウントに対しても制限はありません。 Inode grace time はiノード数のソフトリミットです。ソフトリミットで指定したiノード数を超えても7日間の猶予が与えられます。&br; Block limits はファイルの使用状況です。File Limits はiノード数の使用状況です。 User はユーザ名です。-- となっている箇所は、超過したら + に変わります。ユーザの超過は +-、グループの超過は -+、両方の超過は ++ として表示されます。 その横に Used と表示されているのが、現在使用されているファイル容量(単位は kB=キロバイト)です。ちなみに 1024 kB = 1 MB です。5 MB の制限をしたい場合は、1,024 * 5 = 5120 と記述する必要があります。 ** 3-2. edquota コマンドによる quota の制限 [#wc50af8e] ユーザに対して容量の制限をするのは 【 edquota -u ユーザ名】です。 たとえば、【 ayaka 】アカウントの制限を編集したい場合は # /usr/sbin/edquota -u ayaka と実行します。実行後は次のような画面が開きます。 Disk quotas for user ayaka (uid 503): Filesystem blocks soft hard inodes soft hard /dev/mapper/VolGroup00-LogVol00 0 0 0 0 0 0 /dev/mapper/VolGroup00-LogVol02 104 0 0 12 0 0 Filesystem がパーティション(領域)名です。blocks が現在使用しているファイルサイズ(単位は kB)、左から soft が容量に対するソフトリミット、hard が容量に対する上限、soft がiノードに対するソフトリミット、hard がiノード数の上限です。 Disk quotas for user ayaka (uid 503): Filesystem blocks soft hard inodes soft hard /dev/mapper/VolGroup00-LogVol00 0 0 0 0 0 0 /dev/mapper/VolGroup00-LogVol02 104 1024 2048 12 0 0 この例では「/dev/mapper/VolGroup00-LogVol02」という領域に対してソフトリミット 1,024 kB(1MB)、ハードリミット2,048kb(2MB)を設定した例です。 設定後の状況がどうなっているかは quota コマンドで確認できます。 ayaka アカウントの quota 制限状況を確認するには # /usr/bin/quota -u ayaka Disk quotas for user ayaka (uid 503): Filesystem blocks quota limit grace files quota limit grace /dev/mapper/VolGroup00-LogVol02 104 1024 2048 12 0 0 このように確認できます。 グループに対しての制限は edquota に -g (group)オプションをつけます。 # /usr/sbin/edquota -g stellvia 設定方法はユーザとまったく変わりません。適用範囲が個々のユーザに対してか、それともグループ全体に対して適用されるかどうかです。編集画面も全く同じです。 Disk quotas for group stellvia (gid 506): Filesystem blocks soft hard inodes soft hard /dev/mapper/VolGroup00-LogVol00 0 0 0 0 0 0 /dev/mapper/VolGroup00-LogVol02 627564 0 0 25 0 0 stellvia グループ quota 制限状況を確認するには -g (group)オプションをつけます。 # /usr/bin/quota -g stellvia Disk quotas for group stellvia (gid 506): Filesystem blocks quota limit grace files quota limit grace /dev/mapper/VolGroup00-LogVol02 627564* 0 2048 25 0 0 ちなみに、ファイルの上限に達すると warning, user block quota exceeded とエラーがでます。FTP 中に上記のようなエラーが出たら、クォータの容量を超過していないか調べた方がいいです。 ** 3-3. quota 設定のコピー [#q5a7207c] 設定のコピーは edquota に -p オプションを使います。 ayaka アカウントの quota 設定を yayoi と sakura に設定したい場合 # /usr/sbin/edquota -p ayaka -u yayoi sakura です。 (-p コマンドの実行前の repquota) *** Report for user quotas on device /dev/mapper/VolGroup00-LogVol02 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 77912 0 0 6 0 0 zem -- 1364132 0 0 120 0 0 akane -- 5848 0 0 16 0 0 sakura -- 104 0 0 12 0 0 ayaka -- 104 1024 2048 12 0 0 yayoi -- 627460 0 0 13 0 0 (-p コマンドの実行後=設定がコピーされています) Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 77912 0 0 6 0 0 zem -- 1364132 0 0 120 0 0 akane -- 5848 0 0 16 0 0 sakura -- 104 1024 2048 12 0 0 ayaka -- 104 1024 2048 12 0 0 yayoi +- 627460 1024 2048 7days 13 0 0 ayaka アカウントの情報が sakura と yayoi にコピーされました。&br; yayoi アカウントは容量を超過しているので、名前の横のステータスが +- となっています。 ** 3-4. 猶予期間の変更 [#o8a06c0b] ソフトリミットの猶予期間は、初期状態のままでは 7 days (7日間)です。 変更するためには【 edquota -t 】を実行します。 # /usr/sbin/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/mapper/VolGroup00-LogVol00 7days 7days /dev/mapper/VolGroup00-LogVol02 7days 7days パーティション(ボリューム)毎に変更をかけることが出来ます。&br; 運用されている環境に応じて、適時変更してご利用ください。 ** 3-5 /etc/warnquota.conf について [#q0d1749f] メールで警告を出す際の諸設定です(工事中、ちょっとまってね。。。) #navi(FC4/quota)