歡迎您光臨本站 註冊首頁

Linux用戶磁碟空間的限制

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

  不管磁碟空間有多麼大,磁碟空間不夠使用似乎是一個永遠的事實.Linux提供了限制用戶磁碟空間的手段,以便促使每個用戶合理有效地使用分配給他的空 間.用戶磁碟空間的限制是以文件系統(分區)為單位,而不理會用戶文件放在該文件系統中的哪個目錄中.

  1. 修改 /etc/fstab 文件.在文件系統相應的 mount 命令行中加入限額選項(如下的例子).

  /dev/hda7 /home ext3 defaults,usrquota,grpquota 1 2

  2. 重新裝載 Linux 分區,例如:

  [root@fileserver root]# mount -o remount /home

  繼續.

  3. 在欲加磁碟限額的文件系統的安裝點目錄建立 aquota.user 和 aquota.group 文件:

  [root@fileserver root]# cd /home (/home 為單個分區 /dev/hda7 的裝載點)

  [root@fileserver home]# touch aquota.user (為用戶設置磁碟限額)

  [root@fileserver home]# touch aquota.group (為用戶組設置磁碟限額)

  這時生成 的 aquota.user 和 aquota.group 是空的,不符合系統的要求.

  請看下一步.

  4. 生成符合系統要求的 aquota.user 和 aquota.group

  [root@fileserver home]# quotacheck /home (生成符合系統要求 的 aquota.user)

  [root@fileserver home]# quotacheck -g /home (生成符合系統要求 的 aquota.group)

  生成時,有錯誤提示.這不要緊.因為 先前 touch 生成的是一個空文件,肯定格式不對.

  這樣 正確的 aquota.user 和 aquota.group 生成啦.

  繼續下一步:

  5. 為用戶設置磁碟空間限額:

  [root@fileserver home]# edquota [-u] user_name

  [root@fileserver home]# edquota -g group_name (對於用戶組)

  本命令開啟一個 vi 窗口,為用戶設置磁碟空間和i節點數目的限額.其中 soft 限額為一個臨時性的限額;hard 限額為一個永久性限額(soft 限額可略大於 hard 限額),編輯方法與 vi 完全相同,以 ZZ 或 :wq 命令退出.如要給若干用戶 user1, user2,user3 指定相同的磁碟限額,可用下面的命令給這些用戶賦予與 protuser 相同的限額:

  [root@fileserver home]# edquota [-u] -p protuser user1 user2 user3

  [root@fileserver home]# edquota -g -p protgroup group1 group2 group3

  設定soft quota和hard quota之間的時間:

  [root@fileserver home]# edquota -t

  出現一個 vi 窗口:

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

  修改成自己所需要的,並保存退出就設置這個時間啦.

  您在這之後可能需要重新啟動,以使磁碟限額生效.

  您可以啦,不過還要注意一些問題,請繼續看下去.

  6. 檢查磁碟空間限制的一致性,系統會自動每次重新啟動時,在檢查硬碟後進行( /etc/rc.sysinit ),無須您親手進行.

  假若 分區 已經以「讀寫」方式掛上時,您要小心,例如:

  [root@fileserver root]# quotacheck /home

  quotacheck: Quota for users is enabled on mountpoint /home so quotacheck might damage the file.

  Please turn quotas off or use -f to force checking.

  這時, 由於某種需要,或者在某種情況,「不得不」運行這個命令 :

  [root@fileserver home]# quotacheck -mf [-u] /dev/hda7

  [root@fileserver home]# quotacheck -mf -g /dev/hda7

  參數 -m[M] 意思是:強迫在「讀、寫」模式下檢查硬碟的 quota (有一定的「正在寫」的數據丟失可能,應確保沒有進程在寫這個分區.建議在單用戶模式下進行.).

  例如:(在平時檢查)

  [root@fileserver root]# quotacheck /var/spool/ -f

  quotacheck: Cannot remount filesystem mounted on /var/spool read-only so counted values might not be right.

  Please stop all programs writing to filesystem or use -m flag to force checking.

  [root@fileserver root]# quotacheck /var/spool/ -m

  quotacheck: Quota for users is enabled on mountpoint /var/spool so quotacheck might damage the file.

  Please turn quotas off or use -f to force checking.

  [root@fileserver root]# quotacheck /var/spool/ -mf

  [root@fileserver root]#

  7. 以後您如果要取消磁碟空間和i節點數目的限制,可用以下命令,請看:

  [root@fileserver root]# quotaoff /home (取消磁碟空間限制.)

  [root@fileserver root]# quotaon /home (現在啟動磁碟空間限制.)

  [root@fileserver root]# quotaon /home (已經啟動磁碟空間限制啦,出現以下錯誤:)

  quotaon: using /home/aquota.group on /dev/hda7: Device or resource busy

  quotaon: using /home/aquota.user on /dev/hda7: Device or resource busy


[火星人 ] Linux用戶磁碟空間的限制已經有638次圍觀

http://coctec.com/docs/linux/show-post-51354.html