让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录

使用 ServU 的过程中遇到了个难题, 计算机中有个网络映射盘, 我想把用户根目录设置为这个映射盘, 但是在选择磁盘的界面中, 根本不会显示映射盘盘符。因为 Windows 应用(或者服务) 无法通过盘符识别挂载的网络驱动器, 要访问网络驱动器只能通过 UNC。

最终还是在 stackoverflow 找到了变通解决办法。 这里分享出来, 提供给有同样困扰的读者, 希望能节省你很多时间。

解决办法出处: StackOverflow
原理: 在 SYSTEM 账户下 执行磁盘映射。

操作步骤:

1、 下载解压 SysinternalsSuite

2、 管理员身份执行 cmd.exe

3、 在打开的 cmd.exe 中导航到 sysinternalssuite 文件夹, 执行 psexec -i -s cmd.exe, 这样就开启了具有 SYSTEM 身份的 cmd.exe

4、 在有 SYSTEM 身份的 cmd.exe 中执行
net use z: \\servername\sharedFolder password /user:servername\username /persistent:yes
例如:

net use z: \\192.168.0.114\f  password /user:192.168.0.114\administrator  /persistent:yes 

注意: 请确保使用的连接凭据有足够的磁盘访问权限。

如果没有错误产生,会提示 “命令成功”。

如果此共享有密码保护, 并且显示为 “断开连接的网络驱动器”, 如果系统开启了“密码保护共享”
图形界面点击 网络映射盘, 会显示


让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录_第1张图片
error.png

那么必须在凭据管理器中添加凭据才可以正常访问。

5、 在凭据管理器中添加 凭据
打开 “”控制面板” -> "凭据管理器" -> "添加Windows凭据", 将连接到共享盘的凭据信息填入即可。
(小注: 凭据就是上述命令行中的 servername, username 和 password)

上一张成果图


让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录_第2张图片
network driver.png

不过, 这种方式建立的映射会在系统重新后丢失, 还需要添加计划任务维持其存在。有此需求的话请继续往下看。

6、 准备映射脚本 mount_nfs.bat, 内容为刚才命令行输入的命令
net use z: \\192.168.0.114\f password /user:192.168.0.114\administrator /persistent:yes

依次点击 “开始” -> "管理工具" -> "任务计划程序", 右键 “任务计划程序库” -> "创建任务"

各个参数如下列图:


让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录_第3张图片
schedule-1.png

让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录_第4张图片
schedule-2.png

让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录_第5张图片
schedule-3.png

让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录_第6张图片
schedule-4.png

让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录_第7张图片
schedule-5.png

你可能感兴趣的:(让 ServU 识别网络映射盘—— 可以将映射盘作为用户根目录)