最近在搞VPS,要用到磁盤的限額,在網上找了一些相關的資料,總結起來,有兩個方法能實現,一是用quota,另外一種是限制目錄大小,下面我就將這兩種方法寫出來,與大家一起分享!
首先我們來看第一種方法,用quota實現。
步驟:
1、掛載需要限額的磁盤
mount -o usrquota,grpquota /dev/sdb1 /mnt/sd1
針對普通磁盤
mount -o remount,usrquota /
這個是針對根分區
2、檢查並創建磁盤配額的數據庫文件
quotacheck -camugv
c創建,
v創建過程的詳細信息,
u對用戶的配額支持,
g對組的配額支持,
a表示激活所有配額的磁盤分區,
m只在對根分區創建的時候使用。
注:以上參數根據自己的情況而定
3、開啟磁盤配額
quotaon -a
4、配置用戶或組的限額的大小
edquota -u user (-g group)
5、查看用戶或組的限額情況
quota -uv user (-gv group)
6、查看系統的配額情況
repquota -augv
注:以上5、6步,根據自己的情況來操作,當然,也可以不用查看,但前提是你確定配置是沒有問題的!
7、將磁盤的掛載參數寫入fstab,確保在系統下次啟動的時候,能加載配額功能
defaults,usrquota,grpquota
至此,磁盤配額完成,為了大家更好的理解配置的時候的參數,我把編輯用戶和組的各字段含義,貼出來,希望參大家用幫助。
FIlesystem:表示文件系統,即需要設置配額的硬盤分區;
block:表示所占的字節數,單位:KB (不要修改)
soft:磁盤空間限定值 單位:KB (需要設定)
hard:磁盤空間限定值 單位: KB (需要設定)
inodes:i節點數,用戶擁有文件的文件的數目 (不要修改)
soft:文檔限制數量 (根據需要修改)
hard:文檔限制數量 (根據需要修改)
如果說,你不想使用磁盤配額了,就用quotaoff -a 關閉quota(刪除/etc/mtab)、刪除用戶或組的數據庫文件,修改/etc/fstab參數。
下面我們來看另外一種方法,限制目錄的大小
主要的思路是通過dd命令COPY出你需要的大小,然后掛載到一個目錄下使用。
步驟
1、copy出相應的文件大小,比如1G
dd if=/dev/zero bs=1024 count=1000000 of=/1Gfile.loop
2、對此文件進行格式化
mkfs.ext3 /1Gfile.loop
3、建立目錄
mkdir /1Gdir
4、掛載使用
mount -o loop /1Gfile.loop /1Gdir
5、為了確保在系統啟動的進時也要掛載,就要在/etc/rc.local最后增加
mount -o loop /1Gfile.loop /1Gdir
以上兩種方法的優點和缺點
磁盤配額優點:不會先占用磁盤的空間
磁盤配額缺點:只針對磁盤用效,而且必須是針對用戶和組的
限制目錄大小優點:方便靈活,適用性強。但具體的性能如何,沒有測試
限制目錄大小缺點:在建立之初就占相應大小的磁盤空間
大家可以根據自己的情況,來選擇適合自己的方法!
