首先需要明确,服务端和客户端应该是不同的主机,客户端可以有多个,而服务端只配置一个,这里服务端ip假设为192.168.1.204,两台机器系统均为Ubuntu 18.04
1.服务端配置
1.1.安装nfs
sudo apt-get install nfs-kernel-server
1.2.设置共享目录
showmount -e # 查看已经共享出去的目录
新建目录
mkdir share
配置文件/etc/exports
/home/zekdot/share *(rw,sync,no_subtree_check,no_root_squash)
*代表所有的网段都可以访问这台服务器,rw代表其他人访问这个目录有读写权限(ro为只读),sync为同步,代表所有数据在请求时写入共享,no_subtree_check代表不检测父目录的的权限,no_root_squash代表root用户具有根目录的的完全管理访问权限,
1.3.启动NFS服务器
sudo service portmap restart
sudo service nfs-kernel-server restart
2.客户端安装nfs
首先尝试直接安装nfs-common
sudo apt-get install nfs-common
如果出现0.2.3-0.6ubuntu0.18.04.1_amd64.deb 404,手动下载并安装rpcbind
wget http://archive.ubuntu.com/ubuntu/pool/main/r/rpcbind/rpcbind_0.2.3-0.6ubuntu0.18.04.4_amd64.deb
sudo dpkg -i rpcbind_0.2.3-0.6ubuntu0.18.04.4_amd64.deb
最后挂载nfs文件
mkdir share
sudo mount -t nfs 192.168.1.204:/home/zekdot/share /home/zekdot/share/
如果不再需要挂载文件,执行如下命令
sudo umount /home/zekdot/share
然后访问两台机器上的/home/zekdot/share可以达到仿佛访问同一台机器的目录的效果。