Linux怎么设置磁盘配额_Linux系统Quota安装与用户空间限制【教程】


要在Linux中精确控制用户或用户组磁盘空间,必须启用Quota机制:一、安装quota工具并确认内核支持;二、修改fstab添加usrquota/grpquota并重挂载;三、初始化aquota.user/group数据库;四、启用quotaon服务并设置开机自启;五、用edquota设定用户/组限额及宽限期;六、XFS系统需用xfs_quota命令配置;七、通过写入测试与quota/repquota命令验证效果。

如果您需要在Linux系统中对用户或用户组的磁盘使用空间进行精确控制,则必须启用并配置Quota机制。以下是实现该目标的多种完整操作路径:

一、确认并安装Quota工具

系统需具备quota命令集及内核支持,部分发行版默认未安装quota软件包。此步骤确保基础运行环境就绪。

1、检查是否已安装quota工具:quota -V

2、若提示命令未找到,则根据发行版执行安装:sudo apt install quota(Debian/Ubuntu)或sudo yum install quota(CentOS/RHEL)。

3、验证内核模块支持:grep CONFIG_QUOTA /boot/config-$(uname -r),输出应含ym

二、修改fstab并重新挂载分区

磁盘配额必须在文件系统挂载时启用,需为对应分区添加usrquota和/或grpquota挂载选项,并触发重挂载以生效。

1、编辑/etc/fstab文件:sudo vim /etc/fstab

2、定位目标分区行(如/dev/sdb1 /sdb1 ext4 defaults 0 0),将defaults替换为defaults,usrquota,grpquota

3、保存后执行重挂载:sudo mount -o remount /sdb1

4、确认挂载参数已更新:mount | grep '/sdb1',输出中应包含usrquotagrpquota

三、初始化配额数据库文件

系统需在挂载点根目录下生成aquota.user和aquota.group两个二进制数据库文件,用于记录各用户/组的空间使用状态。

1、进入目标挂载点:cd /sdb1

2、手动创建空配额文件(仅ext系列必需):sudo touch aquota.user aquota.group

3、设置严格权限:sudo chmod 600 aquota.*

4、扫描并生成配额数据:sudo quotacheck -cvmug /sdb1(-c强制创建,-v显示过程,-m忽略挂载状态检查)。

四、启用并验证配额服务

配额功能在初始化数据库后仍处于关闭状态,必须显式启动才能生效,且需确保开机自动启用。

1、立即启用所有配额:sudo quotaon -avug

2、检查启用状态:sudo quotaon -p,输出中对应分区状态应为enabled

3、设置开机自启:在/etc/rc.local末尾添加一行:/sbin/quotaon -avug(确保该文件有执行权限)。

五、为用户或用户组设置具体限额

通过edquota命令可交互式设定每个用户的块(blocks)与inode限制,软限(soft)与硬限(hard)单位均为KB,且支持批量复制配置。

1、为用户test1设置限额:sudo edquota -u test1

2、在vi界面中修改blocks行的soft与hard值(例如soft=512000、hard=524288,即500MB/512MB)。

3、为用户组group1设置限额:sudo edquota -g group1

4、将test1的配额模板应用至test2:sudo edquota -p test1 test2

5、设置宽限期(默认7天):sudo edquota -t,修改Block grace period值。

六、XFS文件系统专用配置路径

XFS不依赖aquota.*文件,其配额元数据直接存储于文件系统内部,启用方式与ext系列不同,须使用xfs_quota命令。

1、挂载时启用XFS配额:sudo mount -o uquota,gquota /dev/sdb2 /xfsdata

2、进入专家模式设置用户限额:sudo xfs_quota -x -c 'limit bsoft=100m bhard=120m isoft=100 ihard=120 test1' /xfsdata

3、查看XFS配额报告:sudo xfs_quota -x -c report /xfsdata

4、禁用XFS配额:sudo xfs_quota -x -c 'disable -u -g' /xfsdata

七、测试与实时监控配额效果

配置完成后必须进行写入测试,观察系统是否按预期触发警告或拒绝写入,并通过命令验证当前使用量。

1、切换至被限制用户:sudo -u test1 bash

2、尝试创建超出软限的文件:dd if=/dev/zero of=/sdb1/testfile bs=1M count=600

3、检查警告信息是否输出:dmesg | tail -5或查看系统日志中quota相关条目。

4、查看当前用户配额使用情况:quota -u test1

5、查看全系统配额汇总:sudo repquota -avug


# linux  # centos  # node  # ubuntu  # 工具  # ai  # linux系统  # bash  # if  # count  # vim  # 数据库  # debian  # 文件系统  # 中对  # 数据库文件  # 发行版  # 运行环境  # 均为  # 要在  # 软件包  # 您需要  # 该文件 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 网络优化76771 】 【 技术知识130152 】 【 IDC云计算60162 】 【 营销推广131313 】 【 AI优化88182 】 【 百度推广37138 】 【 网站推荐60173 】 【 精选阅读31334


相关推荐: Windows10如何查看蓝屏日志_Win10使用事件查看器分析Dump文件  Windows 10怎么隐藏特定更新补丁_Windows 10使用微软官方工具wushowhide.diagcab  Windows10系统怎么查看防火墙状态_Win10安全中心网络保护  Windows10如何更改计算机工作组_Win10系统属性修改Workgroup  Win11如何更新显卡驱动 Win11检查和安装设备驱动程序【方法】  手机php文件怎么变成mp4_安卓苹果打开php转mp4方法【教程】  如何在Golang中指定模块版本_使用go.mod控制版本号  Python函数接口稳定性_版本演进解析【指导】  Win11鼠标灵敏度怎么调 Win11鼠标指针移动速度设置【教程】  Win11怎么设置默认邮件应用_Windows11应用关联Mail设置  php高频调试功能有哪些_php常用调试函数与工具汇总【解答】  Win11怎么查看激活状态_查询Windows 11是否已永久激活【详解】  Windows10系统怎么查看运行时间_Win10 CPU正常运行时间查询  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  Win10怎么更改用户名 Win10修改账户名称操作教程  Windows10怎么用“讲述人”读屏辅助 Windows10轻松使用开启讲述人朗读屏幕文字帮助视障用户【教程】  Python并发安全问题_资源竞争说明【指导】  Go 语言标准库为何不提供泛型切片的 Contains 方法?  如何在 Go 中创建包含映射(map)的切片(slice)结构  Windows7怎么找回经典开始菜单_Windows7经典菜单找回步骤【方法】  Win11键盘快捷键大全_Windows 11常用高效快捷键汇总【技巧】  Win11怎么设置右键刷新选项_Windows11显示更多选项技巧  如何在 Go 应用中实现自动错误恢复与进程重启机制  PHP怎么接收前端传的时间戳_处理时间戳参数转换技巧汇总【指南】  php订单日志怎么在swoole写_php协程swoole写订单日志教程【教程】  Windows10怎样设置家长控制_Windows10家长控制设置方法【指南】  Windows10系统更新错误0x80070002_Win10自动更新失败手动修复  Windows服务持续崩溃怎样修复_系统服务保护机制解析  Win10如何卸载WindowsDefender_Win10卸载Defender教程【方法】  PhpStorm怎么调试PHP代码_PhpStorm断点设置与调试启动步骤【指南】  Win11怎么关闭粘滞键_彻底禁用Windows 11连按Shift粘滞键【步骤】  PHP 中 require() 语句返回值的用法详解  Windows10蓝屏代码DPC_WATCHDOG_VIOLATION_Win10死机修复指南  php订单日志权限怎么设_php订单日志文件权限设置技巧【技巧】  C++如何获取CPU核心数?(std::thread::hardware_concurrency)  如何在Golang中实现邮件发送功能_Golang SMTP发送与错误处理示例  短链接怎么自定义还原php_修改解码规则适配需求【汇总】  Win11怎么调整屏幕亮度_Windows 11调节显示器亮度护眼设置【步骤】  Python数据挖掘核心算法实践_聚类分类与特征工程  如何使用Golang进行HTTP服务性能测试_测量吞吐量和延迟  Python异步编程高级项目教程_asyncio协程任务管理实战  Win11任务栏怎么固定应用 Win11将软件图标固定到底部【步骤】  Python对象比较排序规则_集合使用说明【指导】  Win11相机打不开提示错误怎么修_相机权限开启与驱动修复【影像修复】  php命令行怎么运行_通过CLI模式执行PHP脚本的步骤【说明】  如何使用Golang捕获测试日志_Golang testing日志记录方法  php下载安装包太大怎么下载_分卷压缩下载方法【教程】  php485在php5.6下能用吗_php485旧版本兼容性问题说明【详解】  Python网页解析流程_html结构说明【指导】  Win11怎么更改计算机名_Windows11系统信息重命名设备教程 

 2026-01-01

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

致胜网络推广营销网


致胜网络推广营销网

致胜网络推广营销网专注海外推广十年,是谷歌推广.Facebook广告全球合作伙伴,我们精英化的技术团队为企业提供谷歌海外推广+外贸网站建设+网站维护运营+Google SEO优化+社交营销为您提供一站式海外营销服务。

 915688610

 17370845950

 915688610@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.