博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用nfs调试rootfs
阅读量:3743 次
发布时间:2019-05-22

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

利用nfs调试rootfs

在开发阶段,利用nfs的方式来调试rootfs是一种非常方便快捷的方式。

环境 ubuntu14.04 64位 板载kernel版本2.6.35

1.确保板载kernel支持nfs

  • 前往kernel的源码目录,make menuconfig,进入菜单Networking support->Networking options-> TCP/IP networking。确保nfs的功能已经被打开
    这里写图片描述
  • 然后再进入File systems->Network File Systems 确保nfs加载可以被使用
    这里写图片描述

2.ubuntu搭建nfs服务器

  • 首先安装nfs
apt-get install nfs-kernel-server
apt-get install nfs-common
  • 创建共享目录,我在根目录下的root内创建了一个rootfs_test,将其作为共享目录。并修改权限
chmod 777 -R /root/rootfs_test
  • 然后 配置nfs vi /etc/exports,在最后一行添加
/root/rootfs_test *(rw,sync,no_root_squash,no_subtree_check)
  • 执行showmount -e看看有没有成功,发现报错: rpc.nfsd: writing fd to kernel failed: errno 111 (Connection refused)
  • 为了解决这个问题必须要重启rpcbind,/etc/init.d/rpcbind restart,不过有的时候restart也会失败,这个时候重启一下ubuntu即可
  • 再重启nfs 服务,/etc/init.d/nfs-kernel-server restart
  • 最后输入showmount localhost -e 看看有没有成功,发现:
Export list for localhost:/root/rootfs_test *

搭建成功!

3.U-boot传参设置

  • 在uboot中设置如下启动参数:
setenv bootargs root=/dev/nfs nfsroot=192.168.1.2:/root/rootfs_test ip=192.168.1.3:192.168.1.2:192.168.1.10:255.255.255.0::eth0:off init=/linuxrc console=ttySAC2,115200
  • 参数中的很多数据是由冒号分割的,里面很多地方要注意,比如/root/rootfs_test是主机的共享目录(即rootfs),192.168.1.2代表的是主机ip,192.168.1.3代表开发板ip,192.168.1.10是网关,eth0是主机和开发板相接的网卡。注意这是一整行没有换行,改完save一下
  • 现在,就能使用nfs来加载rootfs调试了
你可能感兴趣的文章
springBoot基础(一)
查看>>
springBoot基础(二)
查看>>
在springBoot中使用Mapper类问题
查看>>
Flink On Yarn 集成时常见报错
查看>>
k8s-nfs
查看>>
filebeat___log -input
查看>>
GitHub使用
查看>>
关于学习Java的一点点心得。附Dos命令的基操
查看>>
SpringCloud详细教程3-Eureka服务注册中心
查看>>
SpringMVC中常用的几个注解@RequestBody
查看>>
SpringCloud详细教程5-Eureka更多介绍
查看>>
SpringCloud详细教程6-Zookeeper
查看>>
Freemarker使用mht制作导出word模板
查看>>
Freemarker使用xml写word模板-遇到的坑
查看>>
PyQt5基础用法ui转py后需要修改的地方
查看>>
Scanner类
查看>>
基本类型包装类
查看>>
System类常用方法
查看>>
Runtime类、Math类和Random类的常用方法
查看>>
数据处理类常用方法
查看>>