第17章 ディスク割り当て
quota
RPM をインストールしておく必要があります。
注記
17.1. ディスククォータの設定
/etc/fstab
を修正することで、ファイルシステムごとのクォータを有効にします。- ファイルシステムを再マウントします。
- クォータデータベースファイルを作成して、ディスク使用状況テーブルを生成します。
- クォータポリシーを割り当てます。
17.1.1. クォータの有効化
手順17.1 クォータの有効化
- root でログインします。
/etc/fstab
ファイルを編集します。usrquota
またはgrpquota
のどちらかのオプション、またはそれら両方をクォータが必要となるファイルシステムに追加します。
例17.1 /etc/fstab
の編集
vim
を使用するには、以下を入力します。
#
vim /etc/fstab
例17.2 クォータの追加
/dev/VolGroup00/LogVol00 / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0 none /proc proc defaults 0 0 none /sys sysfs defaults 0 0 /dev/VolGroup00/LogVol02 /home ext3 defaults,usrquota,grpquota 1 2 /dev/VolGroup00/LogVol01 swap swap defaults 0 0 . . .
/home
ファイルシステムがユーザーとグループの両方のクォータを有効にしています。
注記
/home
パーティションが作成されていると想定しています。root (/
) パーティションは /etc/fstab
ファイル内でクォータポリシーを設定するために使用できます。
17.1.2. ファイルシステムの再マウント
usrquota
または grpquota
オプションのどちらか、またはそれら両方を追加した後には、fstab
エントリーが修正されたそれぞれのファイルシステムを再マウントします。ファイルシステムがどのプロセスでも使用されていない場合は、以下のメソッドのいずれかを使用します。
umount
コマンドを実行して、その後にmount
コマンドを発行してファイルシステムを再マウントします。各種ファイルシステムのマウントとアンマウント用の特定の構文に関しては、umount
とmount
の両方のman
ページを参照してください。mount -o remount file-system
コマンド (ここでfile-system
はファイルシステムの名前) を実行してファイルシステムを再マウントします。たとえば、/home
ファイルシステムを再マウントするには、mount -o remount /home
コマンドを実行します。
17.1.3. クォータデータベースファイルの作成
quotacheck
コマンドを実行します。
quotacheck
コマンドは、クォータが有効にされているファイルシステムを検証し、現在のディスク使用状況テーブルをファイルシステムごとに作成します。このテーブルは、ディスク使用状況についてのオペレーティングシステム用コピーを更新するのに使用されます。また、ファイルシステムのディスククォータファイルが更新されます。
注記
quotacheck
コマンドは、ディスク使用状況テーブルがマウント時に自動的に完成するため、XFS には全く影響を与えません。詳細情報については、xfs_quota(8)
の man ページを参照してください。
手順17.2 クォータデータベースファイルの作成
- 以下のコマンドを使用してファイルシステムでクォータファイルを作成します。
#
quotacheck -cug /file system
- 以下のコマンドを使用して、ファイルシステムごとに現在のディスクの使用率の表を生成します。
#
quotacheck -avug
- c
- クォータファイルが、クォータを有効化して各ファイルシステムに作成される必要があることを指定します。
- u
- ユーザークォータを確認します。
- g
- グループクォータをチェックします。
-g
のみを指定すると、グループクォータファイルが作成されます。
-u
または -g
オプションのいずれかを指定している場合は、ユーザークォータファイルのみが作成されます。
- a
- クォータが有効にされた、ローカルマウントのファイルシステムをすべてチェック
- v
- クォータチェックの進行状態について詳細情報を表示
- u
- ユーザーディスククォータの情報をチェック
- g
- グループディスククォータの情報をチェック
quotacheck
の実行が終了すると、有効なクォータ (ユーザーまたはグループ、あるいは両方) に対応するクォータファイルには、/home
などのクォータが有効なローカルマウントの各ファイルシステム用のデータが追加されます。
17.1.4. ユーザーごとのクォータ割り当て
edquota
コマンドを使用したディスククォータの割り当てです。
- ユーザーは、ユーザークォータを設定する前に存在する必要があります。
手順17.3 ユーザーごとのクォータ割り当て
- ユーザークォータを割り当てるには、以下のコマンドを使用します。
#
edquota username
クォータを割り当てるユーザーで username を置き換えます。 - ユーザーのクォータが設定されていることを確認するには、以下のコマンドを使用します。
#
quota username
例17.3 ユーザーへのクォータの割り当て
/etc/fstab
内で /home
パーティション (以下の例では /dev/VolGroup00/LogVol02
) 用に有効になっていて、コマンド edquota testuser
が実行されると、システムのデフォルトとして設定されているエディターに以下が表示されます。
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440436 0 0 37418 0 0
注記
EDITOR
環境変数で定義されているテキストエディターが edquota
によって使用されます。このエディターを変更するには、使用している ~/.bash_profile
ファイル内で EDITOR
環境変数を選択するエディターへの完全パスに設定します。
inodes
の列は、現在ユーザーが使用している inode の数を示します。最後の列は、ファイルシステム上のユーザーに対するソフトおよびハードの inode 制限を設定するために使用されます。
例17.4 必要な制限の変更
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440436 0 0 37418 0 0
#
quota testuser
Disk quotas for user username (uid 501): Filesystem blocks quota limit grace files quota limit grace /dev/sdb 1000* 1000 1000 0 0 0
17.1.5. グループごとのクォータ割り当て
- グループは、グループクォータを設定する前に存在する必要があります。
手順17.4 グループごとのクォータ割り当て
- グループクォータを設定するには、以下のコマンドを使用します。
#
edquota -g groupname
- グループクォータが設定されていることを確認するには、以下のコマンドを使用します。
#
quota -g groupname
例17.5 グループへのクォータの割り当て
devel
グループのグループクォータを設定するには、以下のコマンドを使用します。
#
edquota -g devel
Disk quotas for group devel (gid 505): Filesystem blocks soft hard inodes soft hard /dev/VolGroup00/LogVol02 440400 0 0 37418 0 0
#
quota -g devel