ubuntu 搭建NFS服务器和挂载
ubuntu 搭建 nfs 服务器和挂载
1. ubuntu 搭建 nfs 服务器
安装NFS软件包
sudo apt-get install nfs-kernel-server # 安装 NFS服务器端
sudo apt-get install nfs-common # 安装 NFS客户端
修改配置,添加NFS共享目录
sudo vi /etc/exports
# 添加 /home/alientek/linux 作为共享路径
# * 表示运行所有IP访问; rw 表示可读写; sync 表示同步数据;
# no_root_squash 表示 对root用户不进行降权处理
/home/alientek/linux *(rw,sync,no_root_squash)
重启 nfs 服务器
sudo /etc/init.d/nfs-kernel-server start 或者
sudo /etc/init.d/nfs-kernel-server restart
至此,NFS 服务器搭建完成
2. linux 挂载
在linux下创建挂载目录
mkdir /var/nfs
挂载目录
sudo mount -t nfs -o nolock,nfsvers=3,vers=3 192.168.0.10:/home/alientek/linux /var/nfs
卸载目录
sudo unmount /var/nfs
3. windows 挂载
开启共享文件夹权限
针对 win10 你不能访问此共享文件夹,因为你组织的安全策略...
" 问题
可以先跳过,如果遇到该问题,再开启共享文件夹权限。
同时按下 win 和 R 键,打开运行窗口,输入 gpedit.msc
启动本地组策略管理器
找到 计算机配置-管理模板-网络-Lanman工作站 这个节点
在"右侧内容看到启动不安全的来宾登录" 这一策略设置,将状态修改为 "已启用",并确定
开启NFS客户端服务
在控制面板-程序-打开或关闭windows功能-NFS客户端,开启NFS客户端和管理工具服务,并保存
简单访问
打开文件管理器,在地址栏输入 \\192.168.0.6\home\alientek\linux
回车后可挂载该文件夹
挂载为网络磁盘
同时按下 win 和 R 键,打开运行窗口,输入 cmd
输入下面指令进行挂载或卸载
# 挂载,192.168.0.6 为NFS服务器IP,Z:为你空闲的盘符
mount 192.168.0.6:/home/alientek/linux Z:
# 卸载
unmount Z:
注意,必须在 cmd
下,不能用 Windows PowerShell
4.windows 挂载 nfs 文件夹为只读问题
明明在 ubuntu 下搭建的 nfs 服务器设置了读写权限,但是windows挂载后为只读文件/文件夹。
原因可能是 linux 下 nfs 文件系统归属于 root 权限 UID=-2,而 windows 通过 UID=-2 的用户去写,就写不进去。
解决方法是更改用户UID。
- 在 windows 的 cmd 下,使用 mount 命令可以看到如下状态:
mount
Local Remote Properties
-------------------------------------------------------------------------------
Z: \\192.168.138.129\root\project UID=-2, GID=-2
rsize=1048576, wsize=1048576
mount=soft, timeout=10.0
retry=1, locking=yes
fileaccess=755, lang=GB2312-80
casesensitive=no
sec=sys
- 修改注册表
- 使用 win+R 键打开窗口,输入 regedit 回车,打开注册表
- 在 HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> ClientForNFS -> CurrentVersion -> Default 下,增加以下两项
- AnonymousUid 属性是 QWORD
- AnonymousGid 属性是 QWORD
- 重启电脑生效
- 重新查看 mount 状态,可以看到UID=0,这样就有文件夹的写权限了
Local Remote Properties
-------------------------------------------------------------------------------
Z: \\192.168.138.129\root\project UID=0, GID=0
rsize=1048576, wsize=1048576
mount=soft, timeout=0.8
retry=1, locking=yes
fileaccess=755, lang=GB2312-80
casesensitive=no
sec=sys
5.参考链接
https://blog.csdn.net/qq_37860012/article/details/86717891
https://blog.csdn.net/weixin_71429850/article/details/125983940
https://blog.csdn.net/iamlihongwei/article/details/79377657
https://blog.51cto.com/huny/3265487
https://blog.csdn.net/youcijibi/article/details/105276580
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?