Skip to content

Commit 6272af6

Browse files
authored
Merge pull request #795 from EESN-W/e54c
feat: add e54c nvme boot tutorial
2 parents 2581e00 + a4170c6 commit 6272af6

File tree

20 files changed

+598
-1
lines changed

20 files changed

+598
-1
lines changed
Lines changed: 302 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,302 @@
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>

docs/e/e54c/getting-started/install-os/maskrom/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
sidebar_position: 1
33
---
44

5-
# 安装系统到EMMC
5+
# 安装系统到 EMMC
66

77
<DocCardList />

0 commit comments

Comments
 (0)