新聞中心
本書在前面曾經講到,Linux系統(tǒng)的設計初衷就是讓許多人一起使用并執(zhí)行各自的任務,從而成為多用戶、多任務的操作系統(tǒng)。但是,硬件資源是固定且有限的,如果某些用戶不斷地在Linux系統(tǒng)上創(chuàng)建文件或者存放電影,硬盤空間總有一天會被占滿。針對這種情況,root管理員就需要使用磁盤容量配額服務來限制某位用戶或某個用戶組針對特定文件夾可以使用的最大硬盤空間或最大文件個數,一旦達到這個最大值就不再允許繼續(xù)使用??梢允褂胵uota命令進行磁盤容量配額管理,從而限制用戶的硬盤可用容量或所能創(chuàng)建的最大文件個數。quota命令還有軟限制和硬限制的功能。

創(chuàng)新互聯長期為超過千家客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態(tài)環(huán)境。為謝通門企業(yè)提供專業(yè)的網站建設、網站設計,謝通門網站改版等技術服務。擁有10余年豐富建站經驗和眾多成功案例,為您定制開發(fā)。
軟限制:當達到軟限制時會提示用戶,但仍允許用戶在限定的額度內繼續(xù)使用。
硬限制:當達到硬限制時會提示用戶,且強制終止用戶的操作。
RHEL 7系統(tǒng)中已經安裝了quota磁盤容量配額服務程序包,但存儲設備卻默認沒有開啟對quota的支持,此時需要手動編輯配置文件,讓RHEL 7系統(tǒng)中的/boot目錄能夠支持quota磁盤配額技術。另外,對于學習過早期的Linux系統(tǒng),或者具有RHEL 6系統(tǒng)使用經驗的讀者來說,這里需要特別注意。早期的Linux系統(tǒng)要想讓硬盤設備支持quota磁盤容量配額服務,使用的是usrquota參數,而RHEL 7系統(tǒng)使用的則是uquota參數。在重啟系統(tǒng)后使用mount命令查看,即可發(fā)現/boot目錄已經支持quota磁盤配額技術了:
[root@linuxprobe ~]# vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Wed May 4 19:26:23 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/rhel-root / xfs defaults 1 1
UUID=812b1f7c-8b5b-43da-8c06-b9999e0fe48b /boot xfs defaults,uquota 1 2
/dev/mapper/rhel-swap swap swap defaults 0 0
/dev/cdrom /media/cdrom iso9660 defaults 0 0
/dev/sdb1 /newFS xfs defaults 0 0
/dev/sdb2 swap swap defaults 0 0
[root@linuxprobe ~]# reboot
[root@linuxprobe ~]# mount | grep boot
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,usrquota)接下來創(chuàng)建一個用于檢查quota磁盤容量配額效果的用戶tom,并針對/boot目錄增加其他人的寫權限,保證用戶能夠正常寫入數據:
[root@linuxprobe ~]# useradd tom
[root@linuxprobe ~]# chmod -Rf o+w /boot- xfs_quota命令
xfs_quota命令是一個專門針對XFS文件系統(tǒng)來管理quota磁盤容量配額服務而設計的命令,格式為“xfs_quota [參數] 配額 文件系統(tǒng)”。其中,-c參數用于以參數的形式設置要執(zhí)行的命令;-x參數是專家模式,讓運維人員能夠對quota服務進行更多復雜的配置。接下來我們使用xfs_quota命令來設置用戶tom對/boot目錄的quota磁盤容量配額。具體的限額控制包括:硬盤使用量的軟限制和硬限制分別為3MB和6MB;創(chuàng)建文件數量的軟限制和硬限制分別為3個和6個。
[root@linuxprobe ~]# xfs_quota -x -c 'limit bsoft=3m bhard=6m isoft=3 ihard=6 tom' /boot
[root@linuxprobe ~]# xfs_quota -x -c report /boot
User quota on /boot (/dev/sda1) Blocks
User ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
root 95084 0 0 00 [--------]
tom 0 3072 6144 00 [--------]當配置好上述的各種軟硬限制后,嘗試切換到這個普通用戶,然后分別嘗試創(chuàng)建一個體積為5MB和8MB的文件??梢园l(fā)現,在創(chuàng)建8MB的文件時受到了系統(tǒng)限制:
[root@linuxprobe ~]# su - tom
[tom@linuxprobe ~]$ dd if=/dev/zero of=/boot/tom bs=5M count=1
1+0 records in
1+0 records out
5242880 bytes (5.2 MB) copied, 0.123966 s, 42.3 MB/s
[tom@linuxprobe ~]$ dd if=/dev/zero of=/boot/tom bs=8M count=1
dd: error writing ‘/boot/tom’: Disk quota exceeded
1+0 records in
0+0 records out
6291456 bytes (6.3 MB) copied, 0.0201593 s, 312 MB/s- edquota命令
edquota命令用于編輯用戶的quota配額限制,格式為“edquota [參數] [用戶] ”。在為用戶設置了quota磁盤容量配額限制后,可以使用edquota命令按需修改限額的數值。其中,-u參數表示要針對哪個用戶進行設置;-g參數表示要針對哪個用戶組進行設置。edquota命令會調用Vi或Vim編輯器來讓root管理員修改要限制的具體細節(jié)。下面把用戶tom的硬盤使用量的硬限額從5MB提升到8MB:
[root@linuxprobe ~]# edquota -u tom
Disk quotas for user tom (uid 1001):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 6144 3072 8192 1 3 6
[root@linuxprobe ~]# su - tom
Last login: Mon Sep 7 16:43:12 CST 2017 on pts/0
[tom@linuxprobe ~]$ dd if=/dev/zero of=/boot/tom bs=8M count=1
1+0 records in
1+0 records out
8388608 bytes (8.4 MB) copied, 0.0268044 s, 313 MB/s
[tom@linuxprobe ~]$ dd if=/dev/zero of=/boot/tom bs=10M count=1
dd: error writing ‘/boot/tom’: Disk quota exceeded
1+0 records in
0+0 records out
8388608 bytes (8.4 MB) copied, 0.167529 s, 50.1 MB/s 本文標題:創(chuàng)新互聯linux教程:6.7 磁盤容量配額
文章鏈接:http://www.dlmjj.cn/article/copdeic.html


咨詢
建站咨詢
