我正在尝试让用户配额在 xfs 格式的根分区上运行。
但是,我无法挂载启用了用户配额的分区:
# mount
[...]
/dev/disk/by-uuid/91f9e241-4878-4c86-868e-e19491a12378 on / type xfs (rw,relatime,attr2,delaylog,noquota)
[...]
# cat /etc/fstab
[...]
/dev/md/2 / xfs defaults,uquota 0 0
# dmesg | grep -i -E "(xfs|quota|md2)"
[ 1.228189] VFS: Disk quotas dquot_6.5.2
[ 2.810291] md: md2 stopped.
[ 2.819683] md/raid1:md2: active with 2 out of 2 mirrors
[ 2.819762] md2: detected capacity change from 0 to 2991329640448
[ 2.832585] md2: unknown partition table
[ 3.249903] SGI XFS with ACLs, security attributes, realtime, large block/inode numbers, no debug enabled
[ 3.250357] SGI XFS Quota Management subsystem
[ 3.251240] XFS (md2): Mounting Filesystem
[ 3.434411] XFS (md2): Ending clean mount
我尝试重新安装mount -o remount,uquota /
并重新启动。 mount 命令没有输出任何内容。
我也尝试过使用usrquota
而不是uquota
,但没有什么区别。
有人知道如何解决这个问题吗?
/
编辑:为了清楚起见,以下是我尝试重新安装时发生的情况:
# mount | grep " / "
/dev/disk/by-uuid/91f9e241-4878-4c86-868e-e19491a12378 on / type xfs (rw,relatime,attr2,delaylog,noquota)
# mount -o remount,usrquota /
# mount | grep " / "
/dev/disk/by-uuid/91f9e241-4878-4c86-868e-e19491a12378 on / type xfs (rw,relatime,attr2,delaylog,noquota)
答案1
看起来它没有在启用配额的情况下挂载。根据 xfs_quota 手册页,在根文件系统上设置配额需要采用与其他 XFS 文件系统不同的方法。摘自 man xfs_quota 的“配额管理”部分:
“在根文件系统上启用配额与上述略有不同。对于 IRIX XFS,请参阅quotaon(1M)。对于 Linux XFS,必须使用‘rootflags=’启动参数传入配额挂载标志。”
在 /etc/default/grub 中设置 GRUB_CMDLINE_LINUX="rootflags=quota",运行 update-grub,然后重新启动应该可以在根文件系统上启用配额。