linux-挂载NFS网络文件系统教程

时间:2024-01-27 16:46:23


前言

  • 本文实现需要联网

链接

参考

  • 上面链接

笔录草稿

NFS环境搭建

  • 一些目标配置

    • 服务主机共享目录为:/home/lss/work
    • 开发板的挂载目录为:/mnt
  • 网络环境

    • 在服务主机和开发板上运行 ping www.baidu.com

      • ping 百度能 ping 通

      • 服务主机

      • 开发板

    • 服务主机和开发板互相 ping 通(服务主机和开发板处于同一网段)

      • 查看 ip

        • 服务主机:
          *

        • 开发板:
          *

      • 服务主机 ping

      • 开发板 ping 服务主机

    • 注意:若在服务主机上使用ifconfig提示找不到命令,请使用如下命令进行安装

      • sudo apt install net-tools
  • 在服务主机上配置NFS

    • 安装 NFS 服务

      • sudo apt install nfs-kernel-server
      • 已经安装过
    • 查看用户id

      • id

      • 得出(NFS 配置文件中用到)

        • uid 为 1000
        • gid 为 1000
    • 配置 NFS

      • 安装 NFS 服务后,会新增一个 /etc/exports 文件
      • 使用 man nfs 可以查看详细的帮助说明
      • /etc/exports 文件末尾添加如下语句并保存
        • /home/lss/work:要共享的开发主机目录,注意使用空格与后面的配置隔开。
        • 192.168.0.0/24:配置谁可以访问,其中的/24是掩码,此处表示24个1,即11111111.11111111.11111111.00000000, 即掩码是255.255.255.0。结合前面192.168.0.0表示此处配置IP为 192.168.0.*的主机均可以访问该目录,即局域网上的所有主机。
        • rw:表示客户机的权限,rw表示可读写,具体的权限还受文件系统的rwx及用户身份影响。
        • sync:资料同步写入到内存与硬盘中。
        • anonuid=1000:将客户机上的用户映射成指定的本地用户ID的用户。
        • anongid=1000:将客户机上的用户映射成属于指定的本地用户 组ID。
        • no_subtree_check:不检查子目录权限,默认配置。
        /home/lss/work 192.168.0.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000,no_subtr    ee_check)
        
    • 创建共享目录 /home/lss/work

    • 更新exports配置

      • sudo exportfs -arv
    • 查看NFS共享情况

      • showmount -e
  • 在开发板上配置NFS

    • 安装 NFS 客户端

      • sudo apt install nfs-common -y
      • 已安装
    • 查看NFS服务器共享目录

      • showmount -e +“NFS服务器IP”
        • showmount -e 192.168.43.63
    • 临时挂载 NFS 文件系统

      • sudo mount -t nfs 192.168.43.63:/home/lss/work /mnt

      • 挂载成功

      • 可能出现的错误

        • 解决方法

          • 在服务主机上的 /etc/exports 文件末尾改为如下语句并保存
          /home/lss/work 192.168.0.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000,no_subtr    ee_check)
          /home/lss/work *(insecure,rw,async,no_root_squash)
          
          • 重新更新exports配置 sudo exportfs -arv
    • 取消挂载

      • sudo umount /mnt