以下是在 Ubuntu 上安装和部署 NFS 的步骤,你可以根据实际情况进行操作。
一、在 Ubuntu 搭建 NFS 服务器
-
安装 NFS 服务器
在 Ubuntu 安装 NFS 服务器比较简单,只需要在命令行执行下面这个命令即可:
sudo apt install nfs-kernel-server
-
创建 NFS 服务器共享目录
创建一个目录用于 NFS 服务器将文件共享给客户端,这个目录将会写入到 NFS 配置文件中:
sudo mkdir /nfsroot
-
修改 NFS 服务器配置文件
打开 NFS 服务器配置文件/etc/exports
,指定 NFS 服务器共享目录及其属性,内容如下:
/nfsroot *(rw,sync,no_root_squash)
各参数解析如下:
/nfsroot
:指定/nfsroot
为 NFS 服务器的共享目录。*
:允许所有的网段访问,也可以使用具体的ip
。rw
:挂接此目录的客户端对该共享目录具有读写权限。sync
:资料同步写入内存和硬盘。no_root_squash
:root
用户具有对根目录的完全管理访问权限。no_subtree_check
:不检查父目录的权限。
- 重启 NFS 服务器
执行下面两个命令其中一个可以重启 NFS 服务器:
sudo service nfs-kernel-server restart
或者
sudo /etc/init.d/nfs-kernel-server restart
到此,可以执行下面这个命令查看 NFS 服务器的共享目录:
showmount -e localhost
二、客户端访问 NFS 服务器共享目录
如果客户端是嵌入式开发板系统自带的 NFS 客户端,一般可直接使用。如果需要在 Ubuntu 上安装,可以执行下面的命令安装:
sudo apt install nfs-common
-
在 NFS 客户端挂载服务器共享目录
使用以下命令挂载服务器共享目录(需要将192.168.2.183
换成实际的 NFS 服务器ip
):
mount -t nfs -o nolock 192.168.2.183:/nfsroot /nfsroot
需要注意的是,在嵌入式开发板必须加上-o nolock
,不然可能会出现错误,因为nfsmount
默认选项包括文件锁,依赖于portmap
提供的动态端口分配功能。 -
在 NFS 客户端卸载服务器共享目录
在 NFS 客户端执行下面命令,可以查询挂载的 NFS 服务器目录:
mount
在 NFS 客户端执行下面命令,可以卸载 NFS 服务器目录:
umount /nfsroot
如果你想查看更详细的图文教程,可以参考以下链接: