我已关注文档 here并创建了一个基本的 Ceph block 设备
我还可以使用基本的 C# 文件操作读取/写入 block 设备。
但是,当我使用 rm
删除文件时在 linux 终端中的命令,文件从挂载的设备中删除,但磁盘仍然被占用(至少这是仪表板插件中显示的内容)。
为什么有人知道原因?
最佳答案
Ceph block 存储 (rbd) 允许您在 ceph 之上创建完整的文件系统。然而,这些文件系统并不知道它们在 ceph 之上,并且表现得像往常一样。当一个对象被删除时,文件系统将其标记为已删除,而实际上并未向底层数据存储释放空间。
您可以通过运行 fstrim
强制文件系统释放空间。 block 设备上的命令。
有关正在发生的事情的更详细说明,请参阅此帖子:https://www.sebastien-han.fr/blog/2015/01/26/ceph-and-krbd-discard/
关于ubuntu - 如何通过安装在 Ubuntu 上的 block 设备删除存储在 Ceph 中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51476627/