Windows Server 2008,RC2。我尝试使用 mklink 命令创建符号/软链接:
mklink /D LinkName TargetDir
e.g. c:\temp\>mklink /D foo bar
如果我以管理员身份运行命令行,则此方法可行。但是,我需要它也能为普通用户工作,因为最终我需要另一个程序(以用户身份执行)才能执行此操作。
因此,我通过 secpol.msc 更新了本地安全策略。在“本地策略”>“用户权限管理”>“创建符号链接”下,我将“用户”添加到安全设置中。
我重启了机器。它仍然不起作用。所以我将“所有人”添加到策略中。重启。它仍然不起作用。
我到底做错了什么?我认为我的用户甚至是此框的管理员,并且即使实施了此更新的策略,运行普通命令行仍然会给我:
You do not have sufficient privilege to perform this operation.
听起来其他人也遇到过这个问题,但我还没有找到解决办法。有人能以编程方式创建软/符号链接吗?
答案1
还没有尝试过,但如果用户 A 有符号链接权限,则打开 cmd 并执行
runas /user:domain\a cmd
然后在该窗口中尝试 mklink
所有用户,甚至管理员在 08+ 上以有限权限运行,您需要先提升权限。真的不要对此抱有太大希望!
答案2
此安全策略设置和管理员组存在错误。也许这也是您所遇到的问题。
如果您添加的用户是管理员组的成员,则此设置无效。将他们从管理员组中删除可解决此问题。
答案3
我在 Windows 7 上遇到了同样的问题,但能够以管理员身份运行 CMD 窗口并按照以下说明使其正常工作:
- 单击“开始”按钮。
cmd
在底部的搜索框中输入。Ctrl + Shift + Enter
同时按下所有键。注意:这将以管理员身份打开命令提示符。如果不这样做,您将收到一条错误消息,提示您没有足够的权限来创建符号链接。
http://www.inkplant.com/code/how-to-create-a-symbolic-link-in-windows-vista.php
答案4
我们能够通过 Windows 2008 服务器上的脚本创建符号链接,但必须执行以下操作之一:
SeCreateSymbolicLinkPrivilege
为运行脚本的用户提供特权- 关闭 UAC