在 btrfs 平衡操作期间继续工作是否安全?

在 btrfs 平衡操作期间继续工作是否安全?

我有一个 rocks 集群系统,其中有一个使用 btrfs 文件系统的 NAS,配置为 RAID 10。最近我们遇到了“设备上没有剩余空间”的错误,我最终发现元数据几乎完全用完了。所以我希望执行平衡操作来解决这个问题。

我不清楚的是,在进行平衡操作时,我们的用户是否可以继续工作并访问 nas 上的目录?手动的总体而言:

“文件系统的磁盘状态始终保持一致,因此意外中断(例如系统崩溃、重启)不会损坏文件系统。除非指定了挂载选项 skip_balance,否则平衡操作的进度将暂时存储并将在挂载时恢复。”

这让我想到数据块仅在该块的平衡完成后才会重新分配,但我还没有在任何地方找到我的问题的明确答案:在平衡操作期间,用户继续工作、在 nas 上读取/写入数据是否安全,或者是否有必要在此过程中使系统脱机,而对于我们的 TB 数据来说,这可能需要数小时或数天的时间?

答案1

是的,您可以在线执行此操作。数据或元数据引用仅在特定区块的平衡完成后才会更新,因此即使在修改期间也会保持一致。

如果系统高度写入事务,则平衡操作将花费更长的时间,但这比使系统脱机要好得多。

相关内容