配置磁盤(pán)配額
要實(shí)現(xiàn)磁盤(pán)配額,請(qǐng)使用以下步驟:
1. 修改 /etc/fstab來(lái)啟用每個(gè)文件系統(tǒng)的配額
2. 重新掛載文件系統(tǒng)
3. 創(chuàng)建配額文件,重新生成磁盤(pán)用量表
4. 分配配額
以上步驟在下面各節(jié)中被詳細(xì)討論。
以根用戶(hù)身份使用你喜歡的編輯器來(lái)給需要配額的文件系統(tǒng)添加 usrquota 和(或)grpquota 選項(xiàng):
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/hda2 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0 |
在上面的例子中,/home 文件系統(tǒng)上啟用了用戶(hù)和組群配額。
添加了 userquota 和 grpquota 選項(xiàng)后,重新掛載每個(gè)相應(yīng) fstab 條目被修改的文件系統(tǒng)。如果某文件系統(tǒng)沒(méi)有被任何進(jìn)程使用,使用 umount 命令后再緊跟著 mount 命令來(lái)重新掛載這個(gè)文件系統(tǒng)。如果某文件系統(tǒng)正在被使用,要重新掛載該文件系統(tǒng)的最簡(jiǎn)捷方法是重新引導(dǎo)系統(tǒng)。
重新掛載了每個(gè)啟用了配額的文件系統(tǒng)后,系統(tǒng)現(xiàn)在就能夠使用磁盤(pán)配額了。不過(guò),文件系統(tǒng)本身尚且不能支持配額。下一步是運(yùn)行 quotacheck 命令。
quotacheck 命令檢查啟用了配額的文件系統(tǒng),并為每個(gè)文件系統(tǒng)建立一個(gè)當(dāng)前磁盤(pán)用來(lái)的表。該表會(huì)被用來(lái)更新操作系統(tǒng)的磁盤(pán)用量文件。此外,文件系統(tǒng)的磁盤(pán)配額文件也被更新。
要在文件系統(tǒng)上創(chuàng)建配額文件(aquota.user 和 aquota.group),使用 quotacheck 命令的 -c 選項(xiàng)。例如,如果用戶(hù)和組群配額都為 /home 分區(qū)啟用了,在 /home 目錄下創(chuàng)建這些文件:
-a 選項(xiàng)意味著在 /etc/mtab 中所有掛載了的非 NFS 文件系統(tǒng)都會(huì)被檢查來(lái)決定是否啟用了配額。-c 選項(xiàng)指定每個(gè)啟用了配額的文件系統(tǒng)都應(yīng)該創(chuàng)建配額文件,-u 選項(xiàng)指定檢查用戶(hù)配額,-g 選項(xiàng)指定檢查組群配額。
如果 -u 或 -g 選項(xiàng)被指定,只有用戶(hù)配額文件被創(chuàng)建。如果只指定了 -g 選項(xiàng),只有組群配額文件會(huì)被創(chuàng)建。
文件被創(chuàng)建后,運(yùn)行以下命令來(lái)生成每個(gè)啟用了配額的文件系統(tǒng)的當(dāng)前磁盤(pán)用量表:
所用選項(xiàng)如下:
· a — 檢查所有啟用了配額的在本地掛載的文件系統(tǒng)
· v — 在檢查配額過(guò)程中顯示詳細(xì)的狀態(tài)信息
· u — 檢查用戶(hù)磁盤(pán)配額信息
· g — 檢查組群磁盤(pán)配額信息
quotacheck 運(yùn)行完畢后,和啟用配額(用戶(hù)和/或組群)相應(yīng)的配額文件中就會(huì)寫(xiě)入用于每個(gè)啟用了配額的文件系統(tǒng)(如 /home)的數(shù)據(jù)。
最后一步是使用 edquota 命令分配磁盤(pán)配額。
要為用戶(hù)配置配額,以根用戶(hù)身份在 shell 提示下執(zhí)行以下命令:
為每個(gè)你想實(shí)現(xiàn)配額的用戶(hù)執(zhí)行該步驟。例如,如果在 /etc/fstab 中為 /home 分區(qū)(/dev/hda3)啟用了配額,執(zhí)行了 edquota testuser 命令后,系統(tǒng)默認(rèn)的編輯器中就會(huì)有如下顯示:
Disk quotas for user testuser (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda3 440436, 0 0 37418 0 0 |
|
注記 |
|
edquota 使用 EDITOR 環(huán)境變量所定義的文本編輯器。要改變這個(gè)編輯器,把 EDITOR 環(huán)境變量設(shè)置為到你選中的編輯器的完整路徑。 |
第一列是啟用了配額的文件系統(tǒng)的名稱(chēng)。第二列顯示了用戶(hù)當(dāng)前使用的塊數(shù)。隨后的兩列用來(lái)設(shè)置用戶(hù)在該文件系統(tǒng)上的軟硬塊限度。inodes 列顯示了用戶(hù)當(dāng)前使用的內(nèi)節(jié)點(diǎn)數(shù)量。最后兩列用來(lái)設(shè)置用戶(hù)在該文件系統(tǒng)上的軟硬內(nèi)節(jié)點(diǎn)限度。
硬限是用戶(hù)或組群可以使用的磁盤(pán)空間的絕對(duì)最大值。達(dá)到了該限度后,磁盤(pán)空間就不能再被用戶(hù)或組群使用了。
軟限定義可被使用的最大磁盤(pán)空間量。和硬限不同的是,軟限可以在一段時(shí)期內(nèi)被超過(guò)。這段時(shí)期被稱(chēng)為 過(guò)渡期(grace period)。過(guò)渡期可以用秒鐘、分鐘、小時(shí)、天數(shù)、周數(shù)、或月數(shù)表示。
如果以上值中的任何一個(gè)被設(shè)置為 0,那個(gè)限度就不會(huì)被設(shè)置。在文本編輯器中,改變想要的限度。如:,
Disk quotas for user testuser (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda3 440436 500000 550000 37418 0 0 |
要校驗(yàn)用戶(hù)的配額是否被設(shè)置,使用以下命令:
配額還可以根據(jù)組群來(lái)分配。例如,要為 devel 組群設(shè)置組群配額,使用以下命令(在設(shè)置組群配額前,該組群必須存在):
以上命令在文本編輯器中顯示現(xiàn)存的組群配額:
Disk quotas for group devel (gid 505):
Filesystem blocks soft hard inodes soft hard
/dev/hda3 440400 0 0 37418 0 0 |
修改限度,保存文件,然后配置配額。
要校驗(yàn)組群配額是否被設(shè)置,使用以下命令:
要根據(jù)每個(gè)啟用了組群的文件系統(tǒng)來(lái)分配配額,使用以下命令:
和另一個(gè) edquota 命令相似,這個(gè)命令也會(huì)在文本編輯器中打開(kāi)當(dāng)前的文件系統(tǒng)配額:
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/hda3 7days 7days |
改變塊過(guò)渡期或內(nèi)節(jié)點(diǎn)過(guò)渡期,保存對(duì)文件的改變,然后退出文本編輯器。