磁盤配額:node
文件服務器:共享存儲空間,讓用戶可以隨時存儲數據;linux
FTP:數據庫
SMB:服務器
網盤:極速上傳app
磁盤配額主要是針對於這類文件服務器進行用戶的磁盤空間使用限制而提出的。ide
磁盤配額的設定對象:spa
1.可以實施讀寫操做的塊設備;orm
2.要有正確的文件系統;對象
磁盤配額限制哪些人的訪問行爲:ip
1.用戶
爲指定用戶限制磁盤使用量
1) 磁盤空間(塊) 一個block的限制,表明1KB存儲空間
2) inode
2.組
限制指定組中全部成員的磁盤使用量的總和;
磁盤配額的類型:
soft limit:軟限制
當用戶的磁盤使用量達到軟配額限制,將會啓動寬限期倒計時;在倒計時歸0以前,用戶能夠正常使用剩餘的配額量,但一旦倒計時歸0,用戶將不能繼續使用磁盤空間,除非將數據進行清理,低於軟限制,然後能夠繼續使用磁盤空間;
hard limit:硬限制
用戶所可以使用的磁盤空間的真正上限;
通常來說,軟限制要比硬限制的數值要小一些。
soft:90M
hard:120M
已經存放了95M數據, 10M
清理稱爲85M
在Linux中默認的寬限期爲7天
須要一個用戶記錄用戶和組的磁盤使用量和配額量的數據文件;
aquota.user
aquota.group
若是想要讓分區或卷可以支持磁盤配額的設定,須要單獨的掛載選項;
usrquota, grpquota
1. ~]# mount -o usrquota,grpquota DEVICE MOUNT_POINT
2./etc/fstab
DEVICE MOUNT_POINT FSTYPE defaults,usrquota,grpquota 0 0
quotacheck
quotacheck - scan a filesystem for disk usage, create, check and repair quota files
選項:
-v, --verbose:顯示整個操做過程的詳細信息
-u, --user:建立,檢測和修復用戶配額文件
-g, --group:建立,檢測和修復組配額文件
-c, --create-files:通過檢測,若是沒有用戶配額文件和或組配額文件,就安裝用戶給定的選項來進行文件的建立;
-a, --all:全部的在/etc/fstab文件中包含了與配額有關的掛載選項的設備上,是否有對應選項的配額文件;
用於編寫配額內容的命令
edquota
-u, --user:編寫用戶配額,默認的功能;
-g, --group:編寫組配額,不推薦使用;
-t, --edit-period:設置超出軟限制的寬限期;默認7天,能夠選擇以秒,分鐘,小時,天等時間單位;
是配額功能生效:
quotaon, quotaoff
quotaon, quotaoff - turn filesystem quotas on and off
quotaon|quotaoff /dev/sdb1
查看配額的使用狀況
quota
quota - display disk usage and limits
repquota(只有root用戶可使用)
repquota - summarize quotas for a filesystem
注意:
root不受磁盤配額限制;
!!添加一個用戶,設置密碼:
[root@localhost mysub1]# passwd QQQQQ
更改用戶 QQQQQ 的密碼 。
新的 密碼:
無效的密碼: 密碼少於 8 個字符
從新輸入新的 密碼:
passwd:全部的身份驗證令牌已經成功更新。
!!建立一個分區:
[root@localhost mysub1]# fdisk /dev/sdd
歡迎使用 fdisk (util-linux 2.23.2)。
更改將停留在內存中,直到您決定將更改寫入磁盤。
使用寫入命令前請三思。
Device does not contain a recognized partition table
使用磁盤標識符 0x976102f0 建立新的 DOS 磁盤標籤。
命令(輸入 m 獲取幫助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分區號 (1-4,默認 1):
起始 扇區 (2048-41943039,默認爲 2048):
將使用默認值 2048
Last 扇區, +扇區 or +size{K,M,G} (2048-41943039,默認爲 41943039):+10G
分區 1 已設置爲 Linux 類型,大小設爲 10 GiB
命令(輸入 m 獲取幫助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盤。
!!若是新分區的磁盤沒有顯示,可使用~刷新:
[root@localhost mysub1]# ls /dev/sdd*
/dev/sdd
[root@localhost mysub1]# partx -a /dev/sdd
partx: /dev/sdd: error adding partition 1
[root@localhost mysub1]# ls /dev/sdd*
/dev/sdd /dev/sdd1
!!建立文件系統:
[root@localhost ~]# mke2fs -t ext4 /dev/sdd1
mke2fs 1.42.9 (28-Dec-2013)
文件系統標籤=
OS type: Linux
塊大小=4096 (log=2)
分塊大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 2621440 blocks
131072 blocks (5.00%) reserved for the super user
第一個數據塊=0
Maximum filesystem blocks=2151677952
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: 完成
正在寫入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
!!掛載,修改配置文件,設置掛載位置永久生效,從新掛載:
[root@localhost ~]# mount /dev/sdd1 /myquota
#
# /etc/fstab
# Created by anaconda on Thu Mar 9 15:51:17 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/cl-root / xfs defaults 0 0
UUID=8001c548-1b27-4e84-aabb-bd02f64cfdd8 /boot xfs defaults
0 0
/dev/mapper/cl-swap swap swap defaults 0 0
/dev/sdd1 /myquota ext4 defaults,usrquota,grpquota 0 0
[root@localhost ~]# mount -a
!!使用quotacheck命令生成配置磁盤配置的數據庫文件,若selinux開啓的話會提示權限不夠,經過setenforce?0臨時關掉selinux就能夠了,quotacheck執行成功能夠看到/quota/下面多了兩個文件:
[wenyao@localhost ~]$ quotacheck -cug /myquota/
quotacheck: Cannot remount filesystem mounted on /myquota read-only so counted values might not be right.
Please stop all programs writing to filesystem or use -m flag to force checking.
[wenyao@localhost ~]$ su - root
密碼:
上一次登陸:二 6月 6 20:38:43 CST 2017pts/0 上
[root@localhost ~]# quotacheck -cugm /myquota/
[root@localhost ~]# ls /myquota/
aquota.group aquota.user lost+found
!!而後經過quotaon?/quota/啓動對應文件系統上的磁盤配額功能
!!經過edquota?-u?myquota配置用戶myquota對這個磁盤分區的使用配額。還能夠經過 edquota?-g?groupname?對groupname這個組設定配額