嵌入式Linux开发环境搭建ping、nfs的解决方法

 更新时间:2019年07月20日 11:10:42   作者:行路人  
在本篇文章里小编给大家整理了关于嵌入式Linux开发环境搭建ping、nfs的解决方法,需要的朋友们学习参考下。

 一. 嵌入式软件层次

1) Bootloader->引导加载程序

整个嵌入式系统的加载启动任务完全交给Bootloader完成,它的主要任务是将内核映象从硬盘读到RAM中,然后跳转到内核入口启动内核(操作系统)!通俗来讲,Bootloader的作用就是初始化硬件,启动操作系统。

U-BOOT是Bootloader最常用的一种,将uboot下载至开发板的nand flash(ROM)中,即可通过仿真软件Secure CRT对开发板进行初始设置。       包括开发板的环境变量、IP等设置项,为后面下载内核、加载文件系统做基础。

2)Linux内核

实现不同的硬件、软件需求配置不同的系统内核。一般基于已有的内核进行修改

配置内核 -> 编译内核 -> 安装内核 -> 清理内核过程文件(make clean)

配置内核: make menuconfig ARCH=arm   菜单式交互界面选择所需的驱动、协议文件

编译内核:make uImage(内核名)  ARCH=arm CROSS_COMPILE=arm-linux-  

安装内核:通过tftp服务器,在基于uboot下下载uImage至 20000fc0(210开发板启动地址)  "tftp uImage 20007fc0"

3)文件系统

文件系统简单说就是一种目录结构,由于linux操作系统的设备在系统中是以文件的形式存在,将这些文件分类管理以及提供和内核交互的接口,就形成了一定的目录结构也就是文件系统。  

基本流程:

  • a.设置根文件系统目录rootfs及内部存储文件目录bin、dev、lib、sbin、sys、usr、mnt等;
  • b.文件系统添加内核模块,在linux内核目录下"/home/S4-Driver/linux-smart210/";

" make modules ARCH=arm CROSS_COMPILE=arm-linux- "   内核编译

" make modules——install ARCH=arm INSTALL_MOD_PATH=/home/S5-/rootfs "   内核文件复制到根文件目录下

  • c.根目录"/.../rootfs"下安装交叉编译器busybox,配置内核->编译内核->安装拷贝make install;
  • d.挂载根文件系统,使用nfs方式,可实时在线根文件系统rootfs;

SecureCRT -> 通过uboot对开发板进行参数配置(nfs配置项) -> tftp服务器下载Linux内核 -> bootm 20007fc0运行挂载即可!

二.偶遇问题

1. 开发板ping的系列问题

1) 模型结构搭建:PC机 -> 有线网卡 -> 路由器 -> 直连网线 -> 开发板网口;

2)a. 设置虚拟机为桥接模式,以保证外网可寻找到Linux虚拟机ip;

   b. PC机使用的是有线网卡,则PC机及Linux虚拟网络适配器觉选择Realtak USB(有线网口);

   c. 保证Linux虚拟机、PC机、开发板三者ip处于同一网段;

3)关闭Linux虚拟机、PC机的防火墙,使得PC可ping通Linux和开发板

再排除硬件接口问题,即可通讯。

2.nfs挂载问题

nfs挂载出现如:"Server is not responding"、" unable to mount root"等问题,其主要原因是nfs的挂在设置参数、下载地址有问题。如smart210下载地址为20007fc0(并非20008000),nfs默认是使用udp通信协议,挂载参数网上都可哟搜索到,多试一试就没问题,前提是保证Linux的nfs服务器能正常使用。

 以上就是本次介绍的嵌入式Linux开发环境搭建,问题ping、nfs的解决全部知识点内容,感谢大家对脚本之家的支持。

相关文章

  • 搭建nextcloud私有云存储网盘的教程详解

    搭建nextcloud私有云存储网盘的教程详解

    Nextcloud是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或团队的云同步网盘,从而实现跨平台跨设备文件同步、共享、版本控制、团队协作等功能。这篇文章主要介绍了搭建nextcloud私有云存储网盘,需要的朋友可以参考下
    2019-12-12
  • Ubuntu18.04安装Nvidia显卡驱动教程(图文)

    Ubuntu18.04安装Nvidia显卡驱动教程(图文)

    这篇文章主要介绍了Ubuntu18.04安装Nvidia显卡驱动教程(图文),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Linux下RPM打包制作过程

    Linux下RPM打包制作过程

    这篇文章主要介绍了Linux下RPM打包制作的详细流程,并分享了相关实例代码,一起学习下。
    2018-02-02
  • linux下pip的安装步骤及使用详解

    linux下pip的安装步骤及使用详解

    pip类似RedHat里面的yum,安装软件非常方便,下面这篇文章主要给大家介绍了关于在linux系统下pip的安装步骤及使用的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • 在Apache服务器上启用GZip压缩静态内容的方法

    在Apache服务器上启用GZip压缩静态内容的方法

    这篇文章主要介绍了在Apache服务器上启用GZip压缩静态内容的方法,通过配置.htaccess文件即可轻松实现,同时附带了一些GZip的常用命令,需要的朋友可以参考下
    2015-08-08
  • linux轻量级 Web 服务器

    linux轻量级 Web 服务器

    linux轻量级 Web 服务器...
    2007-11-11
  • Linxu服务器上安装JDK 详细步骤

    Linxu服务器上安装JDK 详细步骤

    这篇文章主要介绍了Linxu服务器上安装JDK 详细步骤,在安装之前需要先卸载自己linux上的jdk,具体内容详情大家参考下本文
    2017-12-12
  • Kafka使用入门教程

    Kafka使用入门教程

    Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。这个独特的设计是什么样的呢
    2015-12-12
  • Linux date 时间设置同步命令分享

    Linux date 时间设置同步命令分享

    Linux服务器运行久时,系统时间就会存在一定的误差,一般情况下可以使用date命令进行时间设置,但在做数据库集群分片等复杂操作时对多台机器的时间差是有要求的,此时就需要使用ntpdate进行时间同步。
    2018-04-04
  • 浅析CentOS8虚拟机访问Windows10主机文件夹方法

    浅析CentOS8虚拟机访问Windows10主机文件夹方法

    这篇文章主要介绍了CentOS8虚拟机访问Windows10主机文件夹方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10

最新评论