Unix NFS 挂载和移动文件

abe*_*amp 5 mount file-transfer mv

有一个关于 NFS 挂载以及它们如何与低级别传输文件交互的问题。我试图了解从同一个挂载内传输文件所涉及的延迟。

假设您通过 SSH 连接到具有挂载设置的 VM。虚拟机在美国,挂载在欧洲。现在执行以下命令:

sudo mv /mnt/serverInEurope/dir1/file.txt /mnt/serverInEurope/dir2/file.txt 
Run Code Online (Sandbox Code Playgroud)

美国的VM是否读取文件,只是为了将其写回欧洲安装?

第二个问题非常相似:

sudo mv /mnt/serverOneInEurope/file.txt /mnt/serverTwoInEurope/file.txt 
Run Code Online (Sandbox Code Playgroud)

如果我使用美国的 VM 从欧洲的一台已安装服务器转移到另一台服务器,VM 会在从欧洲装载转移到欧洲装载之前在本地读取数据吗?或者文件的 mv'ing 是否足够智能以完全在欧洲的坐骑之间执行传输?

这些是非常重要的区别,因为我在欧洲的不同服务器中传输 PB 或更多信息。

谢谢你的时间。

roa*_*ima 8

使用mv了内部的NFS挂载一个文件或文件夹将远程应用的操作。(请参阅此API 函数列表或此概述。)无论文件大小如何,只要dir1dir2是同一挂载点的一部分,此示例几乎都会立即执行:

mv /mnt/serverInEurope/dir1/file.txt /mnt/serverInEurope/dir2/file.txt
Run Code Online (Sandbox Code Playgroud)

使用mv移动装入点之间的文件或文件夹,需要在客户端处理数据。在这种情况下,数据将跨大西洋执行双跳,即使serverOneInEuropeserverTwoInEurope位于同一个物理机架中:

mv /mnt/serverOneInEurope/file.txt /mnt/serverTwoInEurope/file.txt
Run Code Online (Sandbox Code Playgroud)

在第二种情况下,最好获得访问权限serverOneInEurope并将数据直接传输到serverTwoInEurope. 如果失败,请在同一个数据中心启动虚拟机并“本地”挂载两个共享。