『学了就忘』Linux文件系统管理 — 63、磁盘配额介绍
1、磁盘配额概念
磁盘配额是限制用户或者用户组在一个分区上可以使用的空间大小和文件个数的限制。
扩展:
- 管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。
- 磁盘配额针对的是分区,Windows系统也有磁盘配额功能。
- 这是一个基础的功能,如果真要在实际工作中使用,还需要结合其他的其他的服务。比如上传文件,需要结合FTP服务器等。
2、磁盘配额条件
(1)内核必须支持磁盘配额
[root@localhost ~]# grep CONFIG_QU0TA /boot/config-2.6.32-279.e16.i686
# 执行上面命令,如果搜索到下面内容,说明Linux内核加载了磁盘配额功能。
CONFIG_QUOTA=y
CONFIG_QUOTA_NETLINK_INTERFACE=y
#CONFIG_QUOTA_DEBUG is not set
CONFIG_QUOTA_TREE=y
CONFIG QUOTACTL=y
#我搜索的结果是
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
CONFIG_XFS_QUOTA=y
CONFIG_QUOTA=y
CONFIG_QUOTA_NETLINK_INTERFACE=y
CONFIG_PRINT_QUOTA_WARNING=y
# CONFIG_QUOTA_DEBUG is not set
CONFIG_QUOTA_TREE=y
CONFIG_QUOTACTL=y
一般情况下,那怕是最小化安装的Linux系统中,磁盘配额都是配置好的。
(2)系统中必须安装了quota
工具。
我们的Linux默认是安装了quota
工具的,查看命令如下:
[root@localhost ~]# rpm -qa | grep quota
quota-3.17-16.e16.i686
提示:如果内核不支持,就要重新编译内核,一般不会出现这样情况。如果没有
quota
工具,直接用yum
安装。
3、磁盘配额的相关概念
(1)用户配额和组配额
能限制用户的配额,也能限制组的配额。在实际日常中,组配额很少用。
说明:为什么组配额很少用?
比如我给一个组限制600MB的空间配额,这个组中有三个用户,而组配额并不是按照每个人200MB的方式进行划分,而是先到先得的方式进行划分,有可能
user1
一个人把600MB的空间全部占用了,而另外两个人一点空间都没有。
(2)磁盘容量限制和文件个数限制
磁盘配额是可以对一个分区的磁盘容量和文件个数进行限制。
为什么要限制文件个数?
因为每个文件都会占用一个
i
节点号,而i
节点号是有限的,分区大小不同,i
节点号的数量是不一样的。如果i
节点占满了,也同样存储不了数据。
(3)软限制和硬限制
- 软限制可以理解为警告限制,如果你超过了软限制,你还可以写入数据,只是每次写入都会有提示,你的空间快占满了,请你尽快清理。
- 硬限制就是实际限制,到了限制,你一个字节都存储不了了。
(4)宽限时间
如果用户的空间占用大小,处于软限制和硬限制之间,系统会在用户登陆时警告用户磁盘将满,这个时间就是宽限时间,默认是7天。如果达到了宽限时间,用户的磁盘占用量还超过软限制,那么软限制就会升级为硬限制。(这个时间能修改,但是没有必要。)
4、磁盘配额实践规划
我们开始磁盘配额实验,首先我们来规划下:
- 磁盘配额是限制的普通用户在分区上使用磁盘空间和文件个数的,所以我们需要指定一个分区。那么我们手工建立一个5GB的
/dev/sdb1
分区,把它挂载到/disk
目录当中。(swap
分区和boot
分区不能做实验)。 - 还有需要建立被限制的用户和用户组。假设需要限制
user1
、user2
和user3
用户,这三个用户属于test
用户组。(组配合不好用,上面说了,不进行说明了,这里只说明普通用户的磁盘配额) - 为了便于测试,三个用户的磁盘容量硬限制为50MB,软限制为40MB,文件个数硬限制限制为11个,软限制为8个。
- 系统宽限时间我们改为8天。
提示:
关于磁盘配额配额的操作,下一篇文章会详细说明。
还有磁盘阵列(
Redundant Arrays of Independent Disks
,RAID)的内容,自己有时间可以自己了解一下。
『学了就忘』Linux文件系统管理 — 63、磁盘配额介绍的更多相关文章
- 『学了就忘』Linux文件系统管理 — 57、Linux文件系统介绍
目录 1.了解硬盘结构(了解即可) (1)硬盘的逻辑结构 (2)硬盘接口 2.Linux文件系统介绍 (1)Linux文件系统的特性 (2)Linux常见文件系统 3.整理一下对文件系统的认识 在了解 ...
- 『学了就忘』Linux文件系统管理 — 64、磁盘配额的配置步骤
目录 1.手工建立一个5GB的分区 2.建立需要做限制的三个用户 3.在分区上开启磁盘配额功能 4.建立磁盘配额的配置文件 5.开始设置用户和组的配额限制 6.启动和关闭配额 7.磁盘配额的查询 8. ...
- 『学了就忘』Linux文件系统管理 — 65、LVM逻辑卷管理介绍
目录 1.LVM逻辑卷管理的简介 2.LVM逻辑卷管理的原理 3.总结建立LVM分区的步骤 1.LVM逻辑卷管理的简介 LVM是Logical Volume Manager的简称,中文就是逻辑卷管理. ...
- 『学了就忘』Linux文件系统管理 — 58、常用硬盘管理相关命令
目录 1.df命令 2.du命令 3.fsck文件系统修复命令 4.显示磁盘状态dumpe2fs 5.查看文件的详细时间 6.判断文件类型 1.df命令 df命令用于统计分区的占用状况. [root@ ...
- 『学了就忘』Linux文件系统管理 — 59、使用fdisk命令进行手工分区
目录 1.手工分区前提 (1)要有一块新的硬盘 (2)在虚拟机中添加一块新硬盘 2.手工分区 (1)查看Linux系统所有硬盘及分区 (2)手工分区:详细步骤 (3)保存手工分区 3.硬盘格式化 4. ...
- 『学了就忘』Linux文件系统管理 — 60、Linux中配置自动挂载
目录 1.自动挂载 2.如何查询系统下每个分区的UUID 3.配置自动挂载 4./etc/fstab文件修复 上一篇文章我们说明了手动分区讲解,对一块新硬盘进行了手动分区和挂载. 但是我们发现重启系统 ...
- 『学了就忘』Linux文件系统管理 — 61、使用parted命令进行分区
目录 1.parted命令介绍 2.parted交互模式 3.建立分区 (1)查看分区 (2)修改成GPT分区表 (3)建立分区 (4)建立文件系统(格式化) (5)调整分区大小 (6)删除分区 1. ...
- 『学了就忘』Linux文件系统管理 — 62、手动分配swap分区
目录 1.查看swap分区情况 2.手动修改swap分区 3.格式化swap分区 4.使用swap分区 5.配置swap分区开机之后自动挂载 1.查看swap分区情况 swap分区就相当于是内存的一个 ...
- 『学了就忘』Linux文件系统管理 — 66、通过图形界面进行LVM分区
目录 1.选择自定义分区 2.分配boot分区 3.创建LVM物理卷 4.生成卷组 5.创建逻辑卷 6.格式化安装 我们先用新安装Linux系统时的图形化界面,来演示一下LVM逻辑卷如何进行分区. 提 ...
随机推荐
- mipi csi接口,1条lane支持多少像素,200w像素需要几条lane,为什么,怎么计算出来的?谢谢!
按帧频FRAME=60HZ, 分辨率480*800来计算;以WVGA 显示分辨率,24BIT图片,60幁为例,在理想状态下(未包含RGB信号前后肩宽度),总传输速率最小为:480*800*8BIT*3 ...
- Java代理:静态代理、JDK动态代理和CGLIB动态代理
代理模式(英语:Proxy Pattern)是程序设计中的一种设计模式.所谓的代理者是指一个类别可以作为其它东西的接口.代理者可以作任何东西的接口:网络连接.存储器中的大对象.文件或其它昂贵或无法复制 ...
- Spring Security:Authentication 认证(一)
1. Spring Security 简介 在 Spring 生态系统中,为他的项目增加安全性,你可以借助 Spring Security 库来做到这一点. 那什么是 Spring Security? ...
- Go语言核心36讲(Go语言进阶技术十)--学习笔记
16 | go语句及其执行规则(上) 我们已经知道,通道(也就是 channel)类型的值,可以被用来以通讯的方式共享数据.更具体地说,它一般被用来在不同的 goroutine 之间传递数据.那么 g ...
- 原生css实现fullPage的整屏滚动贴合
目录 1,前言 2,效果展示 3,属性说明 3.1 scroll-snap-type 3.2,scroll-snap-align 4,实际使用 4.1,兼容性 1,前言 今天摸鱼的时候,发现一个很有意 ...
- 【java+selenium3】自动化截图 (十四)
一.截图 1. Firefox浏览器截图 FirefoxDriver firefoxDriver = new FirefoxDriver(); firefoxDriver.getScreenshotA ...
- JavaJDK下载及配置环境变量
卸载jdk 找到原先安装jdk的位置,直接删除这个文件夹,你们叫什么名字就删哪个,我的叫javajdk. 找到我的电脑,右键属性,然后找到环境变量. 删除系统变量里面的JAVA_HOME变量 再双击击 ...
- yaml基本用法
简介 YAML 是 "YAML Ain't Markup Language"(YAML 不是一种标记语言)的递归缩写.在开发的这种语言时,YAML 的意思其实是:"Yet ...
- 南京大学OS笔记(1)-应用眼中的操作系统
南京大学OS笔记(1)-应用眼中的操作系统 早就想刷一刷南大JYY老师的os课.之前稍微看过几节,果然讲的风趣幽默,而且现场写代码展示水平确实很高,这次准备认真刷一刷然后好好记一下笔记.当然lab就不 ...
- Flask搭建弹幕视频网站(1)
说在前面 也不知道最后能不能完成网站,所以就想把这十多天来学习到的点点滴滴记录下来.学的越来越多,所谓全栈也是需要前端基础,越来越感受到压力,但是遇到一个问题就解决一个问题,慢慢习惯之后感觉也还行.说 ...