用戶磁盤(pán)空間的限制
不管磁盤(pán)空間有多么大,磁盤(pán)空間不夠使用似乎是一個(gè)永遠(yuǎn)的事實(shí)。Linux提供了限制用戶磁盤(pán)空間的手段,以便促使每個(gè)用戶合理有效地使用分配給他的空間。用戶磁盤(pán)空間的限制是以文件系統(tǒng)(分區(qū))為單位,而不理會(huì)用戶文件放在該文件系統(tǒng)中的哪個(gè)目錄中。
1. 修改 /etc/fstab 文件.在文件系統(tǒng)相應(yīng)的 mount 命令行中加入限額選項(xiàng)(如下的例子)。
/dev/hda7 /home ext3 defaults,usrquota,grpquota 1 22. 重新裝載 Linux 分區(qū),例如:
[root@fileserver root]# mount -o remount /home
繼續(xù)。3. 在欲加磁盤(pán)限額的文件系統(tǒng)的安裝點(diǎn)目錄建立 aquota.user 和 aquota.group 文件:
[root@fileserver root]# cd /home (/home 為單個(gè)分區(qū) /dev/hda7 的裝載點(diǎn))
[root@fileserver home]# touch aquota.user (為用戶設(shè)置磁盤(pán)限額)
[root@fileserver home]# touch aquota.group (為用戶組設(shè)置磁盤(pán)限額)
這時(shí)生成 的 aquota.user 和 aquota.group 是空的,不符合系統(tǒng)的要求。
請(qǐng)看下一步。4. 生成符合系統(tǒng)要求的 aquota.user 和 aquota.group
[root@fileserver home]# quotacheck /home (生成符合系統(tǒng)要求 的 aquota.user)
[root@fileserver home]# quotacheck -g /home (生成符合系統(tǒng)要求 的 aquota.group)
生成時(shí),有錯(cuò)誤提示。這不要緊。因?yàn)?先前 touch 生成的是一個(gè)空文件,肯定格式不對(duì)。這樣 正確的 aquota.user 和 aquota.group 生成啦。
繼續(xù)下一步:5. 為用戶設(shè)置磁盤(pán)空間限額:
[root@fileserver home]# edquota [-u] user_name
[root@fileserver home]# edquota -g group_name (對(duì)于用戶組)
本命令開(kāi)啟一個(gè) vi 窗口,為用戶設(shè)置磁盤(pán)空間和i節(jié)點(diǎn)數(shù)目的限額.其中 soft 限額為一個(gè)臨時(shí)性的限額;hard 限額為一個(gè)永久性限額(soft 限額可略大于 hard 限額),編輯方法與 vi 完全相同,以 ZZ 或 :wq 命令退出.如要給若干用戶 user1, user2,user3 指定相同的磁盤(pán)限額,可用下面的命令給這些用戶賦予與 protuser 相同的限額:
[root@fileserver home]# edquota [-u] -p protuser user1 user2 user3
[root@fileserver home]# edquota -g -p protgroup group1 group2 group3
設(shè)定soft quota和hard quota之間的時(shí)間:
[root@fileserver home]# edquota -t
出現(xiàn)一個(gè) vi 窗口:
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/hda7 7days 7days
修改成自己所需要的,并保存退出就設(shè)置這個(gè)時(shí)間啦。
您在這之后可能需要重新啟動(dòng),以使磁盤(pán)限額生效。
您可以啦,不過(guò)還要注意一些問(wèn)題,請(qǐng)繼續(xù)看下去。6. 檢查磁盤(pán)空間限制的一致性,系統(tǒng)會(huì)自動(dòng)每次重新啟動(dòng)時(shí),在檢查硬盤(pán)后進(jìn)行( /etc/rc.sysinit ),無(wú)須您親手進(jìn)行。
假若 分區(qū) 已經(jīng)以“讀寫(xiě)”方式掛上時(shí),您要小心,例如:
[root@fileserver root]# quotacheck /home
quotacheck: Quota for users is enabled on mountpoint /home so quotacheck might damage the file.
Please turn quotas off or use -f to force checking.
這時(shí), 由于某種需要,或者在某種情況,“不得不”運(yùn)行這個(gè)命令 :
[root@fileserver home]# quotacheck -mf [-u] /dev/hda7
[root@fileserver home]# quotacheck -mf -g /dev/hda7
參數(shù) -m[M] 意思是:強(qiáng)迫在“讀、寫(xiě)”模式下檢查硬盤(pán)的 quota (有一定的“正在寫(xiě)”的數(shù)據(jù)丟失可能,應(yīng)確保沒(méi)有進(jìn)程在寫(xiě)這個(gè)分區(qū)。建議在單用戶模式下進(jìn)行。)。
例如:(在平時(shí)檢查)
[root@fileserver root]# quotacheck /var/spool/ -f
quotacheck: Cannot remount filesystem mounted on /var/spool read-only so counted values might not be right.
Please stop all programs writing to filesystem or use -m flag to force checking.
[root@fileserver root]# quotacheck /var/spool/ -m
quotacheck: Quota for users is enabled on mountpoint /var/spool so quotacheck might damage the file.
Please turn quotas off or use -f to force checking.
[root@fileserver root]# quotacheck /var/spool/ -mf
[root@fileserver root]#7. 以后您如果要取消磁盤(pán)空間和i節(jié)點(diǎn)數(shù)目的限制,可用以下命令,請(qǐng)看:
[root@fileserver root]# quotaoff /home (取消磁盤(pán)空間限制。)
[root@fileserver root]# quotaon /home (現(xiàn)在啟動(dòng)磁盤(pán)空間限制。)
[root@fileserver root]# quotaon /home (已經(jīng)啟動(dòng)磁盤(pán)空間限制啦,所以出現(xiàn)以下錯(cuò)誤:)
quotaon: using /home/aquota.group on /dev/hda7: Device or resource busy
quotaon: using /home/aquota.user on /dev/hda7: Device or resource busy
Good Luck to YOU !
古公 gugong@21cn.com 2002-02-21
Updated on 2002-03-21
Updated on 2002-11-25
一直沒(méi)有時(shí)間把“磁盤(pán)限額”的效果展現(xiàn)出來(lái)的,現(xiàn)在貼上來(lái):
The original message was received at Sun, 6 Oct 2002 17:58:51 +0800
from localhost.localdomain [127.0.0.1]
with id g969wp302751
----- The following addresses had transient non-fatal errors -----
----- Transcript of session follows -----
procmail: Quota exceeded while writing "/var/spool/mail/zhengtx"... Deferred: local mailer (/usr/bin/procmail) exited with EX_TEMPFAIL
Warning: message still undelivered after 4 hours
Will keep trying until message is 5 days old
550 5.1.1... User unknown Updated on 2002-10-07
聯(lián)系客服