linux 用户配额设置,Linux如何设置磁盘配额

Linux如何设置磁盘配额

当Linux根分区的磁盘空间耗尽时,Linux系统将无法再建立新的文件(包括程序运行的临时文件),从而出现服务程序崩溃、系统无法启动等故障现象。为了避免在服务器中出现类似的磁盘空间不足的问题,可以设置启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行设置,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性。

在RHEL6系统中,内核已经制定了支持Linux文件系统的磁盘配额功能,而且在系统中默认安装了quota软件包,用于配置和管理磁盘配额。

通过以下操作可以确认quota软件包的安装情况,并列表查看quota软件包安装的配额管理程序。

图示:

3acc05dffff218b305cb4a523fd27a2a.png

一、磁盘配额概述

实现磁盘限额的条件

需要 Linux 内核支持安装 quota 软件包磁盘配额的限制对象

只在指定的文件系统(分区)内有效,用户使用其他未设置配额的文件系统时,将不会受到限制。磁盘配额的限制对象

主要针对指定的用户帐号、组帐号进行限制,没有被设置限额的用户或组将不受影响。对组账号设置配额后,组内所有用户使用的磁盘容量、文件数量的总和不能超过限制。磁盘配额的限制类型

磁盘容量:限制磁盘数据块(Block)大小,也就是磁盘空间大小(默认单位为 KB)文件数量:限制用户能够拥有的文件个数。在Linux系统中,每一个文件都有一个对应的数字标记,称为i节点(Inode)编号,这个编号在同一个文件系统内是唯一的,一次quota通过限制i节点的数量来实现对文件数量的限制磁盘配额的限制方法

软限制:指定一个软性的配额数值,在固定的宽限期(默认为7天)内允许暂时超过这个限制,但系统会给出警告信息。(通俗的说就是有的商量,不会一下子就不能用了)硬限制:指定一个硬性的配额数值,是绝对禁止用户超过的限制值,当达到硬限制值时,系统也会给出警告并禁止继续写入数据。硬限制的配额值大于相应的软限制值,否则软限制将失效。(通俗的说就是没得商量,给你规定多少就是多少,达到上限立马咔嚓)二、基本步骤

下面先通过一个步骤图来了解一下整个思路

314bcfc5ede0dc348eda74dcf6f04571.png

接下来我们分开详细了解一下各个步骤

1.以支持配额功能的方式挂载文件系统

除了内核和quota软件的支持以外,实施磁盘配额功能还有一个前提条件,即指定的分区必须已经挂载且支持磁盘配额功能

在配置调试过程中,可以使用带“-o usrquota,grpquota”选项的mount命令重新挂载指定的分区,以便增加对用户、组配额功能的支持。对于支持配额功能的文件系统,将在mount信息中显示“usrquota,grpquota”。

图示:添加 usrquota、grpquota 挂载参数,remount参数是重新挂载的意思

a229965fefde9fd244e588a1b0d4bf10.png

若需要在每次开机后自动挂载,可以将挂载参数写入到“/etc/fstab”文件中。(如下图)

图示:

d26b9f76bdd1d3716d913ab7a0bab103.png

注:示例中/dev/mail_store/mbox及/mailbox是上个文档中分享时示例中创建的逻辑卷和挂载点,我就顺便拿来做示例,如果有兴趣可以自己随便再创个分区,名字可以随便起的(随机应变)。

2.检测磁盘配额并生成配额文件

使用quotacheck命令可以对指定的文件系统进行磁盘配额检测,也可以用来建立配额文件。

命令格式:(如下图)

5dcd1dbf6283273c8cd1b8ab5983540e.png

示例图示:

05ffc2665cc3543f7849fdab173545cb.png

注:出现“Old file not found”之类的提示信息时,是正常的,是由于/mailbox文件系统中并未使用较早版本的配额文件。

如上图看到的一样,当用quotacheck命令建立完配额文件之后,会在分区的挂载点下(该文件系统的根目录)出现两个文件“aquota.user和aquota.group”,这两个文件就是配额文件,分别用来保存用户、组的配额设置。默认权限为600。

3.编辑用户和组账号的配额设置

编辑配额使用的命令是edquota,结合“-u,-g”分别用于编辑用户和组的配额设置。只需修改相应的soft、hart列下的值,其他的数值或文字不要修改。

命令格式:

2d39fb0bb1bdc45077f163c3d95377e3.png

示例图示:

594fbf03577be997702e41da0bdacf41.png

91cf845ac9f3527666bcfe5ab80fce1a.png

注:默认单位是KB,可以输入80M或100M来代替80000和100000。

软限制的宽限期默认为7天,若需要修改期限,可以执行“edquota -t”命令进行调整。宽限期的时间单位可以是天、小时、分或秒。(如下图)

图示:

18defcfdd9636305d206a4921d114dc3.png

4.启动文件系统的磁盘配额功能

使用的命令是“quotaon(启动)、quotaoff(关闭)”,需要指定设备文件名或文件系统的挂载点目录作为命令参数。quotaon命令使用的quotacheck的选项类似。

图示:

2aa117b3fa89d380846d3c41a88406b3.png

5.验证磁盘配额功能

使用受配额限制的用户账号登录

必须切换到设置配额的分区(挂载目录)

创建指定数量的文件:使用 touch 命令,或 cp 命令

创建指定容量的文件:使用 dd 命令,或 cp 命令

图示:

4800e25195fc3640f73ab73b60a96ba6.png

关于dd命令,dd命令是一个设备转换和复制命令,分别使用“if=指定的输入设备或文件”,“of=指定的输出设备或文件”,“bs=指定读取数据块的大小”,“count=指定读取数据块的数量”。上图操作的意思可以粗略的理解为:向/mailbox目录下写入一个名为myfile的测试文件,大小为110M(分110次读取,每次读取1M),复制来源为设备文件“/dev/zero”。

6.查看用户或分区的配额使用情况

侧重用户、组账号角度:使用quota命令quota -u 用户名

quota -g 组名

侧重文件系统角度:使用repquota图示:

31fef6fd130b4506851008830cc35ad0.png

举报/反馈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值