unix限制使用者硬碟使用空間
限制使用者硬碟使用空間
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 命令對限額的一致性進行檢查。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70612/viewspace-1018063/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- trickle 限制使用者空間頻寬
- 當使用者無限制使用表空間配額且表空間有足夠空間時出現超出表空間的空間限額
- oracle 建立表空間和使用者Oracle
- Oracle新建使用者、表空間、表Oracle
- Oracle建立表空間和使用者Oracle
- Oracle中新建表空間、使用者Oracle
- 3. 使用者和表空間—3.1. 使用者
- 硬碟空間的管理和分割槽硬碟
- Linux伺服器硬碟空間清理Linux伺服器硬碟
- 華納雲:如何檢視Linux硬碟空間使用情況Linux硬碟
- Linux使用者空間記憶體管理Linux記憶體
- 64位win10多大硬碟空間合適_64位win10支援多大硬碟空間Win10硬碟
- oracle新建使用者,表空間,並授權Oracle
- Oracle 19C 建立使用者&表空間Oracle
- Oracle新建表空間、使用者及授權Oracle
- Oracle 建立表空間和使用者指令碼Oracle指令碼
- 定期刪除檔案,限制linux使用者登入時間Linux
- Linux程式上下文和中斷上下文核心空間和使用者空間Linux
- linux限定使用者或組對磁碟空間的使用Linux
- oracle建立使用者,表空間,臨時表空間,分配許可權步驟詳解Oracle
- 限制使用者頻繁提交
- oracle級聯刪除使用者,刪除表空間Oracle
- oracle11g 查詢臨時表空間的使用率和正在使用臨時表空間的使用者Oracle
- 使用查詢語句導致 RDS 伺服器報硬碟磁碟空間不足伺服器硬碟
- Oracle 刪除使用者、表空間、資料檔案、使用者下的所有表Oracle
- PostgreSQL-表空間、資料庫、使用者之間的關係(七)SQL資料庫
- Linux UIO機制--使用者空間I / O操作方法LinuxUI
- mac硬碟空間怎麼清理?這樣也能清理出上10G的磁碟空間Mac硬碟
- 在sqlnet.ora中設定引數限制使用者登入時間SQL
- lnmp關閉mysql日誌保護硬碟空間的方法LNMPMySql硬碟
- oracle匯出使用者、表空間和角色的建立語句Oracle
- win10使用者資料夾空間過大怎麼辦 win10系統c盤使用者資料夾空間過大怎麼清理Win10
- Unix 時間戳與日期時間戳
- win10怎麼看硬碟資料 win10如何檢視硬碟空間資料Win10硬碟
- 華納雲:伺服器硬碟空間不足是什麼原因?伺服器硬碟
- 刪使用者刪表空間的操作還能flashback回來嗎?
- 瞭解Linux系統中的Device Mapper機制:使用者空間LinuxdevAPP
- 如何限制使用者修改long_query_time
- OPA-Gatekeeper實驗:對特定使用者的更新時間視窗做限制