Menu Close

4.4. 使用 quotasync 命令同步配额

GFS2 在其磁盘的内部文件中保存所有配额信息。GFS2 节点不会在每次写入文件系统时更新这个配额文件,默认情况下它每 60 秒更新一次配额文件。这是避免节点间在写入配额文件时出现竞争所必需的,这会导致性能下降。

随着用户或组群接近其配额限制,GFS2 会动态减少更新配额文件的时间间隔以避免超过限制。配额同步之间的正常时间周期是一个可调整的参数 quota_quantum。您可以使用 quota_quantum= 挂载选项更改默认值 60 秒,如 挂载挂载选项中的"GFS2-Specific Mount Options"表中所述。

必须在每个节点上设置 quota_quantum 参数,并且每次挂载文件系统时都必须设置。卸载后不会保留对 quota_quantum 参数的更改。您可以使用 mount -o remount 来更新 quota_quantum 值。

您可以使用 quotasync 命令在 GFS2 执行自动更新时将节点的配额信息与磁盘上的配额文件同步。使用 同步配额信息

quotasync [-ug] -a|mountpoint...
u
同步用户配额文件。
g
同步组配额文件
a
同步所有当前启用配额并支持同步的文件系统。当没有 -a 时,应该指定一个文件系统挂载点。
mountpoint
指定要执行操作的 GFS2 文件系统。

您可以通过指定 quota-quantum 挂载选项来调整同步之间的时间。

# mount -o quota_quantum=secs,remount BlockDevice MountPoint
MountPoint
指定要执行操作的 GFS2 文件系统。
secs
指定 GFS2 对常规配额文件进行同步之间的新时间周期。数值越小,竞争越高,性能会下降。

以下示例为文件系统 /mnt/mygfs2 在运行的节点上把缓存的“脏配额”与磁盘中的配额文件进行同步。

# quotasync -ug /mnt/mygfs2

这个示例在逻辑卷 /dev/volgroup/logical_volume 中重新挂载文件系统时,在 /mnt/mygfs2 中将常规配额文件更新的默认时间周期改为一小时(3600 秒)。

# mount -o quota_quantum=3600,remount /dev/volgroup/logical_volume /mnt/mygfs2