0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

arm开发板如何安装linux系统

科技绿洲 来源:网络整理 作者:网络整理 2024-01-24 14:19 次阅读

安装Linux系统到ARM开发板是一个复杂的过程,涉及到多个步骤和不同的工具。下面是一个详实且细致的教程,包含了从准备工作到最终启动Linux系统的所有步骤。

  1. 准备工作
    在开始之前,需要准备以下工具和软件:
  • 一台运行Linux系统的电脑
  • 一个支持ARM架构的开发板
  • 一个USB转串口模块
  • 一根Micro USB线缆
  • 一个SD卡读卡器
  • 一个空的SD卡
  • 一个USB键盘和鼠标(可选)
  • 一个HDMI显示器(可选)
  1. 下载Linux内核和根文件系统
    首先,我们需要从官方网站下载适用于你的ARM开发板的Linux内核和根文件系统。一般来说,开发板的官方网站会提供这些文件的下载链接。把它们保存到你的电脑上的一个临时文件夹中。
  2. 制作启动SD卡
    接下来,我们将使用SD卡作为启动介质。首先,将SD卡插入SD卡读卡器,并连接到你的电脑上。

打开终端,运行以下命令,查找SD卡的设备节点:

$ sudo fdisk -l

这将列出你的电脑上所有的磁盘设备及其相关信息。你应该能够找到一个与SD卡相关的设备节点(例如/dev/sdb)。记下这个设备节点,我们将在后面的步骤中用到。

运行以下命令,卸载SD卡上的所有分区:

$ sudo umount /dev/sdb*

接下来,用以下命令创建一个新的分区表,并创建一个新的分区:

$ sudo fdisk /dev/sdb

使用n命令创建一个新的分区,并设置类型为Linux文件系统(使用t命令设置类型)。使用w命令保存分区表的更改。

接下来,格式化分区:

$ sudo mkfs.ext4 /dev/sdb1

然后,创建一个挂载点,并将分区挂载到这个挂载点:

$ sudo mkdir /mnt/sdcard
$ sudo mount /dev/sdb1 /mnt/sdcard
  1. 解压根文件系统
    将之前下载的根文件系统解压到SD卡上的挂载点:
$ sudo tar zxvf rootfs.tar.gz -C /mnt/sdcard
  1. 安装和配置引导加载程序
    接下来,我们需要安装和配置引导加载程序,以便在开发板上启动Linux系统。

首先,将SD卡从你的电脑上拔出,并插入到开发板上的SD卡槽中。

然后,通过USB转串口模块将开发板连接到你的电脑上。

打开终端,通过串口工具(例如minicom、picocom等)连接到开发板:

$ sudo minicom -D /dev/ttyUSB0

在串口窗口中,按下回车键进入命令行模式。

运行以下命令,查找开发板的设备节点:

$ fdisk -l

记下启动SD卡的设备节点的路径,我们将在后面的步骤中用到。

接下来,安装引导加载程序到SD卡:

$ sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdX bs=1024 seek=8

u-boot-sunxi-with-spl.bin替换为你实际下载的引导加载程序文件的路径,将/dev/sdX替换为启动SD卡的设备节点的路径。

然后,拔出SD卡,并将其重新插入开发板。

  1. 配置Linux内核
    现在,我们将配置Linux内核,以便在开发板上正确启动。

首先,运行以下命令,将内核映像文件复制到启动SD卡的/mnt/sdcard目录下:

$ sudo cp zImage /mnt/sdcard/boot

zImage替换为你实际下载的内核映像文件的路径。

然后,运行以下命令,将设备树文件复制到启动SD卡的/mnt/sdcard/boot目录下:

$ sudo cp sun8i-h3-orangepi-one.dtb /mnt/sdcard/boot

sun8i-h3-orangepi-one.dtb替换为你实际下载的设备树文件的路径。

接下来,打开启动SD卡的/mnt/sdcard/boot目录,并创建一个名为boot.cmd的文本文件。

将以下内容添加到boot.cmd文件中:

setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p1 rootwait panic=10
fatload mmc 0:1 0x4000000 zImage
fatload mmc 0:1 0x42000000 sun8i-h3-orangepi-one.dtb
bootz 0x4000000 - 0x42000000

sun8i-h3-orangepi-one.dtb替换为你实际下载的设备树文件的文件名。

保存并关闭boot.cmd文件。

接下来,运行以下命令,将boot.cmd编译成二进制文件:

$ sudo mkimage -C none -A arm -T script -d boot.cmd boot.scr

然后,将boot.scr文件复制到启动SD卡的/mnt/sdcard/boot目录下:

$ sudo cp boot.scr /mnt/sdcard/boot

最后,卸载SD卡,并将其插入到开发板上。

  1. 开启开发板并启动Linux系统
    最后,我们将开启开发板并启动Linux系统。

将USB键盘和鼠标(如果有)连接到开发板上,并将HDMI显示器(如果有)连接到开发板上。

然后,按下开发板上的电源按钮,开启开发板。

在启动过程中,你应该能够在HDMI显示器上看到Linux系统的启动信息。

如果一切正常,Linux系统将成功启动,并且你可以在HDMI显示器上看到一个登录提示符。

输入默认的用户名和密码,或者根据你的系统设置输入正确的用户名和密码,进入Linux系统的命令行界面。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux系统
    +关注

    关注

    4

    文章

    589

    浏览量

    27289
  • 软件
    +关注

    关注

    69

    文章

    4677

    浏览量

    87059
  • SD
    SD
    +关注

    关注

    1

    文章

    161

    浏览量

    33619
  • arm开发板
    +关注

    关注

    1

    文章

    49

    浏览量

    16289
收藏 人收藏

    评论

    相关推荐

    ARM LINUX系统开发

    的文字描述了LINUX的发展历史和ARM当前的几种主流芯片系列,1/4的文字,详细翻译或者抄录ARM汇编指令的使用方法,以及硬件架构。阅读这些资料,我估计1个月你也不知道如何动手去做实验;有些
    发表于 12-02 19:39

    EP9315 ARM评估开发板

    关键词:9315开发板 ARM开发板 EP9315ARM芯片规格:嵌入式工业计算机结构,采用 Cirrus LOGIC EP9315处理器,主频200MHz,自带2D图形加速器,浮点运
    发表于 12-16 15:25 936次阅读

    “黑色经典”系列之《嵌入式LINUX系统开发技术详解-基于ARM

    本章描述了ARM体系结构和ARM LINUX的发展,介绍了几种应用LINUX的典型ARM处理器和开发板
    发表于 02-28 13:18 165次下载
    “黑色经典”系列之《嵌入式<b class='flag-5'>LINUX</b><b class='flag-5'>系统开发</b>技术详解-基于<b class='flag-5'>ARM</b>》

    嵌入式开发板_iTOP-4412开发板linux系统存储空间

    [入式开发板]4412开发板linux 系统存储空间的修改
    发表于 02-29 16:58 13次下载

    arm开发板哪个好_如何选择arm开发板

    本文主要介绍的就是arm开发板哪个好,怎么样来选择开发板,一起来了解一下。
    发表于 12-09 11:04 8762次阅读

    拒绝开发板, 用 SkyEye 就可以模拟 ARM Linux

    对于希望学习 ARM 汇编的同学而言, 购买 ARM 开发板进行板上实测无疑是一个有效的方法,不过购买 ARM 开发板需要一笔费用,而且每次
    的头像 发表于 03-28 09:07 1.1w次阅读

    如何使用ARM开发板Linux嵌入式系统设计一个智能点菜系统

    本课题设计是以ARM开发板搭载Linux嵌入式系统为核心,使用QT编程制作GUI点菜终端,用LCD屏显示菜单信息,并可以通过触摸屏按钮实现点菜,换台,查询已点菜和结账等常用服务功能。通
    发表于 11-29 08:00 15次下载
    如何使用<b class='flag-5'>ARM</b><b class='flag-5'>开发板</b>和<b class='flag-5'>Linux</b>嵌入式<b class='flag-5'>系统</b>设计一个智能点菜<b class='flag-5'>系统</b>

    arm开发板能干什么_arm开发板用什么语言

    ARM开发板,即以英国ARM(Advanced RISC Machines)公司的内核芯片作为CPU,同时附加其他外围功能的嵌入式开发板,用以评估内核芯片的功能和研发各科技类企业的产品
    发表于 09-11 15:59 5607次阅读

    嵌入式ARM Linux开发板自启动,跳过输入root用户名和密码

    ARM Linux开发板自启动,跳过root和密码1、编译autologin.c程序。2、拷贝文件3、修改/etc/inittab4、同步文件系统并重启
    发表于 11-02 11:50 16次下载
    嵌入式<b class='flag-5'>ARM</b> <b class='flag-5'>Linux</b><b class='flag-5'>开发板</b>自启动,跳过输入root用户名和密码

    基于迅为2K1000开发板龙芯处理器安装 Linux系统到固态硬盘

    基于迅为2K1000开发板龙芯处理器安装Linux系统到固态硬盘硬件:迅为2K1000开发板固态硬盘LS2K1000龙芯处理器支持SATA接
    的头像 发表于 12-14 15:16 1101次阅读
    基于迅为2K1000<b class='flag-5'>开发板</b>龙芯处理器<b class='flag-5'>安装</b> <b class='flag-5'>Linux</b><b class='flag-5'>系统</b>到固态硬盘

    fpga开发板linux开发板区别

    (Field-Programmable Gate Array)是一种可编程逻辑器件,它可以通过编程改变硬件逻辑电路的功能和结构。FPGA采用了可编程的门极,可以根据需要重新配置内部电路,从而实现不同的功能和逻辑关系。而Linux开发板则是一种嵌入式计算机平台,其核心是
    的头像 发表于 02-01 17:09 1984次阅读

    linux开发板和单片机开发的区别

    硬件架构 Linux开发板和单片机开发在硬件架构上有很大的区别。Linux开发板通常基于ARM
    的头像 发表于 08-30 15:30 527次阅读

    linux开发板如何编译curl

    Linux开发板上编译 curl 库通常涉及到几个步骤,包括准备开发环境、下载源代码、配置编译选项以及执行编译和安装过程。以下是一个基本的指南,帮助你在
    的头像 发表于 08-30 15:33 401次阅读

    linux开发板与树莓派的区别

    定义和用途 Linux开发板Linux开发板是一种基于Linux操作系统的嵌入式
    的头像 发表于 08-30 15:34 565次阅读

    嵌入式linux开发板芯片的工作原理

    嵌入式Linux开发板是一种基于Linux操作系统的嵌入式系统开发平台,它广泛应用于工业控制、智能家居、智能交通、医疗设备等领域。 嵌入式
    的头像 发表于 09-02 09:07 288次阅读