嵌入式Linux开发环境搭建,问题ping、nfs的解决

简介: 嵌入式Linux开发环境搭建,问题ping、nfs的解决一. 嵌入式软件层次1) Bootloader->引导加载程序  整个嵌入式系统的加载启动任务完全交给Bootloader完成,它的主要任务是将内核映象从硬盘读到RAM中,然后跳转到内核入口启动内核(操作系统)!通俗来讲,Bootloader的作用就是初始化硬件,启动操作系统。
+关注继续查看

嵌入式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服务器能正常使用。
原文地址https://www.cnblogs.com/hjh-666/p/10893670.html

相关文章
|
4天前
|
Linux Windows
linux(三)远程管理命令ping
Ping这个命令,还是比较熟悉的,每次域名访问出错的时候,或者想看域名绑定的IP具体是什么的时候,都会使用这个命令ping一下。当然,这是在windows系统上,也就是在我的本地。 Linux下的ping的命令和windows下ping的命令是有很大不同的。
19 0
|
27天前
|
Unix Linux Windows
Linux命令(3)之ping
Linux命令(3)之ping
17 4
|
11月前
|
Rust Linux
Rust开发环境搭建(Linux)
Rust开发环境搭建(Linux)
Rust开发环境搭建(Linux)
|
IDE 网络协议 Linux
【Linux】【开发环境】【RHEL】开发环境搭建系列之十一——Linux系统下搭建基于vim的C/C++ IDE开发环境
【Linux】【开发环境】【RHEL】开发环境搭建系列之十一——Linux系统下搭建基于vim的C/C++ IDE开发环境
236 0
|
Linux Windows
【Linux】【开发环境】【RHEL】开发环境搭建系列之十——Linux主机环境下挂载samba服务器
【Linux】【开发环境】【RHEL】开发环境搭建系列之十——Linux主机环境下挂载samba服务器
|
Unix Linux API
【Linux】【开发环境】【RHEL】开发环境搭建系列之九——Linux系统下Wine环境搭建
【Linux】【开发环境】【RHEL】开发环境搭建系列之九——Linux系统下Wine环境搭建
363 0
|
存储 Ubuntu 网络协议
【Linux】【开发环境】【RHEL】开发环境搭建系列之八——Win10下安装ubuntu双系统
【Linux】【开发环境】【RHEL】开发环境搭建系列之八——Win10下安装ubuntu双系统
235 0
【Linux】【开发环境】【RHEL】开发环境搭建系列之八——Win10下安装ubuntu双系统
|
SQL 关系型数据库 MySQL
【Linux】【开发环境】【RHEL】开发环境搭建系列之七——安装基础MySQL环境
【Linux】【开发环境】【RHEL】开发环境搭建系列之七——安装基础MySQL环境
148 0
|
运维 Devops Linux
【Linux】【开发环境】【RHEL】开发环境搭建系列之六——安装docker基础环境
【Linux】【开发环境】【RHEL】开发环境搭建系列之六——安装docker基础环境
113 0
|
Linux 网络安全 开发工具
【Linux】【开发环境】【RHEL】开发环境搭建系列之五——安装git-repo环境
【Linux】【开发环境】【RHEL】开发环境搭建系列之五——安装git-repo环境
198 0
相关产品
云迁移中心
推荐文章
更多