修改/etc/vfstab,把需要限制的文件系統(tǒng)的mount options改為rq
到文件系統(tǒng)的頂,執(zhí)行命令touch quotas和chmod 600 quotas
quotaon -v -a
設(shè)定用戶可使用的空間(edquota 用戶名)
[b]限制用戶硬盤使用空間[/b]
UNIX作為一種多用戶系統(tǒng),它允許多個用戶共同使用系統(tǒng)的資源,包括系統(tǒng)的內(nèi)存,CPU和硬盤。在默認(rèn)情況下,系統(tǒng)并不會限制每個用戶可以使用硬盤空間的大小,所以如果用戶惡意使用硬盤,或用戶由于疏忽,將硬盤空間全部占用,將導(dǎo)致其他用戶無法使用硬盤,從而使系統(tǒng)性能下降,甚至有崩潰的危險。
其實,UNIX提供的quota系列命令可以幫助我們解決這個問題,這些命令包括:
quota : 顯示用戶的硬盤限額和使用情況。
edquota : 為每個用戶設(shè)定硬盤限額。
quotaon: 啟動文件系統(tǒng)硬盤限額服務(wù)
quotaoff : 關(guān)閉文件系統(tǒng)硬盤限額服務(wù)
repquota : 顯示當(dāng)前硬盤限額狀態(tài)
配置這項服務(wù)的方法很簡單。但在使用硬盤限額服務(wù)之前,我們要明白硬限制和軟限制這兩個概念。所謂硬限制是指對資源節(jié)點和數(shù)據(jù)塊的絕對限制,在任何情況下都不允許用戶超過這個限制;而軟限制是指用戶可以在一定時間范圍內(nèi)(默認(rèn)時為一周,在/usr/include/sys/fs/ufs_quota.h文件中設(shè)置)超過軟限制的額度,在硬限制的范圍內(nèi)繼續(xù)申請資源,同時系統(tǒng)會在用戶登錄時給出警告信息和仍可繼續(xù)申請資源剩余時間。如果達(dá)到時間期限,用戶的硬盤使用仍超過軟限制的額度,則系統(tǒng)將不允許用戶再申請硬盤資源。
Syue.com
明白了這兩個概念,我們就可以配置硬盤限額服務(wù)了,首先我們必須在要限制的文件系統(tǒng)的根目錄下建立一名字為quotas的文件,該文件的所有者應(yīng)是root,且其它用戶不可以對它進(jìn)行寫操作。方法是:
# cd /home (進(jìn)入文件系統(tǒng)根目錄,注意并不是系統(tǒng)根目錄,本例為/home目錄)
# touch quotas(創(chuàng)建一名字為quotas的空文件)
# chmod 644 quotas (更改文件屬性,使只有root可以對它進(jìn)行寫操作)
然后,我們編輯/etc/vfstab文件,找到要進(jìn)行硬盤限額服務(wù)的文件系統(tǒng),并將
mount option字段的值設(shè)為rq,然后并存盤退出。
完成這兩步后,我們使用edquota命令為每個用戶設(shè)置硬盤限額,在root權(quán)限下輸入以下命令:
#edquota username
這時系統(tǒng)會自動生成一個臨時文件,并且有如下內(nèi)容:
fs /users blocks (soft = 0, hard = 0) inodes (soft = 0, hard = 0)
其中fs字段表明使用硬盤限額的文件系統(tǒng),本例為/users,block和inodes表明用戶可以使用的硬盤千字節(jié)數(shù)和I節(jié)點數(shù),即用戶可使用的硬盤空間和可建立的文件數(shù),soft和hard分別對于前面提及的軟限制和硬限制。
內(nèi)容來自"歲月聯(lián)盟"
編輯這個文件,把軟,硬限制設(shè)置到合適的數(shù)值,然后存盤退出。這時我們可以看到quotas文件的大小已經(jīng)被改變,說明用戶的限額已經(jīng)儲存。重復(fù)這條命令,給每一個用戶都配置硬盤限額。另外,如果我們分配給用戶的硬盤限額都相同,我們可以使用 “-p” 參數(shù)而不用為每個用戶都編輯一個文件,它的使用方法是:
#edquota -p reference-usernameusername
編輯完文件后,我們就可以用quotaon來啟動服務(wù)了,在root權(quán)限下輸入
#quotaon /users
就可以啟動限額服務(wù)。如果我們要查看各個用戶的當(dāng)前使用情況,可以使用
repquota 命令,在root權(quán)限下輸入:
#repquota /users
系統(tǒng)會顯示:
。。。
從中我們可以很容易看到用戶的硬盤和文件的使用情況以及超過軟限制后仍可申請資源的時間等等。
當(dāng)然我們可以用quotaoff取消硬盤限額服務(wù)。另外,系統(tǒng)還提供quotacheck 命令對限額的一致性進(jìn)行檢查。