云计算百科
云计算领域专业知识百科平台

【嵌入式 Linux 实战 1】Ubuntu 环境搭建 + 目录结构详解:嵌入式开发入门第一步

【嵌入式 Linux 实战 1】Ubuntu 环境搭建 + 目录结构详解:嵌入式开发入门第一步

大家好,我是学嵌入式的小杨同学。嵌入式开发离不开 Linux 环境 —— 无论是驱动开发、交叉编译,还是程序调试,Linux 系统的稳定性和开源特性都使其成为首选。今天就结合资料,先带大家搞定 Ubuntu 系统的环境搭建,再吃透 Linux 的目录结构和路径规则,为后续嵌入式开发打下基础。

一、先搞懂:为什么嵌入式开发首选 Linux?

在开始搭建环境前,先明确 Linux 的核心优势,理解 “为什么嵌入式开发离不开它”:

  • 开源免费:无需付费即可使用全部功能,支持定制化开发(如裁剪内核适配嵌入式硬件);
  • 多用户多任务:支持同时运行多个程序、多个用户操作,适合嵌入式设备的多任务场景;
  • 完全兼容 POSIX 标准:提供统一的编程接口,编写的程序可轻松移植到其他 POSIX 兼容系统(如 Unix);
  • 一切皆文件:硬件设备、进程、网络接口等都以文件形式管理,简化嵌入式驱动开发;
  • 轻量级可裁剪:可根据嵌入式硬件资源(如内存、Flash)裁剪系统组件,适配单片机、开发板等资源受限设备。
  • 二、Ubuntu 20.04 环境搭建(重点步骤)

    嵌入式开发中,Ubuntu 是最常用的桌面版 Linux 系统,以下是基于 Ubuntu 20.04 的完整搭建流程:

    1. 系统镜像下载

    • 下载地址:Ubuntu 20.04 官方镜像
    • 推荐版本:ubuntu-20.04.6-desktop-amd64.iso(64 位桌面版,长期支持 LTS 版本,稳定性强)
    • 下载方式:支持直接下载、BitTorrent 下载,根据网络情况选择即可。

    2. 安装方式选择

    (1)虚拟机安装(新手首选)
    • 工具:VMware Workstation、VirtualBox 等;
    • 核心步骤:
    • 新建虚拟机,选择 “典型安装”,导入下载的 Ubuntu 镜像;
    • 配置虚拟机内存(建议≥2GB)、硬盘(建议≥20GB)、网络适配器(默认 NAT 模式即可上网);
    • 启动虚拟机,按照向导完成系统安装(设置用户名、密码、时区等);
    • 安装完成后,安装 VMware Tools(增强鼠标、文件共享等功能)。
    (2)物理机安装(进阶用户)
    • 适合场景:需要更好的性能,或开发板需直接与物理机连接;
    • 注意事项:需提前备份物理机数据,通过 U 盘启动盘安装,分区时建议单独划分/home目录(存储用户数据)。

    3. 网络问题排查(嵌入式开发必备)

    虚拟机联网是嵌入式开发的基础(如在线安装工具、开发板网络通信),常见问题及解决:

    (1)无网络适配器(缺失 VMnet0)
    • 问题现象:虚拟机无网络连接选项,提示 “没有未桥接的主机网络适配器”;
    • 解决步骤:
    • 打开 VMware 的 “虚拟网络编辑器”;
    • 点击 “添加网络”,新建 VMnet0(桥接模式);
    • 选择桥接至主机的物理网卡(如 WiFi、有线网卡),应用设置后重启虚拟机。
    (2)能识别适配器但无法上网
    • 解决步骤:
    • 断开虚拟机网络连接,重新连接;
    • 若仍无效,执行命令重置网络服务:

      bash

      sudo service NetworkManager stop # 停止网络服务
      sudo rm /var/lib/NetworkManager/NetworkManager.state # 删除网络状态文件
      sudo service NetworkManager start # 重启网络服务

    (3)网络图标空心(无法桥接)
    • 解决步骤:
    • 打开 “虚拟网络编辑器”,确认桥接的主机网卡正确;
    • 在虚拟机右下角右键点击 “网络适配器”,选择 “设置”,重新指定桥接模式对应的物理网卡;
    • 断开并重新连接网络。

    4. 基础配置(更新源 + 必备工具)

    安装完成后,需配置系统以适配嵌入式开发:

    (1)更换国内源(加速软件安装)
    • 问题:默认国外源下载速度慢,易超时;
    • 操作:
    • 打开 “软件和更新”,选择 “下载自”→“其他站点”;
    • 选择国内镜像源(如阿里云、清华大学源),点击 “选择服务器”;
    • 执行命令更新源列表:

      bash

      sudo apt-get update

    (2)安装必备工具

    bash

    运行

    # 安装网络工具(ifconfig等)
    sudo apt install net-tools
    # 安装编译工具(gcc、make等)
    sudo apt install build-essential
    # 安装文本编辑器(vim)
    sudo apt install vim
    # 安装文件压缩工具
    sudo apt install unzip zip

    三、Linux 核心:目录结构与路径规则

    Linux 的目录结构是 “树状结构”,最顶层为根目录(/),所有文件和目录都挂载在根目录下,嵌入式开发必须熟悉关键目录的作用。

    1. 核心目录详解(嵌入式开发高频使用)

    目录路径核心作用嵌入式开发关联
    / 根目录,所有目录的顶层 所有文件和目录的起点
    /boot 系统启动文件(Grub 引导器、内核镜像) 嵌入式内核编译后需放入类似目录
    /dev 设备文件(如串口/dev/ttyUSB0、硬盘/dev/sda) 开发板通过 USB 转串口连接后,在此目录识别设备
    /home/用户名 普通用户的主目录 存储嵌入式项目代码、工具链
    /bin 系统命令(如ls、cd) 嵌入式交叉编译工具可放入此目录(或/usr/bin)
    /etc 系统配置文件(网络、用户配置) 配置 SSH、网络参数,方便开发板远程连接
    /usr 应用程序目录(/usr/bin存放用户命令,/usr/lib存放库文件) 安装交叉编译工具链、开发软件(如 VSCode)
    /mnt 临时挂载目录 挂载 U 盘、开发板的文件系统(如 NFS 挂载)
    /var 动态数据目录(日志、临时文件) 查看嵌入式程序运行日志、编译日志

    2. 路径规则(嵌入式开发命令行必备)

    Linux 路径分为两种,使用场景不同:

    (1)绝对路径
    • 定义:以根目录(/)为起点的完整路径,如/home/zcy/project;
    • 优势:无论当前在哪个目录,都能准确访问目标文件 / 目录;
    • 适用场景:编写脚本、编译配置文件时(避免路径错误)。
    (2)相对路径
    • 定义:以当前目录为起点的路径,如../project(上一级目录的 project 文件夹);
    • 常用符号:
      • .:表示当前目录;
      • ..:表示上一级目录;
      • ~:表示用户主目录(等价于/home/用户名);
    • 优势:路径更简洁,适合日常操作(如切换到当前目录下的子目录)。

    四、总结:环境搭建核心要点

  • 新手优先选择 “虚拟机安装 Ubuntu 20.04”,降低入门难度;
  • 网络配置是关键,确保能正常上网(后续安装工具、开发板通信需依赖);
  • 熟悉核心目录作用,避免后续开发时找不到文件(如设备文件在/dev,项目代码在/home);
  • 更换国内源 + 安装必备工具,为后续嵌入式开发(如编译、调试)做好准备。
  • 下一篇博客,我会带大家掌握 Linux 嵌入式开发的高频命令(文件操作、用户管理、权限配置等),以及主函数传参的实战用法,敬请关注!

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 【嵌入式 Linux 实战 1】Ubuntu 环境搭建 + 目录结构详解:嵌入式开发入门第一步
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!