1 ARM Installation ZH
CyberMind-FR edited this page 2026-04-06 09:47:07 +02:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

ARM 安装指南 - 通过 U-Boot

English | Français

本指南介绍如何在 ARM 开发板Marvell Armada上使用 U-Boot 将镜像从 USB 或 SD 卡刷写到 eMMC 来安装 SecuBox。

支持的开发板

开发板 SoC 内存 配置文件
ESPRESSObin v7 Armada 3720 1-2 GB secubox-lite
ESPRESSObin Ultra Armada 3720 1-4 GB secubox-lite
MOCHAbin Armada 7040 4 GB secubox-full

eMMC 存储限制

开发板 eMMC 最大镜像 默认值
ESPRESSObin v7 (无 eMMC) 仅支持 SD 卡
ESPRESSObin v7 (4GB) 4 GB 3.5 GB 使用 --size 3.5G
ESPRESSObin v7 (8GB) 8 GB 6 GB 4 GB
ESPRESSObin Ultra 8 GB 6 GB 4 GB
MOCHAbin 8 GB 6 GB 4 GB

注意事项:

  • 为数据分区和磨损均衡预留约 500MB-2GB 的空间
  • 对于 4GB eMMC 的开发板:使用 --size 3.5G 构建
  • MOCHAbin 可以使用 SATA/NVMe 进行更大容量的安装
  • gzwrite 需要内存来解压(约 350MB 缓冲区)

前提条件

  • 串口控制台适配器USB-TTL
  • 包含镜像的 USB 驱动器或 SD 卡
  • 串口终端软件:screenminicom 或 PuTTY

串口控制台设置

Baud rate:    115200
Data bits:    8
Parity:       None
Stop bits:    1
Flow control: None
# Linux
screen /dev/ttyUSB0 115200
# or
minicom -D /dev/ttyUSB0 -b 115200

准备启动介质

选项 AUSB 驱动器(推荐)

将 USB 驱动器格式化为 FAT32 或 ext4 分区并复制镜像:

# Download the image
wget https://github.com/CyberMind-FR/secubox-deb/releases/latest/download/secubox-espressobin-v7-bookworm.img.gz

# Mount USB drive (assuming /dev/sdb1)
sudo mount /dev/sdb1 /mnt

# Copy image
sudo cp secubox-espressobin-v7-bookworm.img.gz /mnt/

# Unmount
sudo umount /mnt

选项 BSecuBox Live USB

如果使用 SecuBox Live USB将镜像复制到持久化分区分区 4

# The persistence partition is already ext4
sudo mount /dev/sdX4 /mnt
sudo cp secubox-espressobin-v7-bookworm.img.gz /mnt/
sudo umount /mnt

U-Boot 刷写流程

1. 进入 U-Boot

连接串口控制台并启动开发板。按任意键停止自动启动:

Hit any key to stop autoboot:  0
=>

2. 初始化 USB

=> usb reset
resetting USB...
USB XHCI 1.00
scanning bus usb@58000 for devices... 2 USB Device(s) found
scanning usb for storage devices... 1 Storage Device(s) found

3. 验证存储设备

=> usb storage
  Device 0: Vendor: Kingston Rev:  Prod: DataTraveler 3.0
            Type: Removable Hard Disk
            Capacity: 29510.4 MB = 28.8 GB

4. 列出文件

对于 FAT32 分区(分区 1

=> ls usb 0:1
       314543223 secubox-espressobin-v7-bookworm.img.gz

对于 ext4 分区Live USB 上的分区 4

=> ls usb 0:4
       314543223 secubox-espressobin-v7-bookworm.img.gz

5. 刷写到 eMMC

# Set load address (needs ~350MB free RAM)
=> setenv loadaddr 0x1000000

# Load image from USB
# For FAT32 (partition 1):
=> load usb 0:1 $loadaddr secubox-espressobin-v7-bookworm.img.gz

# For ext4 (partition 4):
=> load usb 0:4 $loadaddr secubox-espressobin-v7-bookworm.img.gz

# Write to eMMC with automatic decompression
=> gzwrite mmc 1 $loadaddr $filesize

gzwrite 命令会解压并直接写入 eMMC。根据镜像大小此过程需要 2-5 分钟。

6. 配置启动顺序

# Set eMMC as primary boot device
=> setenv boot_targets "mmc1 mmc0 usb0"
=> saveenv
Saving Environment to SPI Flash... done

# Reboot
=> reset

替代方案:从 SD 卡刷写

如果镜像在 SD 卡而非 USB 上:

=> mmc dev 0                    # Select SD card
=> ls mmc 0:1                   # List files
=> setenv loadaddr 0x1000000
=> load mmc 0:1 $loadaddr secubox-espressobin-v7-bookworm.img.gz
=> gzwrite mmc 1 $loadaddr $filesize    # Write to eMMC

启动设备参考

设备 U-Boot 描述
SD 卡 mmc 0 microSD 卡槽
eMMC mmc 1 内置 eMMC安装目标
USB usb 0 USB 存储设备
SATA scsi 0 SATA 驱动器MOCHAbin

开发板特定说明

ESPRESSObin v7

  • eMMC:可选,如果没有可能需要从 SD 卡启动
  • 内存1GB 型号空间有限,使用 loadaddr 0x1000000
  • 网络eth0=WAN, lan0/lan1=LAN (DSA switch)

ESPRESSObin Ultra

  • eMMC:内置 8GB
  • 内存:最高 4GB
  • 网络:与 v7 相同

MOCHAbin

  • eMMC:内置 8GB
  • 内存4GB可以容纳更大的镜像
  • 网络:多个 10GbE + GbE 端口
  • SATA:也可以安装到 SATA 驱动器
# MOCHAbin: Flash to SATA instead of eMMC
=> scsi scan
=> gzwrite scsi 0 $loadaddr $filesize

故障排除

USB 未检测到

=> usb reset
=> usb tree        # Show USB device tree
=> usb info        # Detailed USB info

eMMC 未检测到

=> mmc list        # List MMC devices
=> mmc dev 1       # Select eMMC
=> mmc info        # Show eMMC info

加载失败(找不到文件)

=> ls usb 0        # List all partitions
=> ls usb 0:1      # Try partition 1
=> ls usb 0:2      # Try partition 2

内存不足

对于 1GB 的开发板,确保没有加载其他数据:

=> setenv loadaddr 0x1000000    # Use lower address

重置环境变量

=> env default -a
=> saveenv

检查当前环境变量

=> print                    # Show all variables
=> print boot_targets       # Show boot order
=> print loadaddr           # Show load address

安装后配置

刷写完成后,开发板会自动启动 SecuBox。

默认凭据

用户 密码
root secubox
secubox secubox

首要步骤

  1. 通过 SSH 连接:ssh root@<IP>
  2. 更改密码:passwd
  3. 访问 Web 界面:https://<IP>:8443

网络接口

开发板 WAN LAN
ESPRESSObin eth0 lan0, lan1
MOCHAbin eth0 eth1-eth4, sfp0-sfp1

另请参阅