当前位置: 首页 > news >正文

睢宁县凌城做网站的外贸人常用网站

睢宁县凌城做网站的,外贸人常用网站,设计素材网站哪个好,十大教育培训机构排名一、前言 在前面的教程中,教了大家如何使用Busybox与buildroot构建自己的根文件系统并且在STM32MP157开发板上正常运行。那么除了这两种根文件系统以外,我们能不能使用别的根文件系统呢?我们在虚拟机中使用的Ubuntu系统能不能作为STM32MP157的…

一、前言

        在前面的教程中,教了大家如何使用Busybox与buildroot构建自己的根文件系统并且在STM32MP157开发板上正常运行。那么除了这两种根文件系统以外,我们能不能使用别的根文件系统呢?我们在虚拟机中使用的Ubuntu系统能不能作为STM32MP157的跟文件系统呢?当然,答案是肯定的,我们可以将Ubuntu系统移植到STM32MP157上,只是移植的不是完整的系统,是一个基础的根文件系统,那么本次教程就来教大家如何往STM32MP157上移植一个Ubuntu系统,如果你准备好了,就让我们开始吧!

二、谁适合本次教程

        本次教程同样涉及到根文件系统的移植,是一些比较上层的操作,在这之前,仍然需要大家移植好Linux内核,毕竟我们的根文件系统的启动是建立在LInux内核之上的。除此之外,还需要大家有根文件系统移植的经验,如果你还不会移植和启动根文件系统可以看下面的教程:

Busybox根文件系统移植:[Linux]从零开始的STM32MP157 Busybox根文件系统构建_stm32mp构建根文件系统-CSDN博客

Buildroot根文件系统构建:[Linux]从零开始的STM32MP157 Buildroot根文件系统构建-CSDN博客

当我们能够构建根文件系统并且正常运行起来以后,就可以进行下一步了。

三、Ubuntu-Base根文件系统移植

        我们现在移植的Ubuntu系统是一个Ubuntu的基础版即Ubuntu-Base,这个系统不像完整的Ubuntu系统那样有分区表与完整的软件包,Ubuntu-Base只有最基本的根文件系统与最基本的软件包,这也让Ubuntu-Base非常精简,大小与我们之前构建个Busybox、Buildroot差不多。并且,Ubuntu官方已经帮我们将Ubuntu系统构建好了,我们并不需要将重点放在构建上,我们只需要下载对应版本的压缩包然后解压即可使用Ubuntu-Base系统。

        移植的首要步骤就是先将Ubuntu官方构建好的Ubuntu-Base系统下载下来,这里我们需要通过自己Linux内核的版本来判断我们应该下载哪个版本的Ubuntu-Base系统。我们可以在Linux内核启动时看到Linux内核的版本:

可以看到我这里Linux内核的版本是5.4.31,我们需要找到一个能够支持这个内核版本的Ubuntu-Base系统。具体每个Ubuntu系统对应的Linux内核版本如下表所示:

Ubuntu版本       内核版本
ubuntu12.04      3.2.0-23-generic
ubuntu12.04.1    3.2.0-29-generic
ubuntu12.04.2    3.5.0-23-generic
ubuntu12.04.3    3.8.0-29-generic
ubuntu12.04.4    3.11.0-15-generic
ubuntu12.04.5    3.13.0-32-generic
ubuntu14.04      3.13.0-24-generic
ubuntu14.04.1    3.13.0-32-generic
ubuntu14.04.2    3.16.0-30-generic
ubuntu14.04.3    3.19.0-25-generic
ubuntu14.04.4    4.2.0-27-generic
ubuntu14.04.5    4.2.0-31-generic
ubuntu14.04.6    4.4.0-142-generic
ubuntu16.04      4.4.0-21-generic
ubuntu16.04.1    4.4.0-31-generic
ubuntu16.04.2    4.8.0-36-generic
ubuntu16.04.3    4.10.0-28-generic
ubuntu16.04.4    4.13.0-36-generic
ubuntu16.04.5    4.15.0-29-generic
ubuntu16.04.6    4.15.0-45-generic
ubuntu16.04.7    4.15.0-112-generic
ubuntu18.04      4.15.0-20-generic
ubuntu18.04.1    4.15.0-29-generic
ubuntu18.04.2    4.18.0-15-generic
ubuntu18.04.3    5.0.0-23-generic
ubuntu18.04.4    5.3.0-28-generic
ubuntu18.04.5    5.4.0-42-generic
ubuntu20.04      5.4.0-26-generic
ubuntu20.04.1    5.4.0-42-generic
ubuntu20.04.2    5.8.0-41-generic
ubuntu20.04.3    5.11.0-27-generic
ubuntu20.04.4    5.13.0-30-generic
ubuntu20.04.5    5.15.0-46-generic
ubuntu22.04      5.15.0-25-generic
ubuntu22.04.1    5.15.0-43-generic
ubuntu22.04.2    5.19.0-32-generic
ubuntu22.04.3    6.2.0-26-generic 
ubuntu22.04.4    6.5.0-18-generic
ubuntu24.04      6.8.0-31-generic

这里可以看到,对于我们的5.4.31内核Ubuntu20.04是可以完美支持的。Ubuntu18.04使用的是5.3内核,虽然版本低了一些,但是经过测试也可以完美启动。上面正式版系统对应的Linux内核的版本号对于Ubuntu-Base版同样适用,这样,我们需要下载的Ubuntu版本就很明确了,我们需要下载Ubuntu-Base20.04版本。

这里下载的话,我们使用阿里云的镜像站,打开下面链接即可来到Ubuntu-Base的下载专区:

阿里云Ubuntu-Base下载:ubuntu-cdimage-ubuntu-base安装包下载_开源镜像站-阿里云

进入以后,就可以看到下面的界面了:

然后我们点击“releases”:

当我们进入“releases”后,就可以看到许多的Ubuntu-Base的发布版本:

我们往下滑找到20.04:

这里的版本都是Ubuntu20.04,我们随便进入一个即可,不过为了避免问题,直接选“20.04”是肯定没错的,进入以后,可以看到以下文件夹:

我们再次进入“releases”:

进入以后,就可以看到许多已经被构建好的,并且支持许多不同架构的Ubuntu-Base20.04系统:

因为我们的STM32MP157是arm32位架构的,所以我们这里需要选择armhf版本:

点击了以后,过一会儿浏览器就会出现下载了:

我们需要将我们下载到的这个压缩包拷贝到Ubuntu虚拟机中,这里不管大家使用什么方法,只要能将这个压缩包拷贝过去即可。

完成以后如图所示,我将其放到了NFS目录下:

这里我们需要新建一个文件夹来存放我们的Ubuntu-Base系统,直接使用下面的命令即可:

mkdir ubuntu

然后将我们的Ubuntu-Base移动到我们新建的文件夹中,使用下方的命令:

mv ubuntu-base-20.04.1-base-armhf.tar.gz ubuntu

完成以后如图所示:

随后,我们使用下方的命令解压这个压缩包:

tar -xvf ubuntu-base-20.04.1-base-armhf.tar.gz

解压完成以后,我们可以看到,我们的ubuntu文件夹中多了许多文件:

这些文件想必大家已经很熟悉了,这不就是和我们之前构建的Busybox、Buildroot差不多的嘛。Ubuntu-Base就可以理解为一个被构建好的Ubuntu根文件系统。

解压完成以后,我们将原本的压缩包删掉,这样我们就得到了一个纯净Ubuntu根文件系统:

这样,我们根文件系统就准备好了,但是为了确保我们根文件系统能够正常启动,我们还需要修改一下Uboot中的“bootargs”环境变量。进入Uboot后,我们直接使用下面的命令配置“bootargs”环境变量:

setenv bootargs 'console=ttySTM0,115200 root=/dev/nfs nfsroot=192.168.1.100:/home/chulingxiao/linux/nfs/ubuntu,proto=tcp rw ip=192.168.1.106:192.168.1.100:192.168.1.1:255.255.255.0::eth0:off'

这里同样是使用nfs挂载根文件系统,大家将命令中根文件系统的路径替换为自己Ubuntu根文件系统即可。命令中每个变量的意思在根文件系统挂载中已经讲得很清楚了,可以看Busybox与Buildroot的构建教程,里面都讲了如何挂载根文件系统并且命令中每个变量的意思。

完成上面的步骤以后,我们使用下面的命令来保存环境变量:

saveenv

环境变量保存完成以后,我们直接使用“boot”命令启动Linux内核:

等内核启动完成以后,我们就可以看到,我们的Ubuntu-Base系统已经成功启动起来了。

在这个根文件系统中,我们仍然可以使用“ls”,“cd”等基础命令。

四、结语

        本篇教程中的Ubuntu系统移植部分,正点原子并没有提及,也就没有对应的教程,但是整体看来,本篇文章中的所有操作可以说是非常入门的,我也相信大家能够完整的将Ubuntu-Base系统移植到STM32MP157上,最后,感谢大家的观看!

 

http://www.dtcms.com/a/591096.html

相关文章:

  • 淄博网站制作价格低灵犀科技 高端网站建设
  • 外国大气网站建视频网站需要多大空间
  • 做地税电子签章的网站有哪些好的做兼职网站有哪些
  • 网页设计动画网站php做视频网站有哪些软件下载
  • 网站建设的学习网站开发外包业务怎么接
  • 南昌网站建设资讯龙岩seo招聘
  • 穷游 网站开发网站基本功能
  • 买股票的最佳时机解题思路
  • 企业网站推广定义重庆市建设工程信息网官网专家评审
  • 鸣蝉自助建站平台中山好的网站建设公司
  • 长安网站建设多少钱免费模版网
  • 网站动态页面免费自己制作app手机软件
  • 网站建设可以在里面装东西营销型企业网站的建设方案
  • 泊头市做网站网站建设合同 附件
  • 违法网站怎么做安全深圳室内设计公司50强
  • 网站建设吗中小企业网站制作方法
  • 什么网站可以做告白的网页网站建设优化服务器
  • 找个公司做网站需要注意什么哈尔滨 做网站公司有哪些
  • 云南人乌兰察布seo
  • 网站优化wordpress 首页折叠
  • 网站怎么做高权重柳州市网站制作公司
  • 郑州哪家做网站最好微营销推广平台有哪些
  • 企业免费网站建设河池市网站建设
  • 官方网站建设制作平台wordpress仿站模板制作教程
  • 徐州建设工程交易网站秦皇岛网站制作
  • 网站建设公司上海做网站公司哪家好国际学院网站建设的意义
  • 苏州做网站多少钱安陆网站
  • 公司网站服务器优化椒江住房和城乡建设部网站
  • 做会展网站的公司的工作流程wordpress固定链接标签
  • 国内知名网站建设公司重庆网站查询