无法删除任何文件上的 C(写入时无复制)属性

Can't remove C (no copy on write) attribute on any file

所以多年来我一直在使用 btrfs,没有任何问题,直到最近我注意到我所有的新文件似乎都有 +C 属性,有些没有,我一直无法找出导致文件属性具有 +C

的原因

根据我的理解,如果我运行:

chattr -C file

它应该删除 C 属性,但即使使用 sudo,该命令似乎也无能为力,尽管我可以 add/remove 其他属性,但不能删除 C。

我以为它可能是 fstab 但看起来不错,我什至在最后添加了 datacow

UUID=ed0d0921-a6cd-48c0-ab59-27b7b7e8bdd2 /home/jawz/Misc/HD btrfs defaults,noatime,space_cache=v2,commit=120,compress=zstd,datacow 0 0

有什么方法可以修复我的文件系统,以便可以在写入时再次复制文件?

根据 btrfs wiki FAQ:

... the COW status can be modified only for empty or newly created files.

如果您真的需要更改 COW 状态,我想您需要将当前文件复制到新文件中。