由于TF卡速写速度非常慢(大约20MB/s),是树莓派系统的一个性能瓶颈,对性能影响很大。如果能提升磁盘的读写速度,在密集IO的场景下,对树莓派系统的性能会有很大提升。
准备工作
- 树莓派4B
- TF卡
- U盘一个
树莓派4B已经支持USB3.0,下面的测试基于一款支持USB3.0的固态U盘:联想 128G TU100 Pro
速度测试
先看一下使用U盘启动后的速度测试:
1 | pi@raspberrypi:~ $ dd if=/dev/zero of=/tmp/output.img bs=4k count=256k |
从上面测试结果可以看出,写入速度大约200MB/s,读取速度超过500MB/s!
整体步骤
安装步骤其实非常简单:
- 安装树莓派系统到TF卡;
- 更新系统到最新版本;
- 更新系统固件
- 设置USB启动
- 把整个TF卡复制到U盘。
- 最后开机启动
- 磁盘分区(可选)
详细步骤
安装树莓派系统到TF卡
如果之前已经把系统安装到TF卡,这一步可以直接跳过,或者查看树莓派4B安装操作系统教程
更新系统到最新版本
执行以下命令更新系统,可能需要下载很久:
1 | sudo apt update |
更新系统固件
更新系统固件:
1 | sudo rpi-eeprom-update -d -a |
更新后,再执行sudo rpi-eeprom-update
查看固件版本,固件的更新日期应该是2020年9月之后的。
设置USB启动
进入树莓派设置:
1 | sudo raspi-config |
然后依次选择:6 Advanced Options
、 A6 Boot Order
、B1 USB Boot
。
最后保存设置(不用重启)。
把整个TF卡复制到U盘。
先把U盘插入树莓派,查看磁盘列表:
1 | sudo fdisk -l |
输出很多,关键部分如下:
1 | ... |
从容量可以看出,TF卡是/dev/mmcblk0
,U盘是/dev/sda
。接下来使用dd命令把整个TF卡拷贝到U盘:
1 | sudo dd if=/dev/mmcblk0 of=/dev/sda status=progress |
大概十多分钟后,就复制完成了。
开机启动
树莓派关机后,把TF卡拔下来,插上U盘,开机即可。
默认是使用TF卡启动,使用TF卡启动失败时才会使用USB启动,所以这里需要把TF卡拔掉。或者把TF卡格式化后,无法从TF卡启动时,也会使用USB启动。
磁盘分区
使用USB启动后,使用df -h
命令查看磁盘使用情况,发现只有16G:
1 | pi@raspberrypi:/ $ df -h |
这是因为使用dd
命令复制TF卡到U盘时,把分区表也复制过去了,所以显示的分区和TF卡一样。剩下的存储空间需要创建新分区、格式化、挂载后才能使用。具体步骤请参考其它教程。