You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell发送文件到远程文件夹时New-PSDrive报网络资源类型错误如何解决

错误产生原因
  • 凭证格式错误:非域环境下直接使用Administrator作为用户名,系统会默认以本地机器/域的账号前缀匹配,远程主机无法识别对应账号,导致鉴权失败触发报错。
  • -Persist参数冲突:-Persist参数会将映射盘符持久化写入系统,若脚本运行上下文(比如定时任务的运行账号)没有本地盘符创建权限,或是J盘已被其他资源占用,都会触发映射失败。
  • 路径逻辑错误:你映射的J盘对应远程\\REMOTE_ip\D$\test路径,但后续Copy-Item的目标路径仍指向本地D盘,完全没有用到映射的远程盘符,属于逻辑问题。
  • 远程访问限制:Windows默认开启UAC远程限制,本地管理员组账号远程访问D$这类系统管理共享时会被降权,无法正常访问共享资源。
  • 网络/服务异常:远程主机SMB服务未开启、445端口被防火墙拦截,也会导致无法识别网络资源。
修复方案

修复后完整代码

# 配置参数
$Source = "d:\test\myZipFile.zip"
$REMOTE_ip = "替换为你的远程主机IP"
$Dest   = "\\$REMOTE_ip\D$\test"
$Username = "$REMOTE_ip\Administrator" # 增加远程IP前缀,匹配远程主机账号
$Password = ConvertTo-SecureString "PasswordOFRemotePC" -AsPlainText -Force
$mycreds = New-Object System.Management.Automation.PSCredential($Username, $Password)

# 临时映射盘符,去掉-Persist参数
New-PSDrive -Name J -PSProvider FileSystem -Root $Dest -Credential $mycreds
# 目标路径改为映射的远程J盘
Copy-Item -Path $Source -Destination "J:\myZipFile1.zip"
# 用完移除临时盘符,避免资源占用
Remove-PSDrive -Name J -Force

核心修改说明

  • 调整用户名格式,增加远程IP前缀,确保远程主机可以正确识别账号。
  • 去掉-Persist参数,仅创建临时映射盘符,不需要持久化权限,适配定时任务的后台运行场景。
  • 修正Copy-Item的目标路径为映射后的J盘路径,确保文件写入远程目录。
  • 增加临时盘符清理逻辑,避免后续运行出现盘符占用问题。

额外排查建议

  • 提前手动在本地运行窗口输入\\远程IP\D$\test,使用配置的管理员账号登录,确认可以正常访问目录。
  • 确认远程主机防火墙开放445端口入站规则,SMB文件共享功能已开启。
  • 若要彻底解决UAC远程限制,可在远程主机上修改注册表:路径HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System,新建DWORD值LocalAccountTokenFilterPolicy,数值设为1,重启后生效。

内容的提问来源于stack exchange,提问作者Mix tutor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 01:36:05