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

如何在Windows上挂载非默认端口的SMB网络共享

解决Windows通过非445端口挂载SMB共享的问题

以下是几种基于Windows原生工具和脚本的解决方案,针对你遇到的非445端口SMB挂载问题:

方法1:使用net use命令直接指定端口

这是最直接的原生命令行方式,无需修改系统配置:

# 替换成你的实际信息
net use Z: \\mysubdomain.dns.army\你的共享名 /user:Samba用户名 /port:1999
  • 执行后会提示输入Samba用户密码(避免明文暴露)
  • Z:是你要映射的本地盘符,可替换为未被占用的盘符
  • 如果需要永久映射(重启后保留),添加/persistent:yes参数

方法2:通过注册表配置服务器端口映射(长期生效)

如果需要频繁访问该共享,可通过注册表让Windows自动识别该服务器的自定义端口,无需每次命令指定:

  1. 打开注册表编辑器:按下Win+R,输入regedit并回车
  2. 导航到路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters
  3. 右键点击Parameters项,选择新建 > 多字符串值,命名为CustomizedServers
  4. 双击该值,输入mysubdomain.dns.army:1999(每行一个服务器:端口组合)
  5. 重启LanmanWorkstation服务使配置生效:
Restart-Service LanmanWorkstation

配置完成后,你可以直接通过文件资源管理器访问\\mysubdomain.dns.army\你的共享名,或使用不带/port参数的net use命令,Windows会自动使用1999端口连接。

方法3:PowerShell脚本自动化挂载

如果需要快速重复挂载,可编写简单脚本简化操作:

# 自定义参数
$driveLetter = "Z:"
$shareName = "\\mysubdomain.dns.army\music_share"
$sambaUser = "music_assoc_user"
$smbPort = 1999

# 断开已存在的同名映射
if (Get-SmbMapping -LocalPath $driveLetter -ErrorAction SilentlyContinue) {
    Remove-SmbMapping -LocalPath $driveLetter -Force
}

# 执行挂载操作
net use $driveLetter $shareName /user:$sambaUser /port:$smbPort
  • 运行脚本后会提示输入密码,无需明文写入脚本
  • 可将脚本保存为.ps1文件,右键选择“用PowerShell运行”快速执行

注意事项

  • 确保树莓派的Samba配置已修改端口:在smb.conf的[global]段添加smb ports = 1999,然后重启Samba服务(sudo systemctl restart smbd nmbd)
  • 确认Windows防火墙允许1999端口的TCP流量通过(若防火墙开启)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 04:25:08