1先安装
sudo apt-get install nfs-kernel-server
(安装nfs-kernel-server时,apt会自动安装nfs-common和portmap)
分开看就是
1.服务器端:sudo apt-get install portmap
2.服务器端:sudo apt-get install nfs-kernel-server
3.客户端:sudo apt-get install nfs-common
2配置nfs
sudo vim /etc/exports
在末尾一行加入
/home/book/work *(rw,sync,no_root_squash,no_subtree_check)
这一行的含义
/home/book/work 与nfs服务客户端共享的目录,
*:允许所有的网段访问,也可以使用具体的IP
rw:挂接此目录的客户端对该共享目录具有读写权限
sync:资料同步写入内存和硬盘
no_root_squash:root用户具有对根目录的完全管理访问权限。
no_subtree_check:不检查父目录的权限。更多的参数说明我在文章下面贴出来了!
设置 /home/book/work目录权限
sudo chmod 777 work -R
重启服务:
#sudo /etc/init.d/portmap restart <---重启portmap,
#sudo /etc/init.d/nfs-kernel-server restart <---重启nfs服务
#showmount -e <---显示共享出的目录
另:nfs是一个RPC程序,使用它前,经常要映射好端口,通过portmap设定,不过我这里没设
重启nfs服务有2种方式
book@ubuntu:/mnt$ sudo /etc/init.d/nfs-kernel-server restart
* Stopping NFS kernel daemon [ OK ]
* Unexporting directories for NFS kernel daemon... [ OK ]
* Exporting directories for NFS kernel daemon... [ OK ]
* Starting NFS kernel daemon [ OK ]
book@ubuntu:/mnt$ sudo service nfs-kernel-server restart
* Stopping NFS kernel daemon [ OK ]
* Unexporting directories for NFS kernel daemon... [ OK ]
* Exporting directories for NFS kernel daemon... [ OK ]
* Starting NFS kernel daemon [ OK ]
现在可以在本机上试一下:
sudo mount -t nfs localhost:/home/book/work /mnt
sudo mount 127.0.0.1:/home/book/work /mnt
注:localhost为本机linux的IP地址
这样就把共享目录挂到了/mnt目录,取消挂载用:
sudo umount /mnt
如果用在嵌入式设备上挂载,要加上参数-o nolock
mount -t nfs -o nolock 192.168.1.8:/home/book/work /mnt
============================================================
apt-cache search nfs
nfs 30000000 192.168.1.8:/home/book/work/fs.yaffs2
这和用tftp下载一样的效果
注意:修改共享目录要得重启服务,重启服务之前,先重启端口映射服务,否则会出错!!
也就是这个顺序不能变:
#sudo /etc/init.d/portmap restart <---重启portmap,
#sudo /etc/init.d/nfs-kernel-server restart <---重启nfs服务
#showmount -e <---显示共享出的目录