概括

概括

概括

可以分享一下吗符号链接在 Windows 中将网络位置作为网络共享?例如:

D:\folder\Shared\foo上的\\server共享为\\server\foo,其中D:\folder\Shared\foo实际上是指向的目录符号链接\\other\server\bar

或者这是一个XY问题

背景

我们有一台 Windows Server 2008 R2* 虚拟机,fs1有 2 个虚拟磁盘。C:当然是系统驱动器,D:是数据驱动器。我们D:使用 Windows 通过 SMB共享多个文件夹共享和存储管理。 例如:

  • D:\Shares\Shared\Engineering共享为\\fs1\Engineering
  • C:\Shares\Shared\Admin共享为\\fs1\Admin

这些共享通常映射为用户工作站上的网络驱动器。例如,E:\可能映射到。\\fs1\Engineering

我想将这些共享从这个虚拟磁盘移到我们的新存储位置\\abc\def,并且我想对最终用户透明地执行此操作(至少现在 - 最终原始路径将消失,但这超出了问题的范围)。

*今年升级至 2016 或 2019。

我现在在哪里

肯定子文件夹的共享文件夹正在迁移,首先使用 RoboCopy 将数据复制到目标位置 ( \\abc\def),然后将原始路径重命名为备份路径,最后创建指向新目标的目录符号链接。该过程大致如下(为简洁起见,省略了一些其他标志/选项):

robocopy D:\Shares\Shared\Admin\Finance \\abc\def\Finance /mir
ren D:\Shares\Shared\Admin\Finance D:\Shares\Shared\Admin\Finance_old
mklink /D D:\Shares\Shared\Admin\Finance \\abc\def\Finance

然后,Finance_old一旦我们验证一切运行正常,文件夹的权限就会改变,并最终被删除。

请注意,根共享文件夹D:\Shares\Shared\Admin仍然是一个实际文件夹,而不是符号链接。

效果非常好 —— 停机时间不到 1 秒,并且所有最终用户程序都能继续工作。

附言:Windows SymLink 权限

我已经设置了 GPO 以允许Remote Link to Remote Target符号链接。源1来源2

问题

子文件夹太多,无法为每个子文件夹创建符号链接,因此,我想为每个共享根文件夹创建一个符号链接。

我可以在目录中成功创建符号链接D:\Shares\Shared

mklink /D D:\Shares\Shared\symlink_test \\abc\def\target

然后我可以成功将其添加到共享和存储管理:

共享设置

分享成功

\\fs1在 Windows 资源管理器中浏览时会显示共享。

但是当我尝试访问共享位置时\\fs1\symlink_test,出现“设备未准备好”错误:

设备未准备好错误

嘿,它说的是有关权限的内容!

我已经检查了所有权限,该位置应该是可读的。

  • 我可以\\abc\def\symlink_test直接访问。
  • 我可以访问D:\Shares\Shared\symlink_test并且它正确地带我到目标位置。

所以我不认为这是一个许可问题。

其他信息

  • fs1正在运行 Windows Server 2008 R2
  • \\abc\def实际上是一个分布式文件系统命名空间
  • \\abc\def\foo是 DFS 命名空间中的一个文件夹,其目标位于 Synology NAS 上\\nas1\foo

答案1

我鼓励您了解一下 DFS。我自己没有亲自进行过设置,但我见过管理员使用它成功地将共享从一台 Windows CIFS 服务器迁移到另一台。

它看起来有点像这样:

  1. Server1 在 \\Server1\share 处包含一个共享。创建了一个类似于 \\DFS\share 的 DFS 共享,它从 \\Server1\share 获取信息。
  2. Server2 已启动并添加到 DFS 复制中。现在 \\Server1\share 中的所有数据均可在 \\server2\share 和 \\DFS\share 上使用。
  3. 将您的 GPO (或映射共享的任何内容) 更改为 \\DFS\share 而不是 \\Server1\share。
  4. 现在您可以从 DFS 中删除 \\Server1\share 并将其关闭。任何时候您需要再次迁移共享,您都可以将新服务器添加到 DFS 复制中。此外,您可以在 DFS 中连续拥有多台服务器,以进行备份(一台服务器死机,另一台服务器有数据)或可用性(一台服务器位于两个远程办公室)等。

相关内容