EMP*_*EMP 58 powershell uac unc
我在Windows 7 x64虚拟机中运行PowerShell.我在主机上有一个共享文件夹映射为网络驱动器(Z :).当我正常运行PS时,我可以正常访问该驱动器,但如果我以"管理员"的身份运行它,它会告诉我:
Set-Location : Cannot find drive. A drive with the name 'Z' does not exist.
At line:1 char:13
+ Set-Location <<<< Z:
+ CategoryInfo : ObjectNotFound: (Z:String) [Set-Location], DriveNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
Run Code Online (Sandbox Code Playgroud)
如何以管理员身份访问网络驱动器?
EMP*_*EMP 81
最后修复只是在以管理员身份运行时重新映射驱动器号:
net use Z: "\\vmware-host\Shared Folders"
Run Code Online (Sandbox Code Playgroud)
它不必从同一个PowerShell实例(或者完全来自PowerShell)完成 - 它只需要为整个登录会话完成一次.
在我的情况下,我能够简单地使用UNC路径而不是驱动器映射,它工作正常.
因此,根据您的示例,我只使用"\\ vmware-host\Shared Folder"作为路径,而不是使用映射驱动器Z:\.
另外一个变通我花了年龄找到是运行net use
从计划任务为NT AUTHORITY\SYSTEM帐户.显然,在此帐户下映射的驱动器显示所有用户和所有高程级别.
我已经测试了这个,它甚至可以在NFS共享上运行(这可能有点挑剔).只需创建一个在系统启动时运行的计划任务集,并指定常用命令:
net use Z: \\server\share /persistent:no
Run Code Online (Sandbox Code Playgroud)
它可能只运行一次/persistent:yes
,但我没有尝试过.当然,"只是再次映射"也可以,但是在不同的上下文中运行的计划任务仍然无法看到该驱动器.缺点是所有真实用户都会看到它,因此多用户设置不太好.
如何映射一个新的psdrive来访问该数据当您在 powershell 中编写脚本或访问网络数据存储时,PSDrive 的工作效果与系统映射驱动器一样好,甚至更好。
使用New-PSDrive cmdlet 的说明如下: Technet:New-PSDrive
如果您不想每次都创建一个新的 psdrive,可以将其添加到管理员和用户帐户的配置文件中,并且每次打开 powershell 时它都会自动可用。
~丹
归档时间: |
|
查看次数: |
80234 次 |
最近记录: |