讯为RK3568开发板入门之-tftp&nfs的配置

本文介绍了如何在Ubuntu18.04虚拟机中配置TFTP和NFS服务,以便于在RK3568开发板上进行网络挂载和软件调试。首先安装并配置TFTP服务,创建tftpboot目录,修改配置文件,然后重启服务。接着安装NFS服务,创建共享目录,编辑exports文件并设置权限,重启NFS服务。在开发板上配置网络参数,通过uboot命令行设置IP地址,最后通过NFS挂载文件系统,实现从Ubuntu向开发板的mnt目录共享和执行程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基础条件

VMware虚拟机
Ubuntu18.04 【网络配置陈桥接模式】
RK3568开发板【我是用讯为的RK3568】
网线连接路由器或者和电脑直连

配置TFTP和NFS的作用

使用tftp和nfs网络挂载可以很方便的进行软件的调试,挂载成功后只要把Ubuntu下编译好的文件程序放到挂载的目录下,开发板上面就可以直接运行了。否则还需要通过windows进行拷贝比较麻烦。

一、首先配置Ubuntu的tftp服务

1.1 安装 TFTP 服务端

首先在 ubuntu 中执行以下命令安装 TFTP 服务:

sudo apt-get install tftp-hpa tftpd-hpa

在家目录创建 tftpboot 文件夹,并修改文件夹权限为777,如下图所示:

mkdir -p /home/topeet/tftpboot
sudo chmod 777 /home/topeet/tftpboot

权限修改为777文件夹是绿色的

1.2 最后修改配置文件,打开配置文件以后如下图所示:
sudo vim /etc/default/tftpd-hpa

修改后如下:

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/topeet/tftpboot/"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="-l-c-s"

在这里插入图片描述

1.3 修改完成保存退出,在终端输入以下命令重启 tftpd-hpa 服务。
service tftpd-hpa restart

二、 安装 NFS 服务

2.1 首先执行以下命令安装 NFS 服务:
sudo apt-get install nfs-kernel-server
2.2 然后使用以下命令创建 rk_rootfs 文件并赋予其777权限如下图所示:

在这里插入图片描述

2.3 使用以下命令编辑/etc/exports 文件,并添加 NFS 服务的工作目录的路径:
sudo vim /etc/exports

添加 NFS 目录:以/home/topeet/rk_rootfs 为例,将其添加到/etc/exports 文件中, 如下所示:

/home/topeet/rk-rootfs *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)

![在这里插入图片描述](https://img-blog.csdnimg.cn/0683dfbdd65f4e03aec609e3381a8087.png在这里插入图片描述
配置参数说明:

rw :					读写访问
sync :					所有数据在请求时写入共享
async :				NFS 在写入数据前可以相应请求
secure :				NFS 通过 1024 以下的安全 TCP/IP 端口发送
insecure :				NFS 通过 1024 以上的端口发送
wdelay :				如果多个用户要写入 NFS 目录,则归组写入(默认)
no_wdelay :			如果多个用户要写入 NFS 目录,则立即写入,当使用 async 时,无需此设置。
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_squas root:	用户具有根目录的完全管理访问权限
2.4 配置nfs的nfs-kernel-server这文件

终端打开文件

sudo vi /etc/default/nfs-kernel-server

修改为
在这里插入图片描述

2.5 使用以下命令重启 NFS 服务:
service nfs-kernel-server restart
2.6可以使用 showmount -e 查看挂载情况

在这里插入图片描述
说明:/home/topeet/rk_rootfs * 这里的 * 代表任意IP

三、配置开发板网络

3.1 连接好网线,上电启动开发板,在加载阶段点击“ctrl+c”进入 uboot 命令行,如下图所示:

在这里插入图片描述

3.2 配置开发板和tftp服务的IP(Ubuntu的ip)
setenv ipaddr 192.168.31.98					设置开发板的IP
setenv serverip 192.168.31.189				设置tftp服务的IP,这里就是Ubuntu的IP
setenv gateway 192.168.31.1					网关

然后保存参数

saveenv

四、nfs 挂载文件系统

4.1 开发板还是在uboot下输入
setenv bootargs "root=/dev/nfs root=/dev/nfs nfsroot=${serverip}:/home/topeet/rk_rootfs,v3 rw ip=${ipaddr}:${serverip}:${gateway}:255.255.255.0::eth1:off"

然后保存

saveenv
4.2 查看Ubuntu下的rk_rootfs目录

在这里插入图片描述
开发板下的目录
在这里插入图片描述
是一样的

五、我新建了一个用于共享的独立Ubuntu给开发板的目录,权限和设置都是和上面rk_rootfs一样的。然后在开发板系统中挂载。

5.1 这里把Ubuntu的nfs_rootfs挂载到了开发板发mnt下:
mount -t nfs 192.168.31.189:/home/topeet/nfs_rootfs  /mnt

在这里插入图片描述

5.2 测试

Ubuntu下拷贝一个编译好的rk-opent程序到nfs_rootfs目录下
在这里插入图片描述
然后在到开发板的mnt目录下查看并执行
在这里插入图片描述
至此,网络挂载nfs成功。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ching·

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值