网络共享 — 桌面运维 — 网络共享问题大全

网络共享 — 桌面运维 — 网络共享问题大全

分类:IT运维 > 网络共享 | 桌面运维知识库系列


适用环境:Windows 10 / 11 / Server,企业局域网环境

更新时间:2026-04-15


一、文件夹共享

1.1 创建文件夹共享(标准步骤)

  1. 右键文件夹 → 属性 → 共享选项卡 → 共享
  2. 添加 Everyone(或指定用户)→ 设置权限级别(读取/读写)
  3. 点击”共享” → 完成
  4. 记住显示的共享路径(如 \\PC-NAME\SharedFolder

高级共享方式(推荐):

  1. 右键文件夹 → 属性 → 高级共享 → 勾选”共享此文件夹”
  2. 设置共享名和同时连接数
  3. 点击”权限” → 添加用户并设置权限
  4. 配合NTFS权限一起使用(共享权限+NTFS权限取最严格)

1.2 共享权限 vs NTFS权限

维度 共享权限 NTFS权限
作用范围 通过网络访问时生效 本地+网络访问都生效
粒度 只有读取/更改/完全控制 非常精细(读取/写入/修改/执行等)
默认权限 Everyone 读取 继承父文件夹权限
优先级 两者叠加取最严格

最佳实践:

  • 共享权限设为 Everyone 完全控制
  • 通过 NTFS 精细控制实际权限
  • 避免使用 Everyone,改用指定用户或组

1.3 访问共享文件夹


:: 方法1:通过运行窗口
Win+R → \\192.168.1.100  或  \\PC-NAME

:: 方法2:映射网络驱动器
右键"此电脑" → 映射网络驱动器 → 选择盘符和路径

:: 方法3:命令行映射
net use Z: \\192.168.1.100\SharedFolder /persistent:yes

:: 查看已映射的驱动器
net use

:: 断开映射
net use Z: /delete

1.4 共享文件夹无法访问的排查

排查清单:

  1. 网络发现是否开启:网络和共享中心 → 更改高级共享设置 → 启用网络发现和文件共享
  2. Guest账户:计算机管理 → 本地用户和组 → 确认Guest未被禁用(简单环境)
  3. 防火墙:确保”文件和打印机共享”入站规则已放行
  4. 网络配置文件:确认当前网络是”专用”而非”公用”
  5. SMB协议版本

   # 检查SMB客户端设置
   Get-SmbClientConfiguration
   
   # 启用SMB1(不推荐,但某些旧设备需要)
   Set-SmbServerConfiguration -EnableSMB1Protocol $true
  1. 凭据问题:清除保存的凭据后重新输入

   控制面板 → 凭据管理器 → Windows凭据 → 删除相关条目

二、常见共享错误代码

2.1 错误 0x80070035 — 找不到网络路径

原因: 网络不通、SMB服务未启用、防火墙拦截。

解决步骤:

  1. ping 目标机器IP确认网络通
  2. 确认目标机器开启了文件共享服务
  3. 检查防火墙放行 TCP 445 端口
  4. 确认目标机器的网络配置文件为”专用”

2.2 错误 0x80070043 — 无法访问共享

原因: SMB版本不匹配或网络发现关闭。

解决步骤:


# 启用SMB服务器
Set-SmbServerConfiguration -EnableSMBServerProtocol $true

# 检查网络发现服务是否启动
Get-Service -Name FDResPub, SSDPSRV, Upnphost | Select Name, Status

2.3 错误 0x800704CF — 网络路径不可用

原因: 通常是网络配置或DNS问题。

解决步骤:

  1. 使用IP代替计算机名访问
  2. 检查DNS解析:nslookup 目标计算机名
  3. 添加hosts记录:192.168.1.100 PC-NAME

2.4 错误 0x80070021 — 文件正在使用

原因: 文件被其他程序占用。

解决步骤:

  1. 使用资源监视器查看哪个进程在使用该文件

   resmon.exe → 关联的句柄 → 搜索文件名
  1. 结束相关进程或让对方关闭文件

2.5 错误 0x8007005B — 太多用户连接

原因: Windows桌面版有并发连接数限制(通常20个)。

解决方案:

  • 升级到 Windows Server 版本
  • 减少同时连接的用户数
  • 使用专业的NAS或文件服务器

三、网络驱动器映射

3.1 通过组策略批量映射


组策略管理器 → 用户配置 → 首选项 → Windows设置 → 驱动器映射
→ 新建映射驱动器
   位置:\\server\share
   驱动器号:Z:
   操作:创建

3.2 映射驱动器不显示/断开

常见原因:

  • UAC导致管理员看不到映射(需用 net use 而非GUI)
  • 网络不稳定导致断开
  • 服务器重启后连接丢失

解决方案:


:: 检查连接状态
net use

:: 重新连接所有映射
net use * /delete /y
net use Z: \\server\share /persistent:yes

:: 开机自动重连脚本(放入启动项)
@echo off
ping 192.168.1.100 -n 1 >nul
if %errorlevel%==0 (
    net use Z: \\192.168.1.100\share /persistent:yes
)

3.3 映射驱动器延迟问题

症状: 开机后映射驱动器要等很久才出现,或资源管理器卡顿。

解决方法:

  1. 注册表修改:

   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters
   新建 DWORD:SlowLinkTimeOut
   值:50(毫秒)
  1. 或将 \\server\share 的访问改为 \\server.domain.com\share

四、打印机共享

详见 01-打印机问题.md 第二章


五、网络发现与浏览

5.1 网络中看不到其他电脑

排查步骤:

  1. 确认网络发现开启

   控制面板 → 网络和共享中心 → 更改高级共享设置
   → 专用/来宾 → 启用网络发现、启用文件和打印机共享
  1. 检查依赖服务是否启动

   Function Discovery Provider Host
   Function Discovery Resource Publication
   SSDP Discovery
   UPnP Device Host
  1. 检查网络配置文件

   Get-NetConnectionProfile
   # 确认 NetworkCategory 是 "Private" 而非 "Public"
  1. 设置网络为专用网络

   Set-NetConnectionProfile -NetworkCategory Private

5.2 网络邻居/网络文件夹为空

解决方法:

  1. 确认上述服务已启动
  2. 检查计算机是否在同一工作组
  3. 尝试直接访问 \\计算机名\\IP
  4. 重启 Computer Browser 服务(如果存在)

六、SMB协议管理

6.1 SMB版本检查与配置


# 查看当前SMB配置
Get-SmbServerConfiguration

# 启用SMB2/3(推荐)
Set-SmbServerConfiguration -EnableSMB2Protocol $true

# 禁用不安全的SMB1
Set-SmbServerConfiguration -EnableSMB1Protocol $false

# 查看哪些客户端使用了什么SMB版本
Get-SmbConnection

6.2 SMB1的安全风险

SMB1 已被弃用的原因:

  • 2017年 WannaCry 勒索病毒利用 SMB1 漏洞传播
  • 微软从 Windows 10 1709 版本起默认禁用 SMB1
  • 协议效率低,不支持大型MTU

何时仍需要 SMB1:

  • 旧版网络打印机
  • 老旧NAS设备
  • 某些工业设备

如必须使用 SMB1:

  • 仅在隔离的VLAN中使用
  • 限制访问范围
  • 尽快升级设备

6.3 SMB签名与加密


# 启用SMB签名(防止中间人攻击)
Set-SmbServerConfiguration -RequireSecuritySignature $true

# 启用SMB加密
Set-SmbServerConfiguration -EncryptData $true

七、共享文件夹权限管理

7.1 常用权限方案

使用场景 共享权限 NTFS权限
只读公告栏 Everyone 读取 Users 读取
部门协作文件夹 Everyone 完全控制 部门组 读写,其他只读
个人主目录 Everyone 完全控制 每人只对自己文件夹有完全控制
软件安装包 Everyone 读取 Everyone 读取+执行

7.2 批量设置共享权限(命令行)


:: 使用icacls设置NTFS权限
icacls "\\server\share\folder" /grant Domain\Group:(OI)(CI)M /T

:: 使用PowerShell设置共享
New-SmbShare -Name "Dept" -Path "D:\Shares\Dept" -FullAccess "Domain\DeptUsers"

7.3 查看共享文件夹当前权限


:: 查看所有共享
net share

:: 查看特定共享的权限
icacls "\\server\share"

:: 查看共享的ACL
Get-SmbShareAccess -Name "ShareName"

八、远程文件访问

8.1 通过VPN访问公司共享

  • 确保VPN连接后路由正确(split tunnel vs full tunnel)
  • 检查VPN客户端是否能解析内部DNS
  • 映射网络驱动器时使用IP而非计算机名(DNS可能不通)

8.2 OneDrive/SharePoint 替代方案

方案 优势 适用场景
OneDrive for Business 个人文件同步 个人文档
SharePoint Online 团队协作+版本控制 项目文档
混合方案 本地共享+云备份 混合办公

九、共享故障排查工具箱

9.1 常用命令


:: 查看网络连接
netstat -an | findstr 445

:: 查看共享资源
net share

:: 查看会话
net session

:: 查看打开的文件
openfiles /query

:: 测试端口连通
Test-NetConnection -ComputerName PC001 -Port 445

:: 查看SMB连接
Get-SmbConnection

:: 查看网络发现相关服务状态
sc query FDResPub
sc query SSDPSRV

9.2 排查流程图


无法访问共享
    ├── ping目标IP通吗?
    │   ├── 不通 → 检查物理连接/网络配置
    │   └── 通 → 继续
    ├── 445端口通吗?
    │   ├── 不通 → 检查防火墙/SMB服务
    │   └── 通 → 继续
    ├── 凭据正确吗?
    │   ├── 不正确 → 清除凭据管理器,重新输入
    │   └── 正确 → 继续
    ├── 权限够吗?
    │   ├── 不够 → 检查共享+NTFS权限
    │   └── 够 → 继续
    └── 查看事件日志获取详细错误
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇