時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)
實踐quota
Quota使用的方面很廣,不過,一般的用途有以下這些:
限制某一群組所能使用的最大磁盤配額(使用群組限制):
你可以將你的系統(tǒng)上的用戶分門別類,有點像是目前很流行的付費與免付費會員制的情況,你比較喜好的那一群的使用配額就可以給高一些!呵呵!^_^
限制某一用戶的最大磁盤配額(使用用戶限制):
在限制了群組之后,您也可以再繼續(xù)針對個人來進行限制,使得同一群組之下還可以有更公平的分配!
以Link的方式,來使郵件可以作為限制的配額(更改/var/spool/mail這個路徑):
如果是分為付費與免付費會員的『郵件主機系統(tǒng)』,是否需要重新再規(guī)劃一個硬盤呢?也不需要啦!直接使用Link的方式指向/home(或者其它已經(jīng)做好的quota磁盤)就可以啦!這通常是用在原本規(guī)劃不好,但是卻又不想要更動原有主機架構(gòu)的情況中?。?/p>
那么quota從開始準備filesystem的支持到整個設(shè)定結(jié)束的主要的步驟大概是:
1. 設(shè)定partition的filesystem支持quota參數(shù):
由于quota必須要讓partition上面的filesystem支持才行,一般來說,支持度最好的是ext2/ext3,啟動filesystem支持quota最簡單就是編輯/etc/fstab,使得準備要開放的quota磁盤可以支持quota;
2. 建立quota記錄文件:
剛剛前面講過,整個quota進行磁盤限制值記錄的檔案是aquota.user/aquota.group,要建立這兩個檔案就必須要先利用quotacheck掃描才行喔!所以,接下來的步驟就是:使用quotacheck來掃描一下我們要使用的磁盤;
3. 編輯quota限制值數(shù)據(jù):
再來就是使用edquota來編輯每個使用者或群組的可使用空間;
4. 重新掃描與啟動quota:
設(shè)定好quota之后,建議可以再進行一次quotacheck,然后再以quotaon來啟動吧!
整個quota設(shè)定的步驟就只是這樣而已,簡單吧!我們下面就直接來用一個范例介紹一下整個流程,好讓您更清楚的了解到整個步驟!范例是這樣的:
1. Linux主機里面主要針對quser1及quser2這兩個用戶來進行磁盤配額,且這兩個用戶都是掛在qgroup群組里面的。
2. 每個使用者總共有50MB的磁盤空間(不考慮inode)限制!并且soft limit為45MB;
3. 而寬限時間設(shè)定為1天,也就是說,這兩個人可以突破45MB的限制,但是在一天之內(nèi)必須要將多余的文件刪除,否則將無法使用剩下的空間(也就是說,這個賬號大概就不能進行新建文件的工作了);
4. gquota這個群組考慮最大限額,所以設(shè)定為90MB好了!
多說無用,我們就實際來進行!
1. 準備好測試的環(huán)境,用戶與群組的建立:
這兩個賬號應(yīng)該是不存在我們的系統(tǒng)的,所以,趕緊將他設(shè)置上去吧!
[root@linux ~]# groupadd qgroup
[root@linux ~]# useradd -m -g qgroup quser1
[root@linux ~]# useradd -m -g qgroup quser2
[root@linux ~]# passwd quser1
[root@linux ~]# passwd quser2
2. 建立好filesystem的quota支持:
由于quota較完整的支持是需要在ext2/ext3的Linux文件系統(tǒng)下才可以啟動,所以建議你就必須要將準備開啟quota的磁盤啟動參數(shù),寫入 quota的磁盤設(shè)定才行(/etc/fstab)!以例子而言,想要在/disk2下進行quota的限制quser1,quser2這兩個用戶!這是 因為這個/disk2是一個獨立的扇區(qū),這可以使用df來查詢。此外,必需特別留意的是,最好不要以根目錄亦即是/進行quota!否則容易有些問題!另 外,不要針對root做quota!反正做了也沒用!
[root@linux ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda1 5952252 3193292 2451720 57% /
/dev/hdb1 28267608 77904 26730604 1% /disk2
/dev/hda5 9492644 227252 8775412 3% /disk1
嗯!/disk2是獨立的partition,并且他的設(shè)備名為/dev/hdb1,好了!那么我就必須要啟動/disk2這個/dev/hdb1的 quota檔案格式,好了!那么由于文件格式的設(shè)定是寫在/etc/fstab里頭,所以我們以vi來編輯他吧!只要在/etc/fstab里頭增加了 usrquota、grpquota就可以啦?。ㄗⅲ赫?zhí)貏e留意,這兩個項目請『務(wù)必』不要寫錯了!請在寫入/etc/fstab之前好好的再次檢查,因 為寫錯之后,很有可能造成系統(tǒng)無法開機,雖然寫錯的機率不高,但是很有可能?。?/p>
[root@linux ~]# vi /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/disk1 /disk1 ext3 defaults 1 2
LABEL=/disk2 /disk2 ext3 defaults,usrquota,grpquota 1 2
/dev/hda3 swap swap defaults 0 0
注意到我們所需要設(shè)定的那個/disk2的那一行,在第四字段多了usrquota,grpquota注意,在『defaults,usrquota,grpquota』之間都沒有空格!
這樣就算加入了quota的磁盤格式了!不過,由于真正的quota在讀取的時候是讀取/etc/mtab 這個檔案的,偏偏這一個檔案需要重新開機之后才能夠以/etc/fstab的新數(shù)據(jù)進行改寫!所以這個時候你可以選擇:
重新開機(reboot);
重新remount filesystem來啟動設(shè)置!
對不太喜歡重新開機的人,可以這樣做:
[root@linux ~]# umount /dev/hdb1
[root@linux ~]# mount -a
[root@linux ~]# grep '/disk2' /etc/mtab
/dev/hdb1 /disk2 ext3 rw,usrquota,grpquota 0 0
事實上,也可以利用mount的remount功能!
[root@linux ~]# mount -o remount /disk2
這樣我們就已經(jīng)成功的將filesystem的quota功能加入了!另外,在這里是以ext3這個磁盤格式來測試quota的!
3. 掃描磁盤的用戶使用狀況,并產(chǎn)生重要的aquota.group與aquota.user:
接下來就是要來掃描一下我們所需要的磁盤到底有沒有多余的空間可以讓我們來設(shè)定quota呢?并且將掃描的結(jié)果輸出到這個磁盤的最頂層去(也就是 /disk2下)這個時候就需要quotacheck這個命令的幫忙了!使用quotacheck就可以輕易的輸出了將所需要的數(shù)據(jù)!并在/disk2下 會產(chǎn)生aquota.group與aquota.user這兩個文件!
[root@linux ~]# quotacheck -avug
quotacheck: Scanning /dev/hdb1 [/disk2] done
quotacheck: Checked 3 directories and 4 files
[root@linux ~]# ll /disk2
-rw------- 1 root root 6144 Sep 6 11:44 aquota.group
-rw------- 1 root root 6144 Sep 6 11:44 aquota.user
使用quotacheck就可以輕易的將所需要的數(shù)據(jù)給他輸出了!但是很奇怪的是,在某些Linux 版本中,不能夠以aquota.user(group)來啟動quota,這有可能是因為舊版quota的關(guān)系,所以就另外做了一個link文件來欺騙quota:
[root@linux ~]# cd /disk2
[root@linux ~]# ln -s aquota.user quota.user
[root@linux ~]# ln -s aquota.group quota.group
除非您的Linux distributions是比較舊的版本,否則不會有這個問題,所以,這個動作你不一定要進行!
4. 啟動quota的限額:
再來就是要啟動quota啦!啟動的方式也是很簡單的!就是使用quotaon -av即可:
[root@linux ~]# quotaon -avug
/dev/hdb1 [/disk2]: group quotas turned on
/dev/hdb1 [/disk2]: user quotas turned on
注意:要看到上面有個turned on的出現(xiàn),才是真的成功了!
5. 編輯使用者的可使用空間:
由于我們有兩個用戶要設(shè)置,先來設(shè)置quser1好了,使用edquota就對了:
[root@linux ~]# edquota -u quser1
Disk quotas for user quser1 (uid 502):
Filesystem blocks soft hard inodes soft hard
/dev/hdb1 0 45000 50000 0 0 0
#p#副標題#e#
再次強調(diào)的是,因為我的/disk2里面并沒有任何數(shù)據(jù)存在,所以,在上面這個表格當中,blocks與inodes才會都是0,如果您是使用/home 來進行quota設(shè)定的,那么blocks/inodes肯定不會是0,這里要特別留意的。好了,上面特殊字體的部分就是我們的設(shè)定了,分別是45000 及50000,那個單位是KBytes啦,轉(zhuǎn)成MBytes應(yīng)該是要除以1024才對,不過,簡單算一下就好了,不用太介意!^_^。然后將quser1 的設(shè)定直接復(fù)制給quser2吧!
[root@linux ~]# edquota -p quser1 quser2
接下來要來設(shè)定寬限時間,還是使用edquota!
[root@linux ~]# edquota -t
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/hdb1 1days 7days
將時間改為1天(原本是7days改成1days),好了!查詢一下是否真的有設(shè)定進去呢?使用quota -v來查詢:
[root@linux ~]# quota -vu quser1 quser2
Disk quotas for user quser1 (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/hdb1 0 45000 50000 0 0 0
Disk quotas for user quser2 (uid 503):
Filesystem blocks quota limit grace files quota limit grace
/dev/hdb1 0 45000 50000 0 0 0
特別注意到,由于我們的使用者尚未超過45MB,所以gra
關(guān)鍵詞標簽:Linux磁盤配額,Quota配
相關(guān)閱讀
熱門文章
安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程
Tomcat9.0如何安裝_Tomcat9.0環(huán)境變量配置方法
多種操作系統(tǒng)NTP客戶端配置
Linux操作系統(tǒng)修改IP
人氣排行 Linux下獲取CPUID、硬盤序列號與MAC地址 dmidecode命令查看內(nèi)存型號 linux tc實現(xiàn)ip流量限制 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 linux下解壓rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 關(guān)機、重啟、注銷 命令 查看linux服務(wù)器硬盤IO讀寫負載