Administrator
Administrator
发布于 2025-03-21 / 26 阅读
0
1

Ubuntu 使用 quota为用户分配磁盘空间

1. 安装磁盘配额工具

sudo apt update
sudo apt install quota

2. 启用文件系统的配额支持

需要编辑 /etc/fstab 文件,为需要配额的分区添加 usrquota(用户配额)和/或 grpquota(组配额)选项。

示例(假设 /home 分区需要配额):

sudo gedit /etc/fstab

找到 /home 分区的行,修改 defaults 为:

UUID=... /home ext4 defaults,usrquota,grpquota 0 2

保存并退出。

3. 重新挂载文件系统并生成配额数据库

sudo mount -o remount /home
sudo quotacheck -cugm /home  # 生成配额数据库文件(aquota.user 和 aquota.group)
sudo quotaon /home           # 启用配额

4. 为用户设置磁盘配额

使用 edquota 命令编辑用户的配额限制:

sudo edquota -u username

会打开一个文本界面,设置以下参数:

soft:软限制(超过后会警告,宽限期默认7天)

hard:硬限制(绝对不可超过的值)

• 单位是 KB

示例配置

Disk quotas for user username (uid 1001):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sda1                      0       1000000     1500000          0        0        0

此处用户 username 的磁盘空间软限制为 1GB,硬限制为 1.5GB。

5. 设置宽限期(可选)

默认软限制的宽限期为7天,可通过以下命令修改:

sudo edquota -t

6. 验证配额配置

# 查看所有用户的配额状态

sudo repquota /home

# 查看特定用户的配额使用情况

sudo quota -u username

7. 自动应用配额(可选)

为确保系统重启后配额自动生效,编辑 /etc/rc.local 并添加以下内容:

mount -o remount /home
quotaon /home 

注意事项

1. 文件系统类型:确保分区使用支持配额的文件系统(如 ext4、xfs 等)。

2. 用户主目录:如果用户主目录在 /home 下,此方法直接生效;若在其他位置,需调整对应的挂载点。

3. 组配额:若需按组限制,使用 grpquotaedquota -g groupname

4. 实时生效:配额设置无需重启,修改后立即生效。


评论