CurveFS rename 接口实现方案是否需要实现跨文件系统的 rename 操作? 不需要,因为在 VFS 这层如果发现 rename 操作的 2 个文件不属于同一挂载点的话就会返回 EXDEV (Invalid cross-device link) 错误: rename() do_renameat2() ... error = -EXDEV; if (old_path.mnt != new_path.mnt) 'mv srcfile /tmp/dstfile' ... rename("srcfile", "/tmp/dstfile") = -1 EXDEV (Invalid cross-device link) unlink("/tmp/dstfile") = 0 ... open("srcfile", O_RDONLY|O_NOFOLLOW) = 30 码力 | 15 页 | 555.93 KB | 6 月前3
共 1 条
- 1













