NFS客户端与服务端用户不一致问题

场景

192.168.1.1机器 挂载了192.168.1.2机器上面的/dir/mountfiels目录

c 复制代码
mount -t nfs 192.168.1.2:/dir/mountfiels /dir/mountfiels

问题

在192.168.1.1机器上使用用户A运行一个程序,程序写出一个文件到共享目录中,共享目录中文件的用户和用户组不是用户A

排查

  1. 首先在两台机器上查看对于用户A的定义用户id是否相同

    192.168.1.1机器执行:id <用户A>

    192.168.1.2机器执行:id <用户A>

    查看两台机器的用户id是否相同

    如果不相同,可以通过命令 usermod -g <用户id> <用户A>,修改用户的用户id

  2. 在nfs服务器端查看/etc/exports

powershell 复制代码
cat /etc/exports
/dir/mountfiles *(rw,sync,all_squash,anonuid=1001,anonuid=1001,insecure)

其中,anonuid=1001, anongid=1001 这两个参数指定了映射目录文件的用户和用户组
如果是0的话表示root用户

  1. mount执行挂载报错 mount.nfs: access denied by server while mounting 192.168.x.x:/xxx

解决:修改配置文件/etc/exports,加入 insecure 选项,然后重启nfs服务

powershell 复制代码
systemctl restart nfs-server.service
systemctl restart rpcbind

insecure:secure 选项要求mount客户端请求源端口小于1024(然而在使用 NAT

网络地址转换时端口一般总是大于1024的),默认情况下是开启这个选项的,如果要禁止这个选项,则使用 insecure 标识

相关推荐
青梅橘子皮3 小时前
Linux---基本指令
linux·运维·服务器
REDcker4 小时前
Linux信号机制详解 POSIX语义与内核要点 sigaction与备用栈实践
linux·运维·php
cui_ruicheng5 小时前
Linux进程间通信(三):System V IPC与共享内存
linux·运维·服务器
蚰蜒螟5 小时前
深入 Linux 内核同步机制:从 futex 到 spinlock 的完整旅程
linux·windows·microsoft
运维全栈笔记5 小时前
Linux安装配置Tomcat保姆级教程:从部署到性能调优
linux·服务器·中间件·tomcat·apache·web
dllmayday6 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
ACP广源盛139246256736 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
老花眼猫7 小时前
编制椭圆旋转绘图函数
c语言·经验分享·青少年编程·课程设计
峥无7 小时前
Linux系统编程基石:静态库·动态库·ELF文件·进程地址空间全景图
linux·运维·服务器
智者知已应修善业7 小时前
【51单片机2个按键控制流水灯运行与暂停】2023-9-6
c++·经验分享·笔记·算法·51单片机