歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> Unix基礎知識

設置Solaris用戶目錄和硬盤空間的使用

限制用戶目錄使用空間

修改/etc/vfstab,把需要限制的文件系統的mount options改為rq

到文件系統的頂,執行命令touch quotas和chmod 600 quotas

quotaon -v -a

設定用戶可使用的空間(edquota 用戶名)

限制用戶硬盤使用空間

UNIX作為一種多用戶系統,它允許多個用戶共同使用系統的資源,包括系統的內存,CPU和硬盤。在默認情況下,系統並不會限制每個用戶可以使用硬盤空間的大小,所以如果用戶惡意使用硬盤,或用戶由於疏忽,將硬盤空間全部占用,將導致其他用戶無法使用硬盤,從而使系統性能下降,甚至有崩潰的危險。

其實,UNIX提供的quota系列命令可以幫助我們解決這個問題,這些命令包括:

quota :顯示用戶的硬盤限額和使用情況。

edquota :為每個用戶設定硬盤限額。

quotaon:啟動文件系統硬盤限額服務

quotaoff :關閉文件系統硬盤限額服務

repquota :顯示當前硬盤限額狀態

配置這項服務的方法很簡單。但在使用硬盤限額服務之前,我們要明白硬限制和軟限制這兩個概念。所謂硬限制是指對資源節點和數據塊的絕對限制,在任何情況下都不允許用戶超過這個限制;而軟限制是指用戶可以在一定時間范圍內(默認時為一周,在/usr/include/sys/fs/ufs_quota.h文件中設置)超過軟限制的額度,在硬限制的范圍內繼續申請資源,同時系統會在用戶登錄時給出警告信息和仍可繼續申請資源剩余時間。如果達到時間期限,用戶的硬盤使用仍超過軟限制的額度,則系統將不允許用戶再申請硬盤資源。

明白了這兩個概念,我們就可以配置硬盤限額服務了,首先我們必須在要限制的文件系統的根目錄下建立一名字為quotas的文件,該文件的所有者應是root,且其它用戶不可以對它進行寫操作。方法是:

# cd /home (進入文件系統根目錄,注意並不是系統根目錄,本例為/home目錄)

# touch quotas(創建一名字為quotas的空文件)

# chmod 644 quotas (更改文件屬性,使只有root可以對它進行寫操作)

然後,我們編輯/etc/vfstab文件,找到要進行硬盤限額服務的文件系統,並將

mount option字段的值設為rq,然後並存盤退出。

完成這兩步後,我們使用edquota命令為每個用戶設置硬盤限額,在root權限下輸入以下命令:

#edquota username

這時系統會自動生成一個臨時文件,並且有如下內容:

fs /users blocks (soft = 0, hard = 0) inodes (soft = 0, hard = 0)

其中fs字段表明使用硬盤限額的文件系統,本例為/users,block和inodes表明用戶可以使用的硬盤千字節數和I節點數,即用戶可使用的硬盤空間和可建立的文件數,soft和hard分別對於前面提及的軟限制和硬限制。

編輯這個文件,把軟,硬限制設置到合適的數值,然後存盤退出。這時我們可以看到quotas文件的大小已經被改變,說明用戶的限額已經儲存。重復這條命令,給每一個用戶都配置硬盤限額。另外,如果我們分配給用戶的硬盤限額都相同,我們可以使用 “-p” 參數而不用為每個用戶都編輯一個文件,它的使用方法是:

#edquota -p reference-usernameusername

編輯完文件後,我們就可以用quotaon來啟動服務了,在root權限下輸入

#quotaon /users

就可以啟動限額服務。如果我們要查看各個用戶的當前使用情況,可以使用

repquota 命令,在root權限下輸入:

#repquota /users

系統會顯示:

。。。

從中我們可以很容易看到用戶的硬盤和文件的使用情況以及超過軟限制後仍可申請資源的時間等等。

當然我們可以用quotaoff取消硬盤限額服務。另外,系統還提供quotacheck 命令對限額的一致性進行檢查。

Copyright © Linux教程網 All Rights Reserved