博客
关于我
Linux内核调试手段
阅读量:496 次
发布时间:2019-03-07

本文共 1225 字,大约阅读时间需要 4 分钟。

在uboot中通过NFS下载并运行Ubuntu镜像和设备树

在开发和调试嵌入式系统时,使用NFS命令是一种常见且高效的方法,适用于通过网络下载并运行Ubuntu镜像和设备树。以下是详细的操作步骤和注意事项:

1. 安装NFS服务器并配置网络

首先,确保Ubuntu系统中已安装NFS服务器端:

sudo apt-get install nfs-kernel-server

接下来,设置网络设备并确保防火墙已关闭:

sudo ifconfig eth0 upsudo ifconfig eth0 192.168.1.119 upsudo ufw disable

关闭防火墙测试完成后启用防火墙:

sudo ufw enable

查看防火墙状态:

sudo ufw status

然后,编辑NFS配置文件并设置根文件系统共享权限:

sudo gedit /etc/exports

在文件末尾添加以下内容:

/home/用户名/root_fs *(rw,sync,no_root_squash)

重启NFS服务器:

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

最后,测试服务器是否能够挂载根文件系统:

sudo mount -t nfs 192.168.1.119:/home/用户名/root_fs /mnt

2. 在uboot中挂载根文件系统并更新板子文件系统

进入uboot命令行,设置开发板的IP地址和NFS根文件系统路径:

setenv serverip 192.168.1.119setenv ipaddr 192.168.1.2setenv nfsroot /home/用户名/fs_rootfsrun netboot

运行完成后,板子将通过NFS挂载根文件系统,文件系统路径位于/mnt目录下。如果需要,可以手动创建该目录:

mkdir mnt

将文件从Ubuntu传输至板子文件系统:

mount -t nfs -o nolock,vers=3 192.168.1.199:/home/用户名/root_fs /mntcp /mnt/hello.c ./test

3. 使用gdb进行远程调试

为了进行嵌入式系统的调试,可以使用arm-linux-gdb和gdbserver组合:

arm-linux-gdb -gdbserver

通过VSCode、QtCreator或Eclipse等IDE集成调试环境,方便进行源码调试。

4. 注意事项

  • 确保板子和Ubuntu系统处于同一网段,手动设置IP地址时使用正确的子网掩码:
ifconfig eth0 192.168.1.119 up
  • 在重启开发板前,确保保存并应用uboot设置:
saveenvreboot

通过以上方法,开发者可以高效地在嵌入式系统中使用NFS进行文件传输和系统启动,同时结合gdb进行远程调试,确保开发和调试过程的顺利进行。

转载地址:http://pqpcz.baihongyu.com/

你可能感兴趣的文章
Python+selenium+unittest的GUI自动化框架实现
查看>>
python函数拟合不规则曲线_Python计算&绘图——曲线拟合问题(转)
查看>>
python函数定义的基本格式_零基础学python-2.19 定义函数、调用函数与默认参数
查看>>
Python+Selenium之数据驱动测试的实现
查看>>
python函数定义与使用+返回值简解
查看>>
Python+Selenium登录
查看>>
Python日期时间模块
查看>>
Python函数合集:足足68个内置函数请收好!
查看>>
Python+Selenium自动化测试项目实战
查看>>
Python+Selenium自动化测试项目实战【建议收藏】
查看>>
Python+Selenium自动化测试:Page Object模式
查看>>
python+selenium进行cnblog的自动化登录测试
查看>>
Python函数只返回第一个值而不是数据框
查看>>
Python+SQL实战:京东用户行为数据分析案例解析(上)
查看>>
Python+SQL实战:京东用户行为数据分析案例解析(下)
查看>>
PYTHON+Twisted+sqlanydb=ABORT()
查看>>
Python函数之返回值、作用域和局部变量
查看>>
Python+统计学 | 探索常用的数据分析统计分布
查看>>
python, selenium中用于切换帧的函数
查看>>
python函数
查看>>