|
| 1 | +--- |
| 2 | +sidebar_position: 2 |
| 3 | +--- |
| 4 | + |
| 5 | +# 安装系统到 NVME |
| 6 | + |
| 7 | +## 概览 |
| 8 | + |
| 9 | +Radxa E54C 通过 NVME 启动系统需要先通过MicroSD 卡或 eMMC 启动系统,然后通过 `rsetup` 工具刷入 SPI Flash,最后通过 `dd` 命令写入系统镜像到 NVME 设备 |
| 10 | + |
| 11 | +教程以 MicroSD 卡启动系统作为演示。eMMC 系统安装方式没有区别。 |
| 12 | + |
| 13 | +## 1. 启动系统 |
| 14 | + |
| 15 | +可以参考[快速上手](../quick-start)教程,使系统通过 MicroSD 卡启动。 |
| 16 | + |
| 17 | +确认 Radxa E54C 系统成功启动,关机并断开 Radxa E54C 电源,然后将 NVME 插入 Radxa E54C 主板的 M.2 接口。 |
| 18 | + |
| 19 | +:::tip |
| 20 | +MicroSD 卡的作用是相当于 x86 系统的启动盘,目的是进入一个可以安装系统的 Linux 环境,并拿到 SPI Flash 的 Image 文件 - `spi.img`,然后将 `spi.img` 通过 `rsetup` 工具刷到 SPI Flash 中 |
| 21 | +::: |
| 22 | + |
| 23 | +## 2. 刷入 SPI Flash |
| 24 | + |
| 25 | +使用系统配置工具 `rsetup` 将 `spi.img` 刷入 SPI Flash 中。 |
| 26 | + |
| 27 | +### 2.1 更新 rsetup |
| 28 | + |
| 29 | +:::tip |
| 30 | +rsetup 工具使用指南:可能会因为版本界面有微小差异,请以实际情况为准 |
| 31 | + |
| 32 | +- 确认选择 : 按 `Enter` |
| 33 | +- 取消选择 : 按 `ESC` |
| 34 | +- 切换选型 : 按方向键控制 |
| 35 | +- 多选界面 : 按 `Space` 选择,按 `Enter` 确认选择 |
| 36 | + |
| 37 | +::: |
| 38 | + |
| 39 | +打开系统命令行,运行 `rsetup` 工具进行更新。 |
| 40 | + |
| 41 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 42 | +``` |
| 43 | +rsetup |
| 44 | +``` |
| 45 | +</NewCodeBlock> |
| 46 | + |
| 47 | +<div style={{textAlign: 'center'}}> |
| 48 | + rsetup 首页界面 |
| 49 | + <img src="/img/e/e54c/rsetup-01.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 50 | +</div> |
| 51 | + |
| 52 | +1. 更新系统 |
| 53 | +依次选择 `System` → `System Update` : |
| 54 | +<div style={{textAlign: 'center'}}> |
| 55 | + <img src="/img/e/e54c/rsetup-02.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 56 | +</div> |
| 57 | +选择 `yes` 继续操作,然后按照系统提示完成剩下操作: |
| 58 | +<div style={{textAlign: 'center'}}> |
| 59 | + <img src="/img/e/e54c/rsetup-03.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 60 | +</div> |
| 61 | +完成所有操作后重启系统。 |
| 62 | + |
| 63 | +### 2.2 使能 SPI Flash 设备 |
| 64 | + |
| 65 | +为防止 SPI Flash 中存放的 bootloader 在平时使用被误写入,默认 SPI Flash 设备是关闭的。通过以下方式使能 SPI Flash 设备。 |
| 66 | + |
| 67 | +选择 `Overlays` → `Manage Overlays` : |
| 68 | +<div style={{textAlign: 'center'}}> |
| 69 | + <img src="/img/e/e54c/rsetup-04.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 70 | +</div> |
| 71 | +<div style={{textAlign: 'center'}}> |
| 72 | + <img src="/img/e/e54c/rsetup-05.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 73 | + <img src="/img/e/e54c/rsetup-06.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 74 | +</div> |
| 75 | + |
| 76 | +选择 `Enable SPI Flash` 选项,按空格出现 `*` 符号说明勾选使能 SPI Flash ,然后按 `Enter` 确认操作: |
| 77 | + |
| 78 | +<div style={{textAlign: 'center'}}> |
| 79 | + <img src="/img/e/e54c/rsetup-07.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 80 | +</div> |
| 81 | +按照系统提示完成剩下操作: |
| 82 | +<div style={{textAlign: 'center'}}> |
| 83 | + <img src="/img/e/e54c/rsetup-08.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 84 | +</div> |
| 85 | +<div style={{textAlign: 'center'}}> |
| 86 | + <img src="/img/e/e54c/rsetup-09.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 87 | +</div> |
| 88 | +完成所有操作后重启系统。 |
| 89 | + |
| 90 | +### 2.3 刷入 SPI Flash |
| 91 | + |
| 92 | +重启系统后,再次打开系统配置工具 `rsetup`。 |
| 93 | + |
| 94 | +选择 `System` → `Bootloader Management` → `Update SPI Bootloader` : |
| 95 | +<div style={{textAlign: 'center'}}> |
| 96 | + <img src="/img/e/e54c/rsetup-10.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 97 | +</div> |
| 98 | +<div style={{textAlign: 'center'}}> |
| 99 | + <img src="/img/e/e54c/rsetup-11.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 100 | +</div> |
| 101 | +<div style={{textAlign: 'center'}}> |
| 102 | + <img src="/img/e/e54c/rsetup-12.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 103 | +</div> |
| 104 | +选择安装的Bootloader文件,若选择的Bootloader有多个选项,优先选择带有spi后缀的选项: |
| 105 | +<div style={{textAlign: 'center'}}> |
| 106 | + <img src="/img/e/e54c/rsetup-13.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 107 | +</div> |
| 108 | +按照系统提示完成剩下操作: |
| 109 | +<div style={{textAlign: 'center'}}> |
| 110 | + <img src="/img/e/e54c/rsetup-14.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 111 | +</div> |
| 112 | +完成所有操作后重启系统。 |
| 113 | + |
| 114 | +## 3. 写入系统镜像到 NVME |
| 115 | + |
| 116 | +完成刷入 SPI Flash 的操作后,我们可以查看系统是否识别 SPI Flash 和 NVME 设备。 |
| 117 | + |
| 118 | +### 3.1 检查设备 |
| 119 | + |
| 120 | +打开系统命令行, 使用 `lsblk` 命令检查系统是否识别到 NVME 设备。 |
| 121 | + |
| 122 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 123 | +``` |
| 124 | +lsblk |
| 125 | +``` |
| 126 | +</NewCodeBlock> |
| 127 | + |
| 128 | +- 若 Linux 系统识别出 SPI Flash 设备, 通常会被识别成 `mtdblock*` |
| 129 | + |
| 130 | +- 若 Linux 系统识别出 NVME 设备, 通常会被识别成 `nvme*n*` |
| 131 | + |
| 132 | +使用 `lsblk` 输出的示例信息: |
| 133 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 134 | + |
| 135 | +``` |
| 136 | +NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS |
| 137 | +mtdblock0 31:0 0 16M 0 disk |
| 138 | +mmcblk1 179:0 0 58G 0 disk |
| 139 | +├─mmcblk1p1 179:1 0 16M 0 part |
| 140 | +├─mmcblk1p2 179:2 0 300M 0 part |
| 141 | +└─mmcblk1p3 179:3 0 57.6G 0 part / |
| 142 | +zram0 253:0 0 3.9G 0 disk [SWAP] |
| 143 | +nvme0n1 259:0 0 119.2G 0 disk |
| 144 | +├─nvme0n1p1 259:1 0 16M 0 part /config |
| 145 | +├─nvme0n1p2 259:2 0 300M 0 part /boot/efi |
| 146 | +└─nvme0n1p3 259:3 0 118.9G 0 part |
| 147 | +``` |
| 148 | + |
| 149 | +</NewCodeBlock> |
| 150 | + |
| 151 | +### 3.2 下载系统镜像 |
| 152 | + |
| 153 | +下载 Radxa E54C 的系统镜像文件到本地:可以直接使用 `wget` 命令下载文件到当前目录,其中网址链接可以进入[资源汇总下载](../../download)复制。 |
| 154 | + |
| 155 | +:::tip |
| 156 | +你也可以通过其他方式将系统镜像文件复制到 Radxa E54C 上,比如通过 FTP、SCP 等方式 |
| 157 | +::: |
| 158 | + |
| 159 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 160 | +``` |
| 161 | +# 安装 wget |
| 162 | +sudo apt-get install wget |
| 163 | +
|
| 164 | +# 下载系统镜像文件 |
| 165 | +
|
| 166 | +wget https://github.com/radxa-build/radxa-e54c/releases/download/rsdk-b2/radxa-e54c_bookworm_cli_b2.output.img.xz |
| 167 | +
|
| 168 | +``` |
| 169 | +</NewCodeBlock> |
| 170 | + |
| 171 | +- wget : 下载文件,后面添加下载链接 |
| 172 | + |
| 173 | +### 3.3 写入系统镜像到 NVME |
| 174 | + |
| 175 | +使用命令将压缩的系统镜像解压并直接写入到 NVME 设备。 |
| 176 | + |
| 177 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 178 | +``` |
| 179 | +
|
| 180 | +sudo xzcat ~/radxa-e54c_bookworm_cli_b2.output.img.xz | sudo dd of=/dev/nvme0n1 bs=1M status=progress |
| 181 | +
|
| 182 | +``` |
| 183 | +</NewCodeBlock> |
| 184 | + |
| 185 | +- xzcat : 解压 xz 格式的系统镜像文件 |
| 186 | +- dd : 复制并写入到 NVME 设备(⚠️注意:使用dd命令时请确认设备名称,错误的设备名可能导致数据丢失) |
| 187 | +- of=/dev/nvme0n1 : 指定写入的设备为 nvme0n1 |
| 188 | +- bs=1M : 指定写入的块大小为 1M,提高写入速度 |
| 189 | +- status=progress : 显示写入进度,让您了解写入状态 |
| 190 | + |
| 191 | +### 3.4 验证写入结果 |
| 192 | + |
| 193 | +写入完成后,您可以验证NVMe中的分区表是否正确创建: |
| 194 | + |
| 195 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 196 | +``` |
| 197 | +sudo fdisk -l /dev/nvme0n1 |
| 198 | +``` |
| 199 | +</NewCodeBlock> |
| 200 | + |
| 201 | +正确写入后,应该会看到类似以下的分区信息: |
| 202 | +<div style={{textAlign: 'center'}}> |
| 203 | + <img src="/img/e/e54c/rsetup-16.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 204 | +</div> |
| 205 | + |
| 206 | +## 4. 从NVMe启动系统 |
| 207 | + |
| 208 | +### 4.1 重启准备 |
| 209 | + |
| 210 | +完成以上操作后,请按以下步骤操作: |
| 211 | + |
| 212 | +1. 关闭系统:`sudo shutdown -h now` |
| 213 | +2. 断开 Radxa E54C 与电源 |
| 214 | +3. 移除 MicroSD 卡 |
| 215 | +4. 重新连接电源 |
| 216 | +5. 等待系统从NVMe启动 |
| 217 | + |
| 218 | +### 4.2 验证NVMe启动 |
| 219 | + |
| 220 | +系统启动后,可通过以下方式验证系统是否成功从NVMe启动: |
| 221 | + |
| 222 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 223 | +``` |
| 224 | +lsblk |
| 225 | +df -h |
| 226 | +``` |
| 227 | +</NewCodeBlock> |
| 228 | + |
| 229 | +如果您看到 `/dev/nvme0n1p3` 被挂载为根目录 `/`,则表示系统已成功从NVMe启动。 |
| 230 | + |
| 231 | +<div style={{textAlign: 'center'}}> |
| 232 | + <img src="/img/e/e54c/rsetup-15.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 233 | +</div> |
| 234 | + |
| 235 | +### 4.3 常见问题及解决方案 |
| 236 | + |
| 237 | +:::tip |
| 238 | +如果在启动过程中遇到问题,请尝试以下解决方案: |
| 239 | + |
| 240 | +- **系统无法启动**: |
| 241 | + - 重新插入MicroSD卡,启动系统 |
| 242 | + - 尝试更换刷入 SPI Flash 的 Bootloader 文件选项(优先选择最新版本) |
| 243 | + - 检查 M.2 接口是否连接良好,可尝试重新插拔NVMe |
| 244 | + |
| 245 | +- **系统可以启动但无法登录**: |
| 246 | + - 默认用户名:`radxa`,密码:`radxa` |
| 247 | + - 如密码错误,可重新使用MicroSD卡启动,然后重新下载并写入系统镜像 |
| 248 | +::: |
| 249 | + |
| 250 | +## 5. 后续步骤 |
| 251 | + |
| 252 | +成功从NVMe启动系统后,您可以进行以下操作: |
| 253 | + |
| 254 | +### 5.1 系统更新 |
| 255 | + |
| 256 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 257 | +``` |
| 258 | +sudo apt update && sudo apt upgrade |
| 259 | +``` |
| 260 | +</NewCodeBlock> |
| 261 | + |
| 262 | + |
| 263 | +### 5.2 备份系统 |
| 264 | + |
| 265 | +定期备份重要数据,可使用`dd`或`rsync`命令 |
| 266 | + |
| 267 | + |
| 268 | +### 5.4 性能测试 |
| 269 | + |
| 270 | +- 测试读取速度 |
| 271 | + |
| 272 | +测试读取速度(1GB 数据)。 |
| 273 | + |
| 274 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 275 | +``` |
| 276 | +sudo dd if=/dev/nvme0n1 of=/dev/null bs=1M count=1024 iflag=direct |
| 277 | +``` |
| 278 | +</NewCodeBlock> |
| 279 | + |
| 280 | +- 检查NVMe温度 |
| 281 | + |
| 282 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 283 | +``` |
| 284 | +# 安装 nvme-cli |
| 285 | +sudo apt install nvme-cli |
| 286 | +
|
| 287 | +# 检查温度 |
| 288 | +sudo nvme smart-log /dev/nvme0n1 | grep "temperature" |
| 289 | +``` |
| 290 | +</NewCodeBlock> |
| 291 | + |
| 292 | +- 查看NVMe设备的详细信息和健康状态 |
| 293 | + |
| 294 | +<NewCodeBlock tip="radxa@radxa-e54c$" type="host"> |
| 295 | +``` |
| 296 | +sudo nvme list |
| 297 | +``` |
| 298 | +</NewCodeBlock> |
| 299 | + |
| 300 | +<div style={{textAlign: 'center'}}> |
| 301 | + <img src="/img/e/e54c/rsetup-17.webp" style={{width: '100%', maxWidth: '1200px'}} /> |
| 302 | +</div> |
0 commit comments