使用者管理 限制使用者硬碟使用空間

2021-08-29 13:32:14 字數 1760 閱讀 7341

限制使用者硬碟使用空間

unix作為一種多使用者系統,它允許多個使用者共同使用系統的資源,包括系統的記憶體,cpu和硬碟。在預設情況下,系統並不會限制每個使用者可以使用硬碟空間的大小,所以如果使用者惡意使用硬碟,或使用者由於疏忽,將硬碟空間全部占用,將導致其他使用者無法使用硬碟,從而使系統效能下降,甚至有崩潰的危險。

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

quota : 顯示使用者的硬碟限額和使用情況。

edquota : 為每個使用者設定硬碟限額。

quotaon: 啟動檔案系統硬碟限額服務

quotaoff : 關閉檔案系統硬碟限額服務

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

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

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

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

# touch quotas(建立一名字為quotas的空檔案)

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

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分別對於前面提及的軟限制和硬限制。

例如,可以改為:

fs /export/home blocks (soft = 1000000, hard = 1000000) inodes (soft = 0, hard = 0)

限制使用者使用空間為1000000塊(在sun solaris 10 sparc下為1g)。

編輯這個檔案,把軟,硬限制設定到合適的數值,然後存檔退出。這時我們可以看到quotas檔案的大小已經被改變,說明使用者的限額已經儲存。重複這條命令,給每乙個使用者都配置硬碟限額。另外,如果我們分配給使用者的硬碟限額都相同,我們可以使用 「-p」 引數而不用為每個使用者都編輯乙個檔案,它的使用方法是:

#edquota -p olduser newuser

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

#quotaon /export/home

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

repquota 命令,在root許可權下輸入:

#repquota /export/home

mysql資源限制 MySQL 限制使用者使用資源

在mysql 5.7及後續版本中,可以按照賬號來限制每個賬號實際具有的資源限制。語法 grant with option,如 grant select on test.to user1 localhost with max queries per hour3max user connections5...

記憶體管理之使用者空間

32 位的平台上,線性位址空間為固定的 4gb,並且由於採用了保護機制,linux核心將這 4gb 分為兩部分,線性位址較高的 1gb 0xc0000000 到 0xffffffff 為共享的核心空間 而較低的 3gb 為每個程序的使用者空間。由於每個程序都不能直接訪問核心空間,而是通過系統呼叫間接...

oracle使用者,許可權,表空間管理

1.建立表空間 create tablespace zhu tablespace datafile d oracletablespace zhu zhu tablespace.dbf size 512m extent management local segment space management...