磁盘配额quota
磁盘配额
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-49af-b4eb-54daa20b6595 /boot ext4 defaults 1 2
UUID=dacd6ddd-d765-4646-b98c-0579f2732749 swap swap defaults 0 0
UUID=8879cf63-99a5-43bb-9bfe-de303afb0799 /home ext4 defaults,usrquota,grpquota 0 0
usrquota为启用磁盘的用户磁盘配额功能,grpquota为启用磁盘的组磁盘配额功能。
[root@centos7 ~]# mount –a /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 ~]# quotacheck -cug /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为1K。soft为警告值,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
5 测试
(1)创建测试的用户 user1
[root@local ~]# useradd uesr1
切换到user1用户
[root@local ~]# su - user1
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
可以看到一切正常
再来创建一个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
由于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 writing 'testquota3': Disk quota exceeded
13+0 records in
12+0 records out
13217792 bytes (13 MB) copied, 0.165029 s, 80.1 MB/s
由于已经超过最大值100M,所以创建失败了!
测试完成,实验结束!
磁盘配额quota的更多相关文章
- 鸟哥的Linux私房菜——第十八章:磁盘配额quota
视频链接:http://www.bilibili.com/video/av10892470/ 磁盘配额quota的意思是给用户进行使用磁盘额度的空间的划分,举个例子,你的百度网盘的使用空间,其他云盘的 ...
- 磁盘配额-----quota
为什么要使用磁盘配额:为了限制普通用户使用普通磁盘的空间与创建文件的个数等. 不至于个别人的浪费影响所有人的使用. 需要安装quota的软件包. mount -o usrquota,grpquota ...
- Linux学习-磁盘配额 (Quota) 的应用与实作
什么是 Quota 在 Linux 系统中,由于是多人多任务的环境,所以会有多人共同使用一个硬盘空间的情况发生, 如 果其中有少数几个使用者大量的占掉了硬盘空间的话,那势必压缩其他使用者的使用权力! ...
- linux之磁盘配额(quota)
1.什么是quota 简单的说就是限制用户对磁盘空间的使用量. 因为Linux是多用户多任务的操作系统,许多人共用磁盘空间,为了合理的分配磁盘空间,于是就有了quota的出现. 2.quota的用途 ...
- linux之磁盘配额(quota)使用方法(转)
1.什么是quota 简单的说就是限制用户对磁盘空间的使用量. 因为Linux是多用户多任务的操作系统,许多人共用磁盘空间,为了合理的分配磁盘空间,于是就有了quota的出现. 2.quota的用途 ...
- 磁盘配额quota应用
1.文件系统支持 quota是针对整个文件系统来进行规划,所以我们得先查一下/home是否是个独立的文件系统. [root@Monitor home]# df -h /home Filesystem ...
- 第15章 磁盘配额(Quota)与高级文件系统管理
磁盘配额(quota)的应用与实践 什么是quota 举例来说,用户的默认主文件夹是在/home下面,如果/home是个独立的分区,假设是10G,/home下有30个账号,这样30个用户共享这10G的 ...
- liniux备忘录-磁盘配额与进阶文件系统管理
知识 磁盘配额Quota 可以限制磁盘的使用容量,可以对用户.群组磁盘的最大使用容量. 磁盘配额Quota的使用限制 只能针对整个文件系统. 核心必须支持Quota. 自行编译的核心需要注意 Quot ...
- 磁盘配额(Quota)的应用与实践
1>什么是Quota 在Linux中,由于是多用户,多任务的环境,所以会有多用户共同使用一个硬盘空间的情况发生,如果其中有少数几个用户大量占用掉了硬盘空间的话,那肯定影响其他用户的使 ...
随机推荐
- Nodejs核心模块
(1)全局对象 在浏览器JS中,通常window是全局对象,而nodejs中的全局对象是global,所有全局变量都是global对象的属性. 在nodejs中能够直接访问到的对象通常都是global ...
- Spring + Mybatis 项目实现动态切换数据源
项目背景:项目开发中数据库使用了读写分离,所有查询语句走从库,除此之外走主库. 最简单的办法其实就是建两个包,把之前数据源那一套配置copy一份,指向另外的包,但是这样扩展很有限,所有采用下面的办法. ...
- JS中字符串与数组的一些常用方法
真是恨透了这些类似于substring substr slice 要么长得像,要么就功能相近的方法... 1⃣️string 1.substring(start开始位置的索引,end结束位置索引) 截 ...
- css3常用方法以及css3选择器
最重要的 CSS3 模块包括: 选择器 框模型 背景和边框 文本效果 2D/3D 转换 动画 多列布局 用户界面 CSS3 边框 CSS3 边框 通过 CSS3,您能够创建圆角边框,向矩形添加 ...
- Docker 组件如何协作?- 每天5分钟玩转容器技术(8)
还记得我们运行的第一个容器吗?现在通过它来体会一下 Docker 各个组件是如何协作的. 容器启动过程如下: Docker 客户端执行 docker run 命令. Docker daemon 发现本 ...
- JS模式--装饰者模式
在Javascript中动态的给对象添加职责的方式称作装饰者模式. 下面我们通常遇到的例子: var a = function () { alert(1); };//改成: var a = funct ...
- 【算法系列学习】巧妙建图,暴搜去重 Counting Cliques
E - Counting Cliques http://blog.csdn.net/eventqueue/article/details/52973747 http://blog.csdn.net/y ...
- JavaScriptCore全面解析 (下篇)
欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 殷源,专注移动客户端开发,微软Imagine Cup中国区特等奖获得者,现就职于腾讯. 接JavaScript ...
- Python日期时间的相关操作
1.获取当前时间戳 import time t=time.time() print t 1459994552.51 #以秒为单位的 2.格式化日期 time.localtime() 返回当前时间的: ...
- The authenticity of host '172.16.33.53 (172.16.33.53)' can't be established的问题(日志六)
用ssh登录一个机器(换过ip地址)会出现如下错误 weiguohui@weiguohui1-virtual-machine:~/.ssh$ ssh 172.16.33.53The authentic ...