我有两个虚拟机(linux)在Azure中。 两者都在同一个Vnet中。 通过loggingVm1( 10.0.0.4 ),我可以轻松地ping通Vm2( 10.0.0.5 ),这意味着两者都可以通信。 现在我在Vm2中有一个外部驱动器,它叫/data 。 我的问题是:
注意:我可以在同一个虚拟机上执行上述操作,例如在VM1中挂载外部驱动器,并将数据从C盘移动到挂载的磁盘上。
目前, Azure不支持在两个虚拟机上安装一个磁盘(VHD) ,因此无法将目录从Vm1移动到安装了Vm2的驱动器。 正如David所说,一个符号链接不支持跨虚拟机。
在您的情况下,Azure文件共享是一种select。 Azure文件共享支持安装在多个虚拟机上。 在Azure虚拟机或云服务中运行的应用程序或从本地客户端运行的应用程序可以在云中安装文件共享,就像桌面应用程序安装典型的SMB共享一样。 然后,任意数量的应用程序组件都可以同时安装和访问文件存储共享。
有关如何在Linux中使用Azure文件存储的更多信息,请参阅此链接 。
您不能添加跨越机器(或VM)边界的符号链接。 要从另一台机器上看到一个磁盘,你需要共享其他机器可以在vnet上连接的磁盘(例如,smb共享),或者使用Azure File Storage(一个在blob存储中的smb共享)之类的东西。 一旦安装了Azure文件存储共享,您就可以创build符号连接到共享中的特定文件夹,就像使用本地磁盘一样。
至于在机器之间复制/移动,Linux有一个内置的scp工具(它位于ssh之上用于安全的文件复制)。 这与命令行cp或mv不同,因为它需要特定的参数(如凭证)。