user1011471 Asked: 2016-02-25 10:29:32 +0800 CST2016-02-25 10:29:32 +0800 CST 2016-02-25 10:29:32 +0800 CST mv:生成的文件何时可用? 772 假设一个进程这样做:mv一个大文件到目标目录 另一个进程正在目标目录中监视该文件,因为它想尽快读取其内容。文件系统是否确保第二个进程仅在文件完全可用时“看到”文件? 我查看了手册页,mv但没有看到任何保证... linux 1 个回答 Voted Best Answer thrig 2016-02-25T11:00:28+08:002016-02-25T11:00:28+08:00 这在很大程度上取决于源文件和目标文件是在同一个文件系统上(在这种情况下,arename(2)已经完成,†这几乎是原子的)还是不同的文件系统(根本不是原子的,一个进程可能很容易看到一个不完整的文件,尤其是在系统或网络或文件系统很慢的情况下)。 † 基于我多年前在 Linux 上所做的,因此 YMMV 具有不同strace的.mvmv
这在很大程度上取决于源文件和目标文件是在同一个文件系统上(在这种情况下,a
rename(2)
已经完成,†这几乎是原子的)还是不同的文件系统(根本不是原子的,一个进程可能很容易看到一个不完整的文件,尤其是在系统或网络或文件系统很慢的情况下)。† 基于我多年前在 Linux 上所做的,因此 YMMV 具有不同
strace
的.mv
mv