通过Enter-PSSession远程登录后执行net use无法显示网络驱动器
为什么远程PowerShell会话里看不到本地映射的网络驱动器?
没错,你遇到的情况是完全正常的——通过Enter-PSSession建立的远程PowerShell会话,默认是看不到用户本地已映射的网络驱动器的,主要原因有这两个:
- 会话环境隔离:本地的网络驱动器映射是和你的交互式桌面会话(通常是Session 1)绑定的,而远程PowerShell会话会在目标机器上创建一个独立的终端服务会话(比如Session 2及以上),这两个会话的运行环境完全隔离,彼此看不到对方的驱动器映射。
net use的会话局限性:net use命令只能显示当前会话内的网络连接,远程会话没有继承本地会话的驱动器映射配置,所以自然会返回There are no entries in the list.。
替代解决方案
如果你需要在远程会话里访问那些网络资源,可以试试这几种方法:
直接使用UNC路径访问
跳过驱动器映射,直接用共享资源的UNC路径操作,比如:# 查看共享文件夹内容 Get-ChildItem \\your-server-name\shared-folder-path在远程会话内重新映射驱动器
如果你习惯用驱动器字母访问,可以在远程会话里手动创建临时映射,比如:# 映射Z盘到目标共享,不持久化(断开会话后自动消失) net use Z: \\your-server-name\shared-folder-path /persistent:no启用会话间驱动器映射继承(不推荐普通场景)
若你确实需要让远程会话继承本地映射,可以通过修改组策略或注册表开启相关设置,但这会带来安全风险,且仅适用于域环境下的特定配置,一般不建议常规使用。
内容的提问来源于stack exchange,提问作者Mathias Ottsen
相关产品推荐
相关产品推荐

