0

我目前在 AWS 上托管我的 ASP.Net Web 应用程序。我已经为 Windows 环境搜索了最佳的 aws 存储选项。我发现 aws 文件共享系统 FSx 适合我们的需求。

我的应用程序所需的功能之一是能够在网络共享文件夹上创建符号链接。在我的本地环境中,我有活动目录和网络共享文件夹。我已应用这些步骤在装有 Windows 10 的 PC 上启用符号链接,它可以工作:

1-使用此 cmd 命令启用远程到远程符号链接:

fsutil behavior set SymlinkEvaluation R2R:1

2-检查该功能是否启用:

fsutil behavior query SymlinkEvaluation

结果是:

Local to local symbolic links are enabled.
Local to remote symbolic links are enabled.
Remote to local symbolic links are disabled.
Remote to remote symbolic links are enabled.

3-应用此命令以获得对目标目录的访问权限:

net use y: "\\share\Public\" * /user:UserName /persistent:yes

4-使用此命令创建符号链接:

mklink /D \\share\Public\Husam\symtest \\share\Public

它在我的带有活动目录的本地网络上运行良好。

在 aws 上,我有 EC2 windows VM 加入了 aws 托管域。与我创建 FSx 的域相同。我用域管理员登录到机器。我使用 Windows 文件共享 GUI 工具为共享文件夹上的此用途授予了安全权限(共享和安全)。

当我尝试创建符号链接时,我得到:拒绝访问

mklink /d \\fs-432432fr34234a.myad.com\share\Husam\slink \\fs-432432fr34234a.myad.com\share
Access Denied

有什么建议么?有没有办法在活动目录中添加这个权限?

4

2 回答 2

1

我收到了上面报告的相同错误消息。我咨询了我工作的公司的 AWS 联系人,他们确认,截至目前,FSx for Windows File Server 不支持符号链接。

于 2021-02-12T17:03:58.447 回答
1

在我看来,亚马逊 fsx 不支持 mklink。我可以在我的 ebs 卷上链接到我心中的内容,但不能在 fsx 上。另外,当我在 linux 中挂载共享时ln -s test1 test2

ln: failed to create symbolic link 'test2': Operation not supported

我发现一条评论说“在 GPO 中,您可以在“计算机配置 > 管理模板 > 系统 > 文件系统”中更改它并配置“选择性地允许评估符号链接” – deru 2017 年 5 月 11 日 6:45。我认为这不会有帮助,因为我可以在 ebs 上进行 mklink。

这对我来说是个问题,因为我的 asp.net Web 应用程序在设置过程中也使用了 mklink。我的解决方案是为我的 Web 应用程序使用 Windows 容器,然后使用 docker-compose 将链接放入 FSx 文件系统。我以为我想在 fsx 卷上进行 docker-compose 构建。这是一个糟糕的主意,因为 ebs 的音量要快得多。

于 2019-08-07T21:42:16.223 回答