歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> RedHat Linux 9實現磁盤配額

RedHat Linux 9實現磁盤配額

日期:2017/2/27 9:50:28   编辑:更多Linux

除了監視系統上使用的磁盤空間,你還可以通過實現磁盤配額來限制磁盤空間,因此當用戶使用了過多的磁盤空間或分區將要充滿時,系統管理員就會接到警告。

磁盤配額可以為個體用戶配置也可以為用戶組配置。這種靈活性既能夠給每個用戶分配一個較小的配額來處理“個人”文件(如電子郵件和報告),又允許了他們正從事的項目能夠擁有較大的配額(假定項目有自己的組群)。

除此以外,配額不僅能夠被設置成對所用磁盤塊數量的控制,還能夠被設置成對內節點數量的控制。由於內節點包含文件相關的信息,對內節點的控制能夠控制可被創建的文件數量。

要實現磁盤配額, quota RPM 必須在系統上被安裝。 關於安裝 RPM 軟件包的詳情,請參閱 第 V 部分 。

6.1. 配置磁盤配額

要實現磁盤配額,請使用以下步驟:

修改 /etc/fstab 來啟用每個文件系統的配額

重新掛載文件系統

創建配額文件,重新生成磁盤用量表

分配配額

以上步驟在下面各節中被詳細討論。

6.1.1. 啟用配額

以根用戶身份使用你喜歡的編輯器來給需要配額的文件系統添加 usrquota 和(或) grpquota 選項:

LABEL=/ / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2 none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0 /dev/hda2 swap swap defaults 0 0 /dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 00

在上面的例子中, /home 文件系統上啟用了用戶和組群配額。

6.1.2. 重新掛載文件系統

添加了 userquota 和 grpquota 選項後,重新掛載每個相應 fstab 條目被修改的文件系統。如果某文件系統沒有被任何進程使用,使用 umount 命令後再緊跟著 mount 命令來重新掛載這個文件系統。如果某文件系統正在被使用,要重新掛載該文件系統的最簡捷方法是重新引導系統。

6.1.3. 創建配額文件

重新掛載了每個啟用了配額的文件系統後,系統現在就能夠使用磁盤配額了。不過,文件系統本身尚且不能支持配額。下一步是運行 quotacheck 命令。

quotacheck 命令檢查啟用了配額的文件系統,並為每個文件系統建立一個當前磁盤用來的表。該表會被用來更新操作系統的磁盤用量文件。此外,文件系統的磁盤配額文件也被更新。

要在文件系統上創建配額文件( aquota.user 和 aquota.group ),使用 quotacheck 命令的 -c 選項。例如,如果用戶和組群配額都為 /home 分區啟用了,在 /home 目錄下創建這些文件:

quotacheck -acug /home

-a 選項意味著在 /etc/mtab 中所有掛載了的非 NFS 文件系統都會被檢查來決定是否啟用了配額。 -c 選項指定每個啟用了配額的文件系統都應該創建配額文件, -u 選項指定檢查用戶配額, -g 選項指定檢查組群配額。

如果 -u 或 -g 選項被指定,只有用戶配額文件被創建。如果只指定了 -g 選項,只有組群配額文件會被創建。

文件被創建後,運行以下命令來生成每個啟用了配額的文件系統的當前磁盤用量表:

quotacheck -avug

所用選項如下:

a — 檢查所有啟用了配額的在本地掛載的文件系統

v — 在檢查配額過程中顯示詳細的狀態信息

u — 檢查用戶磁盤配額信息

g — 檢查組群磁盤配額信息

quotacheck 運行完畢後,和啟用配額(用戶和/或組群)相應的配額文件中就會寫入用於每個啟用了配額的文件系統(如 /home )的數據。

6.1.4. 為每用戶分配配額

最後一步是使用 edquota 命令分配磁盤配額。

要為用戶配置配額,以根用戶身份在 shell 提示下執行以下命令:

edquota username

為每個你想實現配額的用戶執行該步驟。例如,如果在 /etc/fstab 中為 /home 分區( /dev/hda3 )啟用了配額,執行了 edquota testuser 命令後,系統默認的編輯器中就會有如下顯示:

Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/hda3 440436 0 0 37418 0 0

注記:edquota 使用 ED99vOR 環境變量所定義的文本編輯器。要改變這個編輯器,把 ED99vOR 環境變量設置為到你選中的編輯器的完整路徑。




第一列是啟用了配額的文件系統的名稱。第二列顯示了用戶當前使用的塊數。隨後的兩列用來設置用戶在該文件系統上的軟硬塊限度。 inodes 列顯示了用戶當前使用的內節點數量。最後兩列用來設置用戶在該文件系統上的軟硬內節點限度。

硬限是用戶或組群可以使用的磁盤空間的絕對最大值。達到了該限度後,磁盤空間就不能再被用戶或組群使用了。

軟限定義可被使用的最大磁盤空間量。和硬限不同的是,軟限可以在一段時期內被超過。這段時期被稱為 過渡期(grace period) 。過渡期可以用秒鐘、分鐘、小時、天數、周數、或月數表示。

如果以上值中的任何一個被設置為 0,那個限度就不會被設置。在文本編輯器中,改變想要的限度。如:,

Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/hda3 440436 500000 550000 37418 0 0

要校驗用戶的配額是否被設置,使用以下命令:

quota testuser 6.1.5. 為每組群分配配額

配額還可以根據組群來分配。例如,要為 devel 組群設置組群配額,使用以下命令(在設置組群配額前,該組群必須存在):

edquota -g devel

以上命令在文本編輯器中顯示現存的組群配額:

Disk quotas for group devel (gid 505): Filesystem blocks soft hard inodes soft hard /dev/hda3 440400 0 0 37418 0 0

修改限度,保存文件,然後配置配額。

要校驗組群配額是否被設置,使用以下命令:

quota -g devel 6.1.6. 為每文件系統分配配額

要根據每個啟用了組群的文件系統來分配配額,使用以下命令:

edquota -t

和另一個 edquota 命令相似,這個命令也會在文本編輯器中打開當前的文件系統配額:

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/hda3 7days 7days

改變塊過渡期或內節點過渡期,保存對文件的改變,然後退出文本編輯器。

6.2. 管理磁盤



和另一個 edquota 命令相似,這個命令也會在文本編輯器中打開當前的文件系統配額:

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/hda3 7days 7days

改變塊過渡期或內節點過渡期,保存對文件的改變,然後退出文本編輯器。

6.2. 管理磁盤



改變塊過渡期或內節點過渡期,保存對文件的改變,然後退出文本編輯器。

6.2. 管理磁盤



Copyright © Linux教程網 All Rights Reserved