当前位置: 首页 > news >正文

Linux命令-quota(显示用户磁盘配额)

Linux命令-quota(显示用户磁盘配额)

    • 快速参考
    • 命令语法
    • 常用选项
    • 配额概念
    • 实战示例
      • 1. 基础查询
      • 2. 详细查询
      • 3. repquota:查看所有配额
      • 4. 配额配置流程
      • 5. 监控与告警
      • 6. edquota 交互式设置
    • 发行版差异
    • 配额相关命令全家桶
    • 总结

快速参考

quota命令用于查看用户或组的磁盘配额使用情况。磁盘配额是 Linux 文件系统的一项功能,允许系统管理员限制每个用户或组在特定文件系统上可以使用的磁盘空间(块配额)和文件数量(inode 配额)。quota让你一眼就能看到谁快用完了自己的配额。

磁盘配额是"共享资源的边界守卫"——在多用户服务器(学校机房、开发服务器、HPC 集群)上,配额系统确保了"一个人的大文件不会撑爆所有人的工作空间"。

命令语法

quota [选项] [用户|组]

常用选项

选项功能
-u显示用户配额(默认)
-g显示组配额
-v详细输出(包括没有配额的挂载点)
-s人类可读格式(KB/MB/GB)
-q简洁模式(只显示超配额的信息)
-w同时显示用户和组配额
-f指定文件系统
--no-wrap不折行显示

配额概念

配额分为两类: 1. 块配额(Block Quota):限制磁盘空间使用量 - 软限制(soft limit):可临时超过(有宽限期) - 硬限制(hard limit):绝对不可超过 2. Inode 配额(Inode Quota):限制文件/目录数量 - 软限制和硬限制同上 宽限期(grace period):超过软限制后的宽限时间(默认 7 天)

实战示例

1. 基础查询

# 查看当前用户的配额$quota-sDisk quotasforuser alice(uid1000): Filesystem spacequotalimit grace filesquotalimit grace /dev/sda1 512M 800M 1000M125015002000# 解读:# space 512M: 当前使用了 512MB 磁盘空间# quota 800M: 软限制 = 800MB(超过后开始宽限期倒计时)# limit 1000M: 硬限制 = 1GB(绝对不能超过)# files 1250: 当前 1250 个文件# quota 1500: 软限制 1500 个文件# limit 2000: 硬限制 2000 个文件# grace: 空白 = 未超过软限制,无宽限期计时# 查看指定用户的配额(需要 root 或配额管理员权限)$sudoquota-salice $sudoquota-sbob# 查看所有用户配额$sudorepquota-s/ *** Reportforuser quotas on device /dev/sda1 Block grace time: 7days;Inode grace time: 7days Space limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root --5.2G 0K 0K 125k00alice -- 512M 800M 1000M125015002000bob +- 950M 800M 1000M 2days210015002000none carol -- 120M 500M 600M30010001500# +- 表示 bob 超过了软限制(+),宽限期还有 2 天

2. 详细查询

# 详细模式(包括没有配额的文件系统)$quota-v-sDisk quotasforuser alice(uid1000): Filesystem spacequotalimit grace filesquotalimit grace /dev/sda1 512M 800M 1000M125015002000/dev/sdb1 0K 0K 0K000# sdb1 没有配额限制(0 表示无限制)# 组配额查询$quota-g-s$quota-g-sdevelopers# 查看特定文件系统上的配额$quota-s-f/dev/sda1# 简洁模式(只在超配额时显示)$quota-q# 没有配额问题时无输出# 同时查用户和组$quota-w-s

3. repquota:查看所有配额

# 查看所有用户配额(管理员工具)$sudorepquota-s/ $sudorepquota-a# 所有文件系统$sudorepquota-s-u/ $sudorepquota-s-g/# 查看专门配额项目(project quota)$sudorepquota-s-P/data# 筛选:只显示超过软限制的用户$sudorepquota-s/|awk'$5 == "+-" {print $1, $3, $4, $5}'# 生成配额报告$sudorepquota-s/|column-t>/tmp/quota_report.txt

4. 配额配置流程

# 步骤1:启用文件系统的配额支持# 编辑 /etc/fstab$cat/etc/fstab|grepsda1UUID=abc123 / ext4 defaults,usrquota,grpquota01# ^^^^^^^^^^^^^^^^^ 添加此选项# 步骤2:重新挂载$sudomount-oremount /# 步骤3:创建配额数据库文件$sudoquotacheck-cug/ $ls-l/aquota.user /aquota.group# 步骤4:开启配额$sudoquotaon /# 步骤5:设置用户配额$sudosetquota-ualice800000100000015002000/dev/sda1# ^^^^^ ^^^^^^^ ^^^^ ^^^^# 软限制 硬限制 文件软限制 文件硬限制# 单位: KB(1M=1000K 在 setquota 中)# 步骤6:验证$sudoquota-salice# 步骤7:设置宽限期$sudosetquota-t864000604800/dev/sda1# 块宽限期 inode宽限期(秒)# 10天 7天

5. 监控与告警

# 检查所有超过 80% 软限制的用户$sudorepquota-s/|awk'NR>5 && $3 ~ /[0-9]/ && $4 ~ /[0-9]/ && $4+0>0 && ($3+0)/($4+0) > 0.8 {print $1, $3, $4}'# 配额检查脚本$cat>/usr/local/bin/quota_check.sh<<'SCRIPT' #!/bin/bash THRESHOLD_PERCENT=85 MOUNT="/" echo "=== Quota Check $(date) ===" sudo repquota -s "$MOUNT" | awk 'NR>5 && $3 ~ /[0-9]/ && $4 ~ /[0-9]/ && $4+0>0 { usage = $3 limit = $4 gsub(/[A-Za-z]/, "", usage) # 移除 M/G/K 后缀 gsub(/[A-Za-z]/, "", limit) pct = (usage+0) * 100 / (limit+0) if (pct > '"$THRESHOLD_PERCENT"') { printf "WARNING: %s using %d%% of quota (%s/%s)\n", $1, pct, $3, $4 } }' SCRIPT# Cron 每日检查# 0 8 * * * /usr/local/bin/quota_check.sh | mail -s "Quota Report" admin@example.com# 配额快满时自动通知用户$sudorepquota-s/|awk'NR>5 && $3 ~ /[0-9]/ && $4 ~ /[0-9]/ { # 简化逻辑... }'

6. edquota 交互式设置

# 对单个用户使用 edquota(交互式编辑)$sudoedquota-ualice# 会打开编辑器,显示类似内容:Disk quotasforuser alice(uid1000): Filesystem blocks soft hard inodes soft hard /dev/sda15242888000001000000125015002000# 复制配额模板$sudoedquota-palice bob carol# 将 alice 的配额设置复制给 bob 和 carol# 设置宽限期$sudoedquota-t# 编辑全局宽限期# 编辑组配额$sudoedquota-gdevelopers

发行版差异

发行版quota 包名默认安装命令路径
Debian/Ubuntuquota/usr/bin/quota
RHEL/CentOS/Fedoraquota/usr/bin/quota
Arch Linuxquota-tools/usr/bin/quota
Alpine Linuxquota-tools/usr/bin/quota
# 安装$sudoaptinstallquota# Debian/Ubuntu$sudodnfinstallquota# RHEL/Fedora$sudopacman-Squota-tools# Arch$sudoapkaddquota-tools# Alpine

配额相关命令全家桶

命令功能
quota查看配额使用情况
repquota报告所有用户/组的配额
setquota命令行设置配额
edquota交互式编辑配额
quotacheck检查并创建配额数据库
quotaon启用配额
quotaoff禁用配额
quotastats显示配额统计
warnquota配额警告通知

总结

磁盘配额是多用户系统的公平使用保障。核心流程:

  1. /etc/fstab中添加usrquota,grpquota选项
  2. quotacheck -cug /创建配额数据库
  3. quotaon /启用配额
  4. setquotaedquota设置限制
  5. quota -srepquota定期检查

记住关键概念:

  • 软限制(soft):可超过但有宽限期
  • 硬限制(hard):无法超过的绝对上限
  • 宽限期(grace):超过软限制后的缓冲时间
  • 块配额限制空间,inode 配额限制文件数量
http://www.jsqmd.com/news/1093038/

相关文章:

  • Matlab 麻雀优化双向长短期记忆网络(SSA-BILSTM)的时间序列预测(时序)
  • 京东抢购助手终极指南:免费开源工具实现自动化抢单
  • 2026证件照换衣服工具全解:手机APP、在线网页、小程序操作指南
  • RAG 搞定!告别「有库无答」,用 Rerank 让大模型精准回复(收藏版)
  • 别一上来就看复杂插件:先用 Delay看懂一个最小 VM 插件是怎么接进系统的
  • 小白程序员必看!收藏这篇,轻松入门大模型工具调用与Function Calling
  • 汇编——位移指令
  • 考验AI的“自我“-AI对《红楼梦》后40回的改写(30)
  • ReAct Inside —— 从 Message 到 State,看懂 AI Agent 的工作原理
  • Hutool 的 `TimedCache` 到期会自动清理吗? ——————hutool cache的“惰性清理“和“定期清理“
  • 递归函数Recursive Function
  • 如何评价GLM-5.2?
  • 联邦学习侧信道攻击:FLARE框架解析与防御
  • 成功企业的衰亡密码:从“看不见的癌症”到真正的长期主义
  • agency-agents-zh大更新:一句话,让 216个 AI 专家组队替你干活,上线桌面端和web端了!已开源
  • 每日一个开源项目(第145篇):Trellis - 把项目记忆、规范和任务上下文持久化进代码仓库
  • 2026好用的视频去水印工具电脑手机推荐,免费无广告精选
  • 量子约束优化搜索框架CBQS解析与应用
  • 计算机毕业设计之基于SSM框架技术的超市货品销售预警平台的设计与实现
  • 别让AI一直“读心“:冲突触发式心智理论的因果模型
  • 内网 Web 服务断外网后白屏卡顿?全链路排查手册与根治方案
  • 盘点优质虚拟资源货源,这家老牌平台凭什么让我死磕
  • 女性站长学SEO比男性更有优势吗?
  • 数据分析中常用的回归分析是什么?它的应用场景有哪些?
  • BCH码介绍
  • 《HarmonyOS技术精讲-Core File Kit(文件基础服务)》第1篇:文件沙箱概念与核心架构
  • 这份榜单够用!2026年最流行AI论文平台榜单,免费高效产出合规稿
  • 跳出空白文档内耗:Paperxie 毕业论文智能写作,搭建分层式学术创作闭环
  • 2026上海专业招商场地推荐:选址就该这样选
  • 超小尺寸,超高算力:明远智睿RV1126B开发板全面评测