quota磁盘限额

简介:

制作人:wqmsl

博客地址:http://wqmsl.blog.51cto.com

磁盘限额

基于用户的磁盘限额和基于组的磁盘限额(usrquota  grpquota)

在做磁盘限额的时候是基于文件系统做的,所以要给用户家目录做磁盘年限额的话首先要看/home所在的分区是独立分区还是挂载到了根下,如果在根下,就得对整个根来做磁盘限额,如果是独立分区,只需要在独立分区上做就可以了,由于家目录的特殊性,一般我们都在单独分区上。

这里做一个基于独立分区的/home家目录的用户usrquota的磁盘配额

查看一下挂载情况,如下:/home分区是/dev/sda5文件系统,只要对sda5做磁盘限额就可以了

wps_clip_image-29754

查看一下系统当前所用的内核,在查看一下所用内核是否支持磁盘限额

wps_clip_image-10071

要做磁盘限额首先要熟悉fstab文件,修改fstab中的/home,使其支持quota

wps_clip_image-8069

重新挂载文件系统(/home),查看/dev/sda5是否已经支持磁盘配额

重新挂载:如根目录的特殊性(需要重启),使用mount -o remount /  或者 mount -o remount(重启失效,先要写入fstab文件中),usrquota /   就不用我们去重启系统也可以使其生效了

wps_clip_image-8791

生成配额文件,quotacheck -cum /dev/sda5  ——> u:是指usrquota(可以省略,缺省为u)

注释:quotacheck [-avugfM] 系统文件

选项与参数:

-u  :针对用户扫瞄档案不目弽的使用情况,会建立 aquota.user

-g  :针对群组扫瞄档案不目弽的使用情况,会建立 aquota.group

-v  :显示扫瞄过程的信息;

-f  :强制扫瞄文件系统,并写入新的 quota 配置文件 (危险)

-M  :强制以读写的方式扫瞄文件系统,只有在特殊情况下才会使用。

wps_clip_image-14339

查看一下生成的配额文见aquota.user,数据库格式

wps_clip_image-15370

生成配额文件之后默认并没有开启配额功能,需要我们开启,先查看一下当前状态

如下:/home的usrquota还是off状态;也可以使用这条命令查看: quotaon -p /dev/sda5

wps_clip_image-29757

开启usrquota的磁盘限额;# quotaon -uv /dev/sda5  没有加-u的参数

注释:quotaon [-vug] [/mount_point]

选项与参数:

-u  :针对使用者启动 quota (aquota.user)

-g  :针对群组启动 quota (aquota.group)

-v  :显示启动过程的相关讯息;

-a  :根据 /etc/mtab 内的 filesystem 设定启动有关的 quota,若不加 -a 的话,

      则后面就需要加上特定的那个 filesystem 的!

quotaon -uv /home    开启/home下用户的磁盘限额 

quotaon -auvg   开启所有执行磁盘限额文件系统用户和组的磁盘限额

关系磁盘限额的功能正好和这个相反,使用quotaoff来执行

wps_clip_image-20820

再看一下状态,是否启用成功

wps_clip_image-25933

为用户wqmsl2配置磁盘限额,大小的限制以KB为单位,blocks、inodes 不用修改,默认就好wps_clip_image-86

看看鸟哥的解释

wps_clip_image-24654

先来做基于文件大小的限制,给用户wqmsl2软限制为8M,硬限制为10M(我以1000为单位换算)

wps_clip_image-19297

测试,我切换到wqmsl2用户,进行测试看看磁盘配额有没有生效

wps_clip_image-20136

可以查看针对自己磁盘配额

wps_clip_image-1793

默认我在自己的家目录下,我依次写入大小3M的文件4次,看看效果

执行以下命令3次,生成,每次都修改一下文件名,以免重复

解释:dd if=/dev/zero bs=3M count=1 of=test   bs=不加单位的话是以字节计算,count则是次数,这个命令的含义就是:每次写入3M大小,写1次在当前目录下生成3M大的test文件

wps_clip_image-10327

repquota :针对文件系统的限额做报表 (只有root才可以执行查看)

注释:repquota -a [-vugs]

选顷不参数:

-a  :直接到 /etc/mtab 搜寻具有 quota 标志的 filesystem ,幵报告 quota 的

结果;

-v  :输出的数据将吨有 filesystem 相关的绅部信息;

-u  :显示出用户的 quota 限值 (这是默讣值);

-g  :显示出个别群组的 quota 限值。

-s  :使用 M, G 为单位显示结果

wps_clip_image-29281

warnquota :对超过限额的用户发出警告信

注释:warnquota 字面上的含义就是 quota 的警告 (warn) !它可以依据

/etc/warnquota.conf 的设定,然后找出目前系统上面 quota 用量超过 soft (就是有 grace time 出现的那用户) 的用户账号,通过 email 发送警告信到用户的电子邮件信箱。

warnquota 不会自动执行,需要我们手动去执行它。光执行『 warnquota 』之后,他会发送两封信出去, 一封给超过软限制的用户一封给 root

只有root执行了warnquota 命令才会给超过软限制的用户发送邮件,试想一下,这样是不是很不合适呢,所以我们得让其自动执行,那就是计划任务

先看一下warnquota这个命令在哪里

wps_clip_image-8850

我们把计划任务添加到每天4:02执行的任务中,注意权限哦(要有可执行权限)

这样系统每天凌晨4:02就会执行这个任务,自动给超过软限制的用户发送邮件哦

wps_clip_image-24004

下面测试一下,用帐户wqmsl2登陆系统,提示我有封邮件

wps_clip_image-9419

我们看看邮件的详细内容

wps_clip_image-4622

我继续往里面写东西,看看到了硬限制之后有没有提示

当我再写的时候已经提示了,磁盘超出限额

wps_clip_image-16045

但是并不是说就完全写不进去了,还有一部分能写进去

看看test4的大小就知道了,还是有一部分写进去了

wps_clip_image-26952

setquota :直接用命令设定 quota 磁盘限额

注释:edquota 是呼叫 vi 进行行讴定,setquota 直接由命令输入所须要的各项限制值得到的

用命令行的方式给wqmsl1设定磁盘限额

wps_clip_image-28413

切换到wqmsl1下查看

wps_clip_image-18559

 

为组做限额

和用户的是一样的

生成组限制文件

[root@localhost /]# quotacheck -cmg /

为组启用quota

[root@localhost /]# quotaon -g /

为组做限额 分配大小

[root@localhost /]# edquota -g quota(组名)

注意:这里的组要是基于主组的  创建的文件要属于磁盘配额的用户组

如果你限制的对象是附属组,那么是不生效的,只有文件所属组为你限制的组的时候才会生效

文件个数的限制

这个和限制大小一样,修改如下的内容就可以了

档案数量 (inodes):这是 quota 自己算出来的,单位为个数,不要更改此项;

soft:inode 的 soft 限制值,以个数为单位;

hard:inode 的 hard 限制值,以个数为单位;

修改完这个就可以了,当你写入的文件数量超过了硬限制的数量,那么就会禁止你再往里写文件了

单用户文件系统的限额做报表

注释:uota [-uvs] [username]

quota [-gvs] [groupname]

选项与参数:

-u  :后面可以接 username ,表示显示出该用户的 quota 限制值。若不接username  ,表示显示出执行此命令用户的 quota 限制值。

-g  :后面可接 groupname ,表示显示出该群组的 quota 限制值。

-v  :显示每个用户在 filesystem 的 quota 值;

-s  :使用 1024 为倍数来指定单位,会显示如 M 之类的单位!

直接使用 quota 去显示出 wqmsl1 不 wqmsl2 的限额

例如:quota -uvs wqmsl2 wqmsl3

 

 

宽限时间 (grace time):

我们可以使用这个命令 edquota -t 去修改宽限时间,系统默认是7天,

wps_clip_image-19080

 

 

edquota -p 范本账号 -u 新账号   ——>  给所有的用户相同的限制

edquota -p wqmsl2 -u wqmsl3   如下:wqmsl3用户的配额和wqmsl2是一样的

wps_clip_image-28021




     本文转自 wqmsl 51CTO博客,原文链接:http://blog.51cto.com/wqmsl/471782,如需转载请自行联系原作者

相关文章
|
存储 缓存 运维
Ceph离线(纯内网)部署
Ceph离线(纯内网)部署
Ceph离线(纯内网)部署
|
缓存 编译器 程序员
【Qt 元对象系统04】 深入浅出Qt的QMetaObject:探索元对象的魔法
【Qt 元对象系统04】 深入浅出Qt的QMetaObject:探索元对象的魔法
1581 0
|
存储 缓存 NoSQL
DeepSeek 3FS解读与源码分析(4):Meta Service解读
在当今数字化时代,随着数据量的爆炸性增长,分布式文件系统已成为处理大规模数据存储和访问的核心技术之一。DeepSeek 开源的 3FS(Fire-Fly File System)作为一款高性能、高可用的分布式文件系统,凭借其创新的设计和强大的功能,吸引了众多开发者的关注。其中,Meta Service 作为 3FS 的核心组件之一,承担着元数据管理的关键职责,是整个文件系统高效运行的基石。 在本文中,我们将深入探讨 3FS 中 Meta Service 的架构设计、关键特性以及其实现机制。
|
传感器 监控 前端开发
zabbix中IPMI (Intelligent Platform Management Interface)
zabbix中IPMI (Intelligent Platform Management Interface)
1058 68
|
存储 人工智能 安全
OSS 深度解析:Data + AI 时代的对象存储
在 Data + AI 时代,随着大数据分析和 AI/ML 工作负载的进一步融合,对象存储 OSS 作为面向 AI 时代的数据基础设施,迎来了新的挑战与创新机遇。本话题我们将会介绍对象存储的能力创新,深度解读对象存储在实现稳定、安全、高性能和低成本背后的技术进展,并展望未来 AI 驱动趋势下的技术发展方向。
2090 2
|
C语言
【数据结构】双向带头循环链表(c语言)(附源码)
本文介绍了双向带头循环链表的概念和实现。双向带头循环链表具有三个关键点:双向、带头和循环。与单链表相比,它的头插、尾插、头删、尾删等操作的时间复杂度均为O(1),提高了运行效率。文章详细讲解了链表的结构定义、方法声明和实现,包括创建新节点、初始化、打印、判断是否为空、插入和删除节点等操作。最后提供了完整的代码示例。
602 0
|
Kubernetes 监控 Perl
在K8S中,Pod⼀直处于Init状态,如何排查?
在K8S中,Pod⼀直处于Init状态,如何排查?
|
SQL 分布式计算 监控
大数据时代的五大利剑
大数据时代的五大利剑
1452 12
|
存储 缓存 分布式计算
Gluten + Celeborn: 让 Native Spark 拥抱 Cloud Native
本篇文章介绍了 Gluten 项目的背景和目标,以及它如何解决基于 Apache Spark 的数据负载场景中的 CPU 计算瓶颈。此外,还详细介绍了 Gluten 与 Celeborn 的集成。Celeborn 采用了 Push Shuffle 的设计,通过远端存储、数据重组、内存缓存、多副本等设计,不仅进一步提升 Gluten Shuffle 的性能和稳定性,还使得 Gluten 拥有更好的弹性,从而更好的拥抱云原生。
3404 4
Gluten + Celeborn: 让 Native Spark 拥抱 Cloud Native
|
存储 分布式计算 Kubernetes
PVC、Ceph、HDFS、CPFS、NFS和OSS
PVC、Ceph、HDFS、CPFS、NFS和OSS都是分布式存储系统,下面是它们的详细介绍: 1. PVC(Persistent Volume Claim):PVC是Kubernetes中的一个资源请求,用于声明在集群中存储持久化数据的需求。PVC可以被用于存储应用程序的数据,例如数据库、日志文件等。PVC由Kubernetes集群管理员创建,并在Kubernetes集群中进行分配。
1591 0