我目前在AWS上托管我的ASP.Net Web应用程序。我已经在Windows环境中搜索了最佳的AWS存储选项。我发现aws File共享系统FSx适合我们的需求。
我的应用程序中的一项必需功能是能够在网络共享文件夹上创建符号链接。在我的本地环境中,我有活动目录和网络共享文件夹。我已应用这些步骤在Windows 10的电脑上启用符号链接,并且可以正常工作:
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 File Shares GUI工具在共享文件夹上为此用途授予了安全权限(共享和安全性)。
当我尝试创建符号链接时,我得到:拒绝访问
mklink /d \\fs-432432fr34234a.myad.com\share\Husam\slink \\fs-432432fr34234a.myad.com\share
Access Denied
有什么建议吗?有没有一种方法可以在活动目录中添加此权限?
答案 0 :(得分:1)
在我看来,亚马逊fsx不支持mklink。我可以在ebs卷上链接到我内心的内容,而不能在fsx上链接。另外,当我在Linux ln -s test1 test2
ln: failed to create symbolic link 'test2': Operation not supported
我发现有一条评论说:“在GPO中,您可以在“计算机配置>管理模板>系统>文件系统”中进行更改,并配置“选择性地允许评估符号链接” – deru 17年5月11日,下午6: 45。”我认为这不会有所帮助,因为我可以在ebs上进行mklink。
这对我来说是个问题,因为我的asp.net网络应用在设置过程中也使用了mklink。我的解决方案是将一个Windows容器用于我的Web应用程序,然后使用docker-compose将链接放入FSx文件系统。我以为我想在fsx卷上进行docker-compose构建。但是,这是一个可怕的想法,因为ebs的速度要快得多。
答案 1 :(得分:1)
我收到了与上面报告的相同的错误消息。我咨询了我工作的公司可用的 AWS 联系人,他们确认截至目前,FSx for Windows File Server 不支持符号链接。