当我从一台计算机到另一台计算机的scp
大文件,然后在完成之前将该文件移动到计算机同一分区上的不同位置时,会发生什么情况?A
B
mv
B
scp
我假设只是目录条目中的位置被更新?那么这样做我的文件不会以任何方式损坏吗?
答案1
是的,假设文件移动到的目标位于同一文件系统上,移动文件只会更新目录条目。移动文件不会改变用于在[note]scp
上写入文件的文件描述符。B
在不同的文件系统上mv
必须首先复制文件,然后在旧位置取消链接文件。您可能看到损坏的唯一情况是,如果您在传输完成之前移动到不同的文件系统(scp
之前没有接收到所有内容/刷新的写入缓冲区mv
)。那么有可能mv
只复制部分文件,从而导致副本损坏。
[注意]:如果scp
传输中断,如果文件被移动,显然无法使用原始路径恢复。