Linux磁盘配额
1,概述:
在Linux中,磁盘配额就是系统管理员给一个用户的所用空间的配额限制,每个用户在最大配额进行限制后,我们就可以对每一个用户的磁盘使用情况进行跟踪和监控,从而对其进行相应的操作 。
2,实现磁盘限额的条件:
需要Linux内核支持
安装xfsprogs与quota软件包
3,Linux磁盘限额的特点:
作用范围:针对制定的文件系统(分区)
限制对象:用户账号,组账号
限制类型:磁盘容量,文件数量
限制方法:软限制,硬限制 软限制<=硬限制
4,磁盘配额的基本步骤:
启动磁盘配额支持-----》》编辑用户和组账号配额设置------》》验证-----》》查看磁盘配额使用情况
例:对新磁盘进行磁盘配额。
实验环境:centos 7
1,添加新磁盘sdb,
2,安装xfsprogs与quota软件包
[root@localhost ~]# yum install xfsprogs -y
[root@localhost ~]# yum install quota -y
3,在opt下创建挂载目录abc文件夹,并设置其权限为777(用户也能读写)
[root@localhost ~]# mkdir /opt/abc
[root@localhost ~]# ls /opt
abc rh
[root@localhost ~]#chmod 777 /opt/abc
4,将sdb1磁盘格式化并将其挂载到opt下的abc文件夹。
5,(1)启动磁盘配额支持
[root@localhost ~]# mount -o usrquota,grpquota /dev/sdb1
mount: /dev/sdb1 已经挂载或 /opt/abc 忙
/dev/sdb1 已经挂载到 /opt/abc 上
[root@localhost ~]# mount
(2)输入mount指令可以发现usrquota,grpquota挂载参数已经挂载在sb1磁盘上。
[root@localhost ~]# mount
6,编辑用户和组账号的配额设置
基本格式:
xfs_quota -x -c 'limit -u bsoft=N bhard=N isoft=N ihard=N 用户名’挂载点
常用选项:
-u 操作对象 对应后面的用户名
-x 专家模式
-c 命令
-u 用户
-g 组
容量软限制:bsoft
容量硬限制 bhard
数量软限制 isoft
数量硬限制 ihard
我们基于张三这个用户给opt下的abc文件夹设置其软容量为50M,硬容量为80M,软数量4个,硬数量6个.
[root@localhost ~]# xfs_quota -x -c 'limit -u bsoft=50M bhard=80M isoft=4 ihard=6 zhangsan' /opt/abc
7,验证磁盘配额功能
验证数量:
验证容量:
(1)我们将dev目录下的zero中的文件复制到abc文件夹的test1.txt中 ,设置复制3次每次40M。
[zhangsan@localhost abc]$ rm -rf *
[zhangsan@localhost abc]$ ls
[zhangsan@localhost abc]$ dd if=/dev/zero of=/opt/abc/test1.txt bs=40M count=3
dd: 写入"/opt/abc/test1.txt" 出错: 超出磁盘限额
记录了3+0 的读入
记录了2+0 的写出
83886080字节(84 MB)已复制,1.2178 秒,68.9 MB/秒
[zhangsan@localhost abc]$
(2)我们发现由于abc文件夹设置的硬容量限制是80M,所以只能复制2次一共80M的文件。
8,查看磁盘配额使用情况
基本格式:
xfs_quota -x -c ‘report 选项’ 挂载点
常用选项
-a 查看所有
-i 节点信息
-b 输出报告
-u 用户
-g 组
[root@localhost abc]# xfs_quota -x -c 'report -iab' /opt/abc
User quota on /opt/abc (/dev/sdb1)
Blocks Inodes
User ID Used Soft Hard Warn/Grace Used Soft Hard Warn/ Grace
---------- -------------------------------------------------- --------------------------------------------------
root 0 0 0 00 [--------] 3 0 0 00 [--------]
zhangsan 81920 51200 81920 00 [6 days] 1 4 6 00 [--------]
Group quota on /opt/abc (/dev/sdb1)
Blocks Inodes
Group ID Used Soft Hard Warn/Grace Used Soft Hard Warn/ Grace
---------- -------------------------------------------------- --------------------------------------------------
root 0 0 0 00 [--------] 3 0 0 00 [--------]
zhangsan 81920 0 0 00 [--------] 1 0 0 00 [--------]
[root@localhost abc]#
总结:Linux磁盘配额能限制普通用户和用户组,但是无法限制root,在进行配额时要确认内核支持quota功能并且安装好xfsprogs与quota软件包。