如果我有两台服务器,一台运行 Windows Server 2003,另一台运行 Ubuntu 10,那么将一个驱动器“映射”到另一个驱动器的最佳方法是什么?两种方法都可以。它们各自处于不同的状态,并且各自都有一个外部 IP。我只需要在 Ubuntu 服务器上进行一些处理,然后将文件写入其自己的驱动器,并让 Web 服务器(Windows)读取它,或者让它写入 Windows HDD,并让 Windows 读取它。
答案1
由于两台服务器之间的链接不是“可靠”链接(即专用连接,但容易受到第三方中断的影响),因此您可以做的最好的事情是在 Ubuntu 机器上本地创建文件,然后在完成后将其复制到 Windows 机器上。
通过不可靠的链接安装文件系统或共享可能会导致许多问题,例如系统在尝试访问不存在的文件系统时会冻结等等。
我推荐用于复制数据的程序取决于数据的敏感程度。
如果您不担心加密数据,或者您已经设置了加密(例如 VPN),那么该smbclient
程序(其操作与 FTP 非常相似但在 Windows 共享上)可能是最简单的:
$ smbclient '\\server\share' -I <ip address> -A /path/to/authentication/file -c "put myfile.dat"
或者类似的东西。 smbclient 手册页可以找到这里
如果您更担心安全性,那么我建议在 Windows 机器上安装 SSH 服务器并使用它scp
来复制文件。
答案2
您可以设置 Samba + OpenVPN 并将 Ubuntu 驱动器映射到 Windows。或者,您可以在它们之间设置 SSH 通道,并在守护进程模式下使用 rsync 来监视数据更改。我会选择第一个选项 - 它更容易设置。