磁盘配额

磁盘配额

1 启用磁盘配额

首先创建新的分区 /dev/sd5,并创建文件系统。

[root@local ~]# mkfs.ext4 /dev/sda5

由于xfs 不磁盘配额能成功,这里使用ext4.

然后把/dev/sda5分区挂载到 /home

[root@local ~]# mount /dev/sda5 /home

[root@local ~]# blkid /dev/sda5

/dev/sda5: UUID=”8879cf63-99a5-43bb-9bfe-de303afb0799″ TYPE=”ext4″

修改 /etc/fstab 文件

[root@local ~]# vim /etc/fstab

UUID=dddd23d1-1012-4bac-9717-56b9b469e0c2 / ext4 defaults 1 1

UUID=316d8677-25b8-49afb4eb-54daa20b6595 /boot ext4 defaults 1 2

UUID=dacd6dddd765-4646-b98c-0579f2732749 swap swap defaults 0 0

UUID=8879cf63-99a5-43bb-9bfede303afb0799 /home ext4 defaults,usrquota,grpquota 0 0

usrquota为启用磁盘的用户磁盘配额功能,grpquota为启用磁盘的组磁盘配额功能。

[root@centos7 ~]# mounta /home/

查看挂载是否成功

[root@local ~]# mount

sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)

proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)

[……]

/dev/sda5 on /home type ext4 (rw,relatime,seclabel,quota,usrquota,grpquota,data=ordered)

可以看到/dev/sda5已经正确挂载

2创建配额数据库

[root@centos7 ~]# quotacheckcug /home

由于/etc/fstab 文件设置了usrquota,grpquota,所以这里必须是 –cug,u对应usrquota,g对应grpquota。

现在查看/home目录,会多出两个文件,说明磁盘配额数据库创建成功。

[root@local ~]# ll /home/

total 36

rw——-. 1 root root 7168 Apr 25 11:03 aquota.group

rw——-. 1 root root 7168 Apr 25 11:03 aquota.user

drwx——. 3 centos centos 4096 Apr 16 10:20 centos

drwx——. 2 root root 16384 Apr 25 10:55 lost+found

3 启用数据库

[root@local ~]# quotaon /home/

[root@local ~]#

下来查看一下,可以看到以及启用成功。

[root@local ~]# quotaon -p /home/

group quota on /home (/dev/sda5) is on

user quota on /home (/dev/sda5) is on

4 磁盘配额设置

设置user1 磁盘配额为100M,80M时发出警告

[root@local ~]# edquota user1

Disk quotas for user user1 (uid 1001):

Filesystem blocks soft hard inodes soft hard

/dev/sda5 52 80000 100000 13 0 0

这里的默认单位为block ,1个block为1Ksoft为警告值,hard为最大值,

现在来确认一下配置是否成功

[root@local ~]# quota user1    #查看用户user 的磁盘配额

Disk quotas for user user1 (uid 1001):

Filesystem blocks quota limit grace files quota limit grace

/dev/sda5 52 80000 100000 13 0 0

[root@local ~]#

5 测试

(1)创建测试的用户 user1

[root@local ~]# useradd uesr1

切换到user1用户

[root@local ~]# suuser1

Last login: Tue Apr 25 11:08:41 CST 2017 on pts/1

(2)创建文件测试

首先创建一个50M 的文件testquota。

[user1@local ~]$ dd if=/dev/zero of=testquota bs=1M count=50

50+0 records in

50+0 records out

52428800 bytes (52 MB) copied, 0.562963 s, 93.1 MB/s

[user1@local ~]$

可以看到一切正常

再来创建一个35M 的文件testquota2。

[user1@local ~]$ dd if=/dev/zero of=testquota2 bs=1M count=35

sda5: warning, user block quota exceeded.

35+0 records in

35+0 records out

36700160 bytes (37 MB) copied, 0.348267 s, 105 MB/s

[user1@local ~]$

由于50M+35M=85M 大于80M

所有看到这次发出警告了,但是操作还是成功了

下来再创建一个20M的文件testquota3。

[user1@local ~]$ dd if=/dev/zero of=testquota3 bs=1M count=20

sda5: write failed, user block limit reached.

dd: error writingtestquota3′: Disk quota exceeded

13+0 records in

12+0 records out

13217792 bytes (13 MB) copied, 0.165029 s, 80.1 MB/s

[user1@local ~]$

由于已经超过最大值100M,所以创建失败了!

测试完成,实验结束!

原创文章,作者:linux is not unix,如若转载,请注明出处:http://www.178linux.com/74283

(0)
linux is not unixlinux is not unix
上一篇 2017-05-02 19:13
下一篇 2017-05-02 19:14

相关推荐

  • Linux发展史

    一、简单的说: 一个名叫Linus Torvalds的芬兰大学生想要了解Intel的新CPU386。他认为比较好的学习方法是自己编写一个操作系统的内核。出于这种目的,加上他对当时Unix 变种版本(即Minix)对于80386类机器的脆弱支持十分不满,他决定要开发出一个全功能的、支持POSIX标准的、类Unix的操作系统内核,该系统吸收了BSD和S…

    Linux干货 2016-10-20
  • iptables练习

    iptables实战 1.开启防火墙 systemctl start firewalld 2.清空所有的默认规则,定义自己的规则 iptables -F 查看此时的iptables iptables -nL Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD…

    2017-06-24
  • Linux程序包管理yum

    yum客户端: 配置文件: /etc/yum.conf:为所有仓库提供公共配置 /etc/yum.repos.d/*.repo:为仓库的指向提供配置 仓库指向的定义: [repositoryID] name=Some name for this repository baseurl=url://path/to/repository/ enabled={1|0…

    Linux干货 2015-11-23
  • 开学第一天

      今天是我来到马哥教育的第一天,来之前心情非常之忐忑,因为没有接触过linux系统,感觉是个新事物,来到教室里,一百多人的大集体,年龄的差异,使我感觉到压力。首先马哥和张sir的讲话,非常的帮,其中令我记忆最深刻的是那句话,取上者得中,取中者得下。一个人在奋斗的时候如果给自己的目标定的低,那就收获的还要低。所以要高标准的要求自己,一开始给自己定一…

    Linux干货 2018-03-26
  • 10 文本处理のsed狗带

    sed 介绍 工作原理 语法 参数选项:-n, -e, -r, -f, -i 地址定界 编辑命令 查找替换 空间操作 练习 参考文档 sed介绍 sed是一个(stream editor)。         1) :使用sed只能在命令行下输入编辑命令来编辑文…

    Linux干货 2016-08-12
  • 网络组Network Team

    网络组Network Team 网络组team:是将多个网卡聚合在一起,从而实现容错和提高吞吐量 1 创建网络组接口 nmcli connection add type team con-name TEAMname ifname INTname [config JSON] TEAMname 指定连接名,INname指定接口名, JSON指定runner方式,…

    Linux干货 2017-05-07