ubuntu下NFS配置(用于嵌入式开发)

1. NFS简介

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。(引自百度百科)

2. 配置ubuntu虚拟机

如果开发使用的是虚拟机的话这块需要配置虚拟机的网络适配器为桥接模式,这样虚拟机才能跟主机在一个网段,跟你的目标板也才能在同一个网段

在这里插入图片描述

3. 服务端安装

3.1 使用命令安装

直接使用apt install在线安装即可

sudo apt-get install nfs-kernel-server
3.2 配置

配置共享路径,修改 /etc/export 配置文件即可

sudo vim /etc/exports

在文件末添加如下内容:

/home/guomq/nfs *(rw,sync,no_root_squash,insecure)
  • /home/guomq/nfs 代表的是共享的目录
    • 代表是允许所有的网络访问
  • ro 该主机对该共享目录有只读权限
  • rw 该主机对该共享目录有读写权限
  • root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户
  • no_root_squash 客户机用root访问该共享文件夹时,不映射root用户
  • all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户- - anonuid 将客户机上的用户映射成指定的本地用户ID的用户
  • anongid 将客户机上的用户映射成属于指定的本地用户组ID
  • sync 资料同步写入到内存与硬盘中
  • async 资料会先暂存于内存中,而非直接写入硬盘insecure 允许从这台机器过来的非授权访问
  • 允许客户端从大于1024的tcp/ip端口连接服务器
3.3 重启NFS
/etc/init.d/rpcbind restart
/etc/init.d/nfs-kernel-server restart
3.4 测试NFS服务
showmount -e 127.0.0.1

出现如下结果表示配置成功
在这里插入图片描述

4. 挂载文件系统到开发板上

4.1 查看开发板是否支持nfs
 cat /proc/filesystems 
/mnt/nfs # cat /proc/filesystems 
nodev   sysfs
nodev   rootfs
nodev   ramfs
nodev   bdev
nodev   proc
nodev   cgroup
nodev   cgroup2
nodev   tmpfs
nodev   devtmpfs
nodev   configfs
nodev   debugfs
nodev   sockfs
nodev   pipefs
nodev   rpc_pipefs
nodev   devpts
        ext3
        ext2
        ext4
        cramfs
        vfat
        msdos
nodev   nfs
nodev   nfs4
        fuseblk
nodev   fuse
nodev   fusectl

如果有nodev nfs说明支持nfs文件系统,如果没有的话需要配置内核打开NFS文件系统的支持

4.2 挂载
mount -t nfs 192.168.5.174:/home/guomq/nfs /mnt/nfs -o nolock
  • 192.168.5.174 是服务端的地址
  • /home/guomq/nfs 是我们配置的服务端的 NFS 目录
  • /mnt/nfs 是目标目录

挂载完后我们在开发板上执行mount命令就可以看到挂载的信息
在这里插入图片描述

至此远程挂载NFS的所有步骤就完成了

猜你喜欢

转载自blog.csdn.net/gmq_syy/article/details/110194434