MAC OS 中mount nfs 报错问题.

adc00 2019-11-09

记一下 MAC OS 中mount nfs 报错问题.

环境和配置文件

  • NFS 服务端

    • Ubuntu
      • 安装 apt install nfs-kernel-server
  • 服务端的配置文件

    • cat /etc/exports
  • /nfsdata  192.168.22.1/26(rw,sync,insecure,no_root_squash)
  • CentOS 下测试挂载

    • yum install nfs-utils -y
    • mount -t nfs -o rw 192.168.22.8:/nfsdata /tmp/test
  • Ubuntu 下测试挂载

    • apt install nfs-common -y
    • mount -t nfs -o rw 192.168.22.8:/nfsdata /tmp/test
  • Mac OS 下挂载测试

    • 使用挂载命令
      • mount -t nfs -o rw 192.168.22.8:/nfsdata /tmp/test
    • 使用find手动连接

    问题重点1

    (/etc/exports) 这里的配置文件必须要加入 insecure 参数,否则Mac OS 一直报找不到服务器的错误。

    /nfsdata 192.168.22.1/26(rw,sync,insecure,no_root_squash)

    问题点2

    由于mac os 用户id和服务端id不一致导致设置权限有问题. 不能写操作.

    解决方法

    可直接 chmod 777 /nfsdata 这种方法很暴力

    在服务端新建一个用户和mac中uid一样的用户然后 设置附加权限 就ok了.

    mac 端 查看自己的uid id

    id
    
    uid=501(makeit) gid=20(staff) groups=20(staff),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),33(_appstore

    nfs服务端

    #新建用户时候指定uid
    useradd -u 501 makeit
    #配置共享目录的附加权限
    #ubuntu 中可能没有chfacl,需要自行安装  `apt install acl -y`
    chfacl -m makeit:rwx -R /nfsdata
    # 如果已经有该用户了,可以使用usermod 修改用户信息
    usermod -u 501 makeit

    以上操作完成就直接可以在find中增删文件了.

    enjoy ??

参考:
https://www.server-world.info/en/note?os=Ubuntu_16.04&p=acl
https://blog.csdn.net/zyqblog/article/details/79226826#23-%E6%9D%83%E9%99%90%E6%8E%A7%E5%88%B6-acl
https://www.jianshu.com/p/5314f90330a6

相关推荐