PC机与开发板间搭建nfs

PC机与开发板间搭建nfs

PC端(nfs-server):

1.装环境

apt-get install nfs-kernel-server

2.配置

vim /etc/exports

在里面追加一行:

/home/lowfree/rk3399_nfs *(rw,sync,no_root_squash,no_subtree_check)

前面的路径表示server上要共享的目录;
*号表示所有ip都可以访问

括号中常见参数如下:
rw 可读写的权限
ro 只读的权限
no_root_squash 登入NFS主机,使用该共享目录时相当于该目录的拥有者,如果是root的话,那么对于这个共享的目录来说,他就具有root的权限,这个参数不安全,不建议使用

root_squash 登入NFS主机,使用该共享目录时相当于该目录的拥有者。但是如果是以root身份使用这个共享目录的时候,那么这个使用者(root)的权限将被压缩成为匿名使用者,即通常他的UID与GID都会变成nobody那个身份

all_squash 不论登入NFS的使用者身份为何,他的身份都会被压缩成为匿名使用者,通常也就是nobody

anonuid 可以自行设定这个UID的值,这个UID必需要存在于你的/etc/passwd当中
anongid 同anonuid,但是变成groupID就是了

sync 资料同步写入到内存与硬盘当中
async 资料会先暂存于内存当中,而非直接写入硬盘

3.配置完成,开启服务

root@xxx:~# /etc/init.d/rpcbind start
[ ok ] Starting rpcbind (via systemctl): rpcbind.service.

root@xxx:~# /etc/init.d/nfs-kernel-server start
[ ok ] Starting nfs-kernel-server (via systemctl): nfs-kernel-server.service.

上面两个顺序不要变,先开rpcbind,再开nfs,否则可能报这个错:

clnt_create: RPC: Program not registered

板子端(nfs-client):

1.装环境

apt-get install nfs-kernel-server

2.开服务,只用开rpcbind

/etc/init.d/rpcbind start

可以看看rpcbind的状态

/etc/init.d/rpcbind status

可以看看服务端192.168.0.123(查看ip地址命令: ifconfig)的挂载情况:

root@xxx:~# showmount -e 192.168.0.123
Export list for 192.168.0.123:
/home/lowfree/rk3399_nfs *

3.当然也可以直接挂载:

mount -t nfs 192.168.0.123:/home/lowfree/rk3399_nfs  /mnt

后面的nfs表示的是client端接受share的目录

你可能感兴趣的:(Linux)