windows系统nfs挂载

比起君子讷于言而敏于行,我更喜欢君子善于言且敏于行。

目录

一、remmina页面挂载方式

1.手动挂载

[2. 自启动挂载](#2. 自启动挂载)

二、ssh登录方式挂载

三、理论知识

[1. 错误直觉(问题根源)](#1. 错误直觉(问题根源))

[2. Windows 的真实模型](#2. Windows 的真实模型)

1)用户(User)

[2)会话(Session / 房间)](#2)会话(Session / 房间))

[a. GUI / Remmina(桌面房间)](#a. GUI / Remmina(桌面房间))

b.SSH(后台房间)

[c.SYSTEM / 服务登录(更封闭的房间)](#c.SYSTEM / 服务登录(更封闭的房间))

[3)结论:同一用户 ≠ 同一房间](#3)结论:同一用户 ≠ 同一房间)

[3. 网络盘在 Windows 里是什么?](#3. 网络盘在 Windows 里是什么?)

[4. ~/.bash_profile 为什么可以解决问题](#4. ~/.bash_profile 为什么可以解决问题)

[5. 为什么 Remmina → SSH 不稳定](#5. 为什么 Remmina → SSH 不稳定)

[6. 最终稳定方案](#6. 最终稳定方案)

[7. 为什么linux不会出现这个问题](#7. 为什么linux不会出现这个问题)

总结


一、remmina页面挂载方式

1.手动挂载

随便打开一个文件------此电脑 鼠标右键------映射网络驱动器------填写后点击完成

2. 自启动挂载

1) 使用想要设置的账户登陆系统(比如:admin或者test),控制面板->程序->启动或关闭windows功能: 确保nfs服务被勾选

2) cmd页面,输入gpedit.msc 回车

3) 计算机配置------>用户配置------>脚本(启动/关机)------>启动------>打开属性

❗ "登录的是 test" ≠ "脚本就是以 test用户执行的"

Windows 里,计算机启动脚本 :默认是 system && 用户登录脚本 :才是默认当前登录用户

所以这里的配置选择的是"用户配置"而不是"计算机配置"

4) 点击 预览(B)...,会显示文件的位置。新建mount_nfs.bat文件,将挂载内容根据实际情况拷进去:

net use y: \\nfs.com\shared\window /persistent:yes

5) 点击添加,选中该文件

6)双击该文件,进行一次mount

二、ssh登录方式挂载

复制代码
#把这句命令加进去
vim ~/.bash_profile
cmd.exe /c "net use y: \\nfs.com\shared\windows /persistent:yes"

这条命令真正做了什么?

cmd.exe:Windows 官方、完全信任的执行环境

net use:Windows 官方网络盘登记接口;给"当前登录 Token"挂载网络盘不是全局行为

persistent:yes 写入用户级配置(长期有效);写入注册表 HKCU\Network\X:

下次【交互式登录】自动重连

本质变化: 网络盘从"会话级" → "用户级"

三、理论知识

起因是我发现,remmina页面挂载nfs之后,ssh页面进去df -h看不到挂载的这个nfs,于是开始寻找答案。

1. 错误直觉(问题根源)

大众以为:账号一样 = 环境一样 ❌

实际上的:Windows 同时看 你是谁(用户)+ 你从哪儿进来(入口)

2. Windows 的真实模型

1)用户(User)

└─ 身份:用户名 / 密码

2)会话(Session / 房间)

a. GUI / Remmina(桌面房间)

登录方式:Remmina;RPD;本地桌面登录

特点:有桌面、有 explorer.exe、能看到大多数盘符

b.SSH(后台房间)

登录方式:ssh user@ip:端口; cygwin sshd;没桌面

特点:没桌面、没explorer.exe、 独立 Token、默认看不到交互式盘符

c.SYSTEM / 服务登录(更封闭的房间)

开机启动脚本、计划任务(SYSTEM)

特点:权限最高、但不是"用户"、用户盘符完全不可见

3)结论:同一用户 ≠ 同一房间

3. 网络盘在 Windows 里是什么?

不是全系统文件系统,更像: "某个用户在某个房间领到的使用凭证"

默认特性:1)只对创建它的会话负责;2) 不保证别的会话能看到

4. ~/.bash_profile 为什么可以解决问题

SSH 登录时一定会执行:

1)执行用户 = autotester

2)执行环境 = SSH 的 Token

3)cmd.exe /c net use

a. 拿到真正 Windows 控制台 b. net.exe 正常工作

4)结果:SSH 房间里,Y: 永远存在

5. 为什么 Remmina → SSH 不稳定

Remmina 挂载只存在于 Interactive Token

SSH 进入后偶尔看到(Token 复用 / 缓存),大多数看不到(正常现象)

重启后更混乱的原因: Token 重新生成,缓存失效

6. 最终稳定方案

Remmina使用用户登录脚本

SSH 使用 ~/.bash_profile写入cmd.exe /c net use ... /persistent:yes

核心原则:谁用,谁就在自己的登录方式里挂,双管齐下

7. 为什么linux不会出现这个问题

Linux:资源属于"系统命名空间"。谁进来,都看到同一个世界

Windows:资源属于"登录会话 / Token"。同一个人,从不同门进来,进的是不同房间


总结

Windows 的网络盘不是"用户的",而是"用户在某种登录方式里的"。

相关推荐
菜择贰18 小时前
在linux(wayland)中禁用键盘
linux·运维·chrome
霸气十足+拼命+追梦少年18 小时前
服务器挂载U盘或硬盘
运维·服务器
wok15718 小时前
Windows 上使用 Docker Desktop 教程
windows·docker·容器
慕容雪_18 小时前
运维笔记-笔记本无线网卡连接wifi,有线网卡连接内网
运维·内网·远程
小杰帅气18 小时前
进程优先级与切换调度
linux·运维·服务器
华纳云IDC服务商18 小时前
DNS负载均衡能自动避开故障服务器吗?
运维·服务器·负载均衡
奋斗的阿狸_198618 小时前
键盘组合键监听与 xterm 唤醒程序
linux·运维·服务器
小张成长计划..18 小时前
【linux】2:linux权限的概念
linux·运维·服务器
马踏岛国赏樱花19 小时前
Windows与Ubuntu双系统,挂载D/E盘到Ubuntu下时只能读的问题
linux·windows·ubuntu