当前位置:首页>Linux>嵌入式 Linux 实战:4 条命令搞定板子启动方式

嵌入式 Linux 实战:4 条命令搞定板子启动方式

  • 2026-09-09 14:33:58
嵌入式 Linux 实战:4 条命令搞定板子启动方式

今天给大家分享一套超实用的 ARM 板级排查方法:只靠 4 条 Linux 命令,就能确认板子内核从哪启动、根文件系统在哪、到底是 eMMC 还是 SD 卡。内容全是实战验证,可直接写进笔记或公众号。

一、实战背景

在调试串口驱动、修改设备树、升级系统时,必须先搞清楚:板子从哪里启动?存储是 eMMC 还是 SD 卡?本文基于真实 ARM 嵌入式平台验证,命令可直接复用。

二、4 条核心判断命令

1. cat /proc/cmdline      # 查看内核启动参数

2. lsblk                  # 查看块设备与分区

3. cat /sys/block/mmcblk1/device/type   # 判断是eMMC还是SD

4. findmnt /              # 查看根目录真实挂载点

三、实战输出与逐行分析

1. 查看内核启动参数

/proc/cmdline

输出:console=ttyS0,115200 earlycon=uart8250,mmio,0x21c0500 root=PARTUUID=ecfdc711-02 rw rootwait ...

关键信息:

• 控制台串口:ttyS0,波特率 115200

• 串口驱动:uart8250/ns16550(标准工业串口)

• 根文件系统:通过PARTUUID指定分区挂载

2. 查看存储设备结构

lsblk

输出:

mmcblk1      179:0    0  7.3G  0 disk

|-mmcblk1p1  179:1    0  170M  0 part /run/media/mmcblk1p1

`-mmcblk1p2  179:2    0    7G  0 part /

mmcblk1boot0 179:32   0    8M  1 disk

mmcblk1boot1 179:64   0    8M  1 disk

关键判断:

• 出现mmcblk1boot0、mmcblk1boot1

• 这是 eMMC 独有特征,SD 卡绝对没有

3. 判断是 eMMC 还是 SD 卡

 /sys/block/mmcblk1/device/type

输出:

MMC

结论:

• 输出MMC → eMMC

• 输出SD → SD 卡

4. 查看根目录真实挂载点

findmnt /

输出:

TARGET SOURCE         FSTYPE OPTIONS

/      /dev/mmcblk1p2 ext4   rw,relatime

重点说明:

• df -h /显示/dev/root只是系统别名,不是真实设备

• findmnt /读取内核挂载信息,结果 100% 准确

• 根文件系统实际在/dev/mmcblk1p2

四、最终结论

1. 板子存储:eMMC,非 SD 卡

2. 启动方式:eMMC 本地启动

3. 内核从 eMMC boot 分区加载

4. 根文件系统挂载在/dev/mmcblk1p2

5. 调试串口:ttyS0,使用 8250/ns16550 驱动

五、通用判断流程

1. 看lsblk是否有boot0/boot1 → 有就是 eMMC

2. 看/sys/block/mmcblkX/device/type → MMC=eMMC

3. 用findmnt /确认根分区真实设备

4. 用/proc/cmdline核对启动参数与串口配置

这套方法适用于:ARM 嵌入式 Linux、工业网关、IoT 设备、机顶盒、ARM 开发板。

最新文章

随机文章