无需登录即可永久安装网络共享?(视窗)


26

在Windows 2008 R2 Server(标准)上,我需要安装网络驱动器,而无需特定用户先登录计算机。有点像NFS通过fstabUnix计算机上的安装。网络驱动器将通过BlackArmor(Seagate)设备(我假设它运行Samba)进行共享。如果需要,设备可以是域的成员。

到目前为止,我已经尝试在执行它的地方使用Edit Group Policy-> Configuration-> Windows-> Scripts->Startup

net use x: \\server\share /user:username password

没有成功。登录后,网络驱动器在Windows资源管理器中被视为断开的网络驱动器。


1
您是要让登录该服务器的任何人都可以使用它,还是需要将其安装在特定的驱动器盘上以进行某些系统服务?
sysadmin1138

1
我需要将其放在特定的驱动器号上,以供在计算机上作为服务运行的应用程序使用。我无法在启动时让服务执行“ net use” :(
adamo 2012年

您是否尝试过从“计算机配置”->“ Windows设置”->“脚本”中编辑“本地计算机策略设置”并让脚本在启动时运行?
thanosk 2012年

Answers:


22

根据这个StackOverflow post,这显然是可能

但是,在发布答案的内容之前,我是否可以建议您过于繁琐?

在这种情况下,某些糟糕的代码需要登录的用户才能运行(例如Domino服务器,grumble),我创建了一个始终要在给定服务器上登录的服务帐户,并设置了自动登录脚本,以便计算机在重新引导时自动登录到指定帐户。我建议对您的问题更简单,更受支持的解决方案是执行相同的操作,并通过组策略或登录脚本为该服务帐户用户映射驱动器。

无论如何,如果您决定在没有用户上下文的情况下尝试此操作,请参阅以下内容。这是一种骇客行为,因此使用风险自负,所有使用:

对于这种黑客,您将需要Mark Russinovich的SysinternalsSuite:http : //technet.microsoft.com/zh-cn/sysinternals/bb842062.aspx

第一步:打开提升的cmd.exe提示符(以管理员身份运行)

第二步:使用PSExec.exe再次提升到根目录:导航到包含SysinternalsSuite的文件夹,然后执行以下命令“ psexec -i -s cmd.exe”,您现在位于提示“ NT Authority \ system”中,并且可以通过输入“ whoami”来证明这一点。需要-i,因为驱动器映射需要与用户交互

第三步:使用以下命令“ net use z:\ servername \ sharedfolder / persistent:yes”,将永久映射的驱动器创建为SYSTEM帐户。

就这么简单!

警告:您只能以与创建它相同的方式从SYSTEM帐户中删除此映射。如果需要删除它,请按照步骤1和2进行操作,但是将步骤3的命令更改为:“ net use z:/ delete”

注意:现在,此系统的所有用户都将出现新创建的映射驱动器,但他们将看到它显示为“断开的网络驱动器(Z :)”。不要让这个名字愚弄你。它可能声称已断开连接,但适用于所有人。这样您就可以知道M $不支持这种黑客攻击。

来自评论:

要使其在重新启动后能够正常工作,请创建一个仅包含net use z:\ servername \ sharedfolder的脚本,并将其设置为在计算机启动时运行,方法为technet.microsoft.com/zh-cn/library/cc770556.aspx。 SYSTEM帐户,因此无需psexec。


使用具有用户名和密码的网络共享似乎不起作用。我看到“网络驱动器已断开连接”,但无法访问“错误的用户名和密码”。
spankmaster79 2014年

1
@ spankmaster79 <shrug> 不知道为什么会收到该错误(可能是帐户锁定?),但是如果您有新问题或相关问题,建议您在主站点上作为一个问题进行提问,而不要在此处评论。
HopelessN00b


2

您也可以尝试将Sysinternals Suite添加到C:\ SysinternalsSuite

  1. 运行高架cmd窗户
  2. cd c:\sysint*
  3. psexec -i -s cmd.exe
  4. whoami 确保您没有权限
  5. net use x: \\PathToDrive 要么 share /persistent:yes

它应该显示为已断开连接的驱动器,并且要自动挂载它,只需创建一个包含第5步的启动脚本即可。您将必须使用步骤1-5删除映射,只需更改5即可反映出网络使用情况x:/ delete


0

我找到了永久安装驱动器的解决方案。但是,并非在每个会话上都安装驱动器。我在Windows Server 2019上做到了这一点。

假设我们要挂载一个target_dir位于上的目录target_server。我的用户名是my_username,密码my_passwordMY_DOMAIN。让我们将其安装在T:驱动器上。

首先,在任何地方(例如在您的桌面上)创建一个新的文本文件。打开它并解析:

@ECHO OFF
net use s: \\target_server\target_dir /persistent:yes

然后,将其重命名为mount_drive.bat并将该文件移动C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup

确保该文件不再是.txt文件。

现在,按Win+R,输入gpedit.msc并运行本地组策略编辑器

浏览Computer Configuration\Windows Settings\Scripts (Startup/Shutdown)并双击Startup
点击,Add...然后Browse...选择您刚刚移动的文件。

然后浏览至Computer Configuration\Administrative Templates\System\Logon,设置Always wait for the network at computer startup and logonenabled,保存并关闭。

打开高架终端以保存您的凭据。然后配置Windows,以免超时后断开此驱动器的连接。

cmdkey /add:target_server /user:MY_DOMAIN\my_username /pass:my_password
NET CONFIG SERVER /AUTODISCONNECT:-1

您可以选择通过运行来验证一切正常 C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup\mount_drive.bat

重启

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.