Linux磁盘配额应用
磁盤配額
網(wǎng)站服務(wù) ?針對網(wǎng)站服務(wù)域名空間上一般會設(shè)置配額限制;
郵件服務(wù) 針對郵件服務(wù)每個郵箱用戶設(shè)置磁盤配額限制;
文件服務(wù) 針對文件服務(wù)器,每個用戶設(shè)置配額限制;
Home家目錄 針對家目錄設(shè)置磁盤配額限制
其他諸如NFS、ftp等服務(wù);
quota簡介
什么是quota?什么是磁盤配額?在Linux操作系統(tǒng)中,由于是多人工作環(huán)境,多個用戶共同使用一個分區(qū),在沒有限配額制下,占用存儲多的用戶就會侵占其他用戶的存儲權(quán)利,造成其他用戶的使用不便;而磁盤配額就是為了解決這個問題,在root環(huán)境下通過quota指令設(shè)置磁盤配額;
quota主要應(yīng)用環(huán)境
quota相關(guān)指令
2.1、quota指令
quota ? --顯示磁盤的使用和限制
參數(shù):
-g ?顯示用戶所在組的組配額限制
-u 缺省顯示當(dāng)前用戶的配額限制,指定用戶則顯示用戶配額限制;
-v 顯示文件系統(tǒng)上的配額限制,即使沒有占用空間
-q 只顯示超出限額的文件系統(tǒng)
只有root可以使用-u參數(shù),普通用戶可以使用-g參數(shù)查看用戶所在組的配額限制;
2.2、quotacheck ?掃描文件系統(tǒng),創(chuàng)建、檢測、修復(fù)配額文件;
參數(shù):
-d ? ? ?進入調(diào)試狀態(tài).這會產(chǎn)生許多用于調(diào)試程序的信息.輸出的信息非常詳盡,而掃描速度會減慢;
-a ? ? 如果用它取代任何文件系統(tǒng)的名字, quotacheck 將檢測所有在 /etc/mtab 中列為可讀寫 的文件系統(tǒng)的配額.在缺省狀態(tài)下,只有在 /etc/mtab 中被列為配額的文件系統(tǒng)才會被檢測.
-u ? ? 只檢測在 /etc/mtab 列出或指定的文件系統(tǒng)中的用戶配額.這是缺省狀態(tài)下采取 的 行動
-R ? ? 當(dāng)與 -a 一起使用時,檢測除根(root)文件系統(tǒng)外的其他所有文件系統(tǒng).
-i ? ? 交互模式.在缺省狀態(tài)下, quotacheck 在發(fā)現(xiàn)錯誤后即退出.在交互模式下,用戶會被問取建議. ?參考選項 -n.
-n ? ? 有時候?qū)ν粋€ID會找到多個結(jié)果. 通常遇到這種情況 quotacheck 就終止運行.該 選項強制使用第一個結(jié)果(該選項在交互模式下同樣有效).
2.3、edquota ? ? - 編輯用戶配額
參數(shù):
-u ? ? 編輯用戶配額.這是默認的選項.
-g ? ? 編輯組配額.
-p ? ? ?對每個指定的用戶/組的原配額加倍. ?這是用來對一組用戶/組初始化配額時常用的方法.
FILES(相關(guān)文件)
位于文件系統(tǒng)root下的aquota.user 或 aquota.group 配額文件.
/etc/mtab ? ? ? ? ? 已掛載的文件系統(tǒng)表
2.4、quotaon ?-- - 開啟關(guān)閉文件系統(tǒng)配額
參數(shù):
-e ? ? 開啟指定文件系統(tǒng)配額。 當(dāng)程序名是 quotaon 時, 此選項是默認的。
-d ? ? 關(guān)閉指定文件系統(tǒng)配額。 當(dāng)程序名是 quotaoff 時, 此選項是默認的。
-a ? ? ?當(dāng) 用 在 任 何 文 件 系 統(tǒng)名稱的地方時, quotaon/quotaoff 將允許/禁止所有在/etc/mtab 中指定的文件系統(tǒng)為有磁盤配額的讀-寫。 這個選項一般被用在系統(tǒng)啟動時開啟配額。
-v ? ? 為每個開啟或關(guān)閉配額的文件系統(tǒng)顯示一條消息。
-u ? ? 處理用戶配額。 這是默認選項。
-g ? ? 處理組配額。
相關(guān)文件 (FILES)
aquota.user ? ? ? ? 文件系統(tǒng)根目錄下的用戶配額文件
aquota.group ? ? ? ?文件系統(tǒng)根目錄下的組配額文件
/etc/mtab ? ? ? ? ? 已裝載的文件系統(tǒng)表
quotaoff ? 啟關(guān)閉文件系統(tǒng)配額
參數(shù):
于quotaon相同
三、home分區(qū)進行磁盤配額限制
3.1、由于配額針對分區(qū),為了體驗賬戶管理和權(quán)限管理,掛載一個新的分區(qū),進行home遷移;
1)/home分區(qū)遷移
2)針對home分區(qū)進行磁盤配額限制;
3)設(shè)置用戶配額;
4)編輯群組可用的配額;
5)設(shè)置開機啟動quota;
6)requota顯示quota信息
3.2、/home分區(qū)遷移
1)備份home分區(qū);
[root@woon /]# mkdir /homebak
[root@woon /]# cp -a /home/* /homebak/
2)格式化sdb為ext4;
[root@woon ~]# fdisk l
Disk /dev/sdb: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
[root@woon /]# ls -la /dev/sdb*
brw-rw----. 1 root disk 8, 16 2月 ?10 20:19 /dev/sdb
brw-rw----. 1 root disk 8, 17 2月 ?10 20:19 /dev/sdb1
[root@woon /]# mkfs.ext4 /dev/sdb1
3) 建立/dev/sdb1配額支持;
[root@woon /]# vi /etc/fstab
添加
/dev/sdb1 ? ? ? ? ? ? ? /home ? ? ? ? ? ext4 ? ? ? ? ? ?defaults,userquota,grpquota ? ? 0 ?0
4)將sdb1掛載在/home下
root@woon /]#rm rf /home/*
root@woon /]#mount /dev/sb1 /home
root@woon /]#cp a ?/homebak/* /home/
root@woon /]#mount a
[root@woon ~]# df h
Filesystem ? ? ? ? ? ?Size ?Used Avail Use% Mounted on
/dev/mapper/vg_woon-lv_root ? ? ? ? ? ? ? ?8.3G ?4.0G ?4.0G ?51% /
tmpfs ? ? ? ? ? ? ? ? 504M ? 72K ?504M ? 1% /dev/shm
/dev/sda1 ? ? ? ? ? ? 477M ? 27M ?426M ? 6% /boot
/dev/sde1 ? ? ? ? ? ? 459G ? 70M ?435G ? 1% /opt/gpt1
/dev/sdb1 ? ? ? ? ? ? ?50G ? 52M ? 47G ? 1% /home
注:如果是已經(jīng)掛載的分區(qū),可以使用mount o remount /dev/sdb1
[root@woon ~reboot
抽袋煙的功夫…………
5)生成配額文件
由于seLinux會影響quota,所以先關(guān)閉selinux
[root@woon ~]# setenforce 0
[root@woon ~]# getenforce
[root@woon ~]# quotacheck aug
查看是否生成配額文件;
[root@woon home]# ll /home
總用量 48
-rw-------. 1 root ? root ? ?7168 2月 ?10 21:03 aquota.group
-rw-------. 1 root ? root ? ?7168 2月 ?10 21:03 aquota.user
drwx------. 4 hchen ?hchen ? 4096 2月 ?10 21:02 hchen
drwx------. 2 root ? root ? 16384 2月 ?10 20:23 lost+found
drwx------. 4 woon ? woon ? ?4096 2月 ? 9 17:52 woon
drwx------. 4 woonli woonli ?4096 2月 ?10 20:39 woonli
drwx------. 4 zwen ? zwen ? ?4096 2月 ?10 21:02 zwen
6)啟動quota
[root@woon home]# quotaon -avug
/dev/sdb1 [/home]: group quotas turned on
/dev/sdb1 [/home]: user quotas turned on
編輯配額
設(shè)置用戶woon、zwen和hchen磁盤配合soft為50M,hard為55M
[root@woon home]# edquota -u woon
Disk quotas for user woon (uid 500):
Filesystem ? ? ? ? ? ? ? ? ? blocks ? ? ? soft ? ? ? hard ? ? inodes ? ? soft ? ? hard
/dev/sdb1 ? ? ? ? ? ? ? ? ? ? ? ?40 ? ? ? ?51200 ? ? 61440 ? ? ? ? 10 ? ? ? ?0 ? ? ? ?0
[root@woon home]# edquota p woon hchen
[root@woon home]#edquota p woon zwen
#復(fù)制賬戶woon的quota給賬戶zwen和hchen;
8)設(shè)置寬限時間為3天
[root@woon home]# 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/sdb1? ?????????????????????????3days?????????????? ????????7days
9)設(shè)置組配額
[root@woon home]# edquota –g woon
^^^^^^^^^^^^^^^^^^^^^^^^
10) 查看quota設(shè)置結(jié)果記錄
[root@woon ~]# repquota -av
*** Report for user quotas on device /dev/sdb1
Block grace time: 3days; Inode grace time: 7days
???????????????????????Block limits??????????????? Filelimits
User???????????used??? soft??? hard?grace??? used? soft?hard? grace
----------------------------------------------------------------------
root????? --?? 50500??????0?????? 0????????? 10975???? 0????0??????
woon????? --??? 8552??51200?? 61440?????? ?????218????0???? 0??????
woonli??? --????? 36??????0?????? 0????????????? 9???? 0????0??????
hchen???? --????? 32??51200?? 61440????????????? 8???? 0????0??????
zwen????? --????? 32??51200?? 61440????????????? 8???? 0????0??????
#1000???? --?? ?2224??????0?????? 0???????????? 59???? 0????0??????
?
Statistics:
Total blocks: 8
Data blocks: 1
Entries: 6
Used average: 6.000000
?
四、quota驗證
[root@woon woon]# su – woon
[woon@woon ~]$ dd if=/dev/zero of=/home/woon/fileddbs=1M count=100
sdb1: warning, user block quota exceeded.
sdb1: write failed, user block limit reached.
dd: 正在寫入"/home/woon/filedd": 超出磁盤限額
記錄了59+0 的讀入
記錄了58+0 的寫出
61665280字節(jié)(62 MB)已復(fù)制,0.0753227 秒,819 MB/秒
超出磁盤配額
[woon@woon ~]$ du -h filedd
59M???? filedd
[woon@woon ~]$ du -h |tail -1
60M
轉(zhuǎn)載于:https://blog.51cto.com/woonli/1613494
總結(jié)
以上是生活随笔為你收集整理的Linux磁盘配额应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。