nfs实现开发板与ubuntu共享目录(以rk3568为例)

tips:

Android不支持nfs,使用adb push会更方便。

遇到问题多考虑路径是否设置正确,权限问题 

步骤:

可以分为两大步:1、在ubuntu中配置nfs服务 ,创建共享目录

                              2、通过局域网联接开发开发板和ubuntu

1、在ubuntu中配置nfs服务 ,创建共享目录

输入以下命令安装 Ubuntu NFS 服务:
 

apt-get install nfs-kernel-server

使用以下命令对 exports 文件进行内容的修改

vim /etc/exports

在最后一行添加以下内容, 添加完成如下图所示

/home/nfs/ *(rw,sync,no_root_squash)

/home/nfs/: 要共享的目录; “/home/nfs/ ”目录需要自己建, 默认 Ubuntu 中是没有的。

*: 代表允许所有的网络段访问; rw: 是可读写权限; sync: 是资料同步写入内存和硬盘;

no_root_squash: 是 Ubuntu nfs 客户端分享目录使用者的权限, 如果客户端使用的是 root用户, 那么对于该共享目录而言, 该客户端就具有 root 权限;

其他 Ubuntu nfs 常用的参数有: ro: 只读访问

async : nfs 在写入数据前可以相应请求secure: nfs 通过以下的安全 TCP/IP 端口发送

insecure: nfs 通过 1024 以上的端口发送wdelay: 如果多个用户要写入 NFS 目录, 则归组(默认)

no_wdelay: 如果多个用户要写入 NFS 目录, 则立即写入, 当使用 async 时, 无需此设置

hide: 在 nfs 共享目录中不共享妻子目录no_hide: 共享 nfs 目录的子目录

subtree_check: 如果共享/usr/bin 之类的子目录时, 强制 nfs 检查父目录的权限(默认) no_subtree_check: 和上面相对, 不检查父目录权限

all_squash: 共享文件的 UID 和 GID 映射匿名用户 anonymous, 适合公用目录no_all_squash: 保留共享文件的 UID 和 GID(默认)

root_squash root: 用户的所有请求映射成如 anonymous 用户一样的权限(默认)

no_root_squash root: 用户具有根目录的完全管理访问权限anonuid=xxx: 指定 nfs 服务器/etc/passwd 文件中匿名用户多的 UID anongid=xxx: 指定 nfs 服务器/etc/passwd 文件中匿名用户的 GID

接下来使用以下命令重启 rpcbind 服务, 运行结果如下图:

/etc/init.d/rpcbind restart

然后输入以下命令重启 nfs 服务

需要先在/home创建nfs文件夹才能生效,否则会出现以下报错

/etc/init.d/nfs-kernel-server restart

使用以下命令, 查看是否成功挂载 nfs 目录(这里也可能要重启 ubuntu 才会又挂载目录),如下图所示
 

showmount -e

至此, Ubuntu nfs 服务器端的配置完成。
 

2、通过局域网联接开发开发板和ubuntu

 通过路由器网线/wifi连接开发板和路由器。 系统起来后首先使用以下命令查看开发板 ip。

ifconfig

然后在 ubuntu 同样使用以下命令查看 NFS 服务器的 ip, 如下图所示:


在开发版输入以下命令

mount -t nfs -o nfsvers=3,nolock 192.168.3.133:/home/nfs /mnt/

运行结果如下: 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值