我正在实现原子写入(Linux 和 FreeBSD 上的 Python 中的 FWIW),并且我正在写入与我计划写入的文件位于同一目录中的临时文件(以确保它们位于同一目录中)文件系统,因此 rename(2) 成功并且写入可以是原子的)。
我的问题是,是否存在同一目录中的两个文件位于不同文件系统上的情况? (我没有遵循符号链接,因此符号链接到不同文件系统上的另一个文件的文件对我来说不是问题)。
答案1
是的。不仅可以挂载目录,还可以挂载文件。这使得能够将驻留在不同文件系统上的文件装载到一个共同目录中。
重命名文件会导致 EBUSY,mv
使用时,通常会打印消息“设备或资源繁忙”。可以重命名目的地而不会引发错误。更改将应用到新名称。