Raspberry Pi OS (原称Raspbian)在2020年8月20日的新版本中,直接更新了eeprom (pieeprom-2020-06-15.bin),现在可以直接使用Raspberry Pi Imager写入Raspberry Pi OS,就可以直接用USB启动系统,再无需其他操作。
检查是否支持直接USB启动,可以输入vcgencmd bootloader_config,如果输出中有BOOT_ORDER=0xf41,即表示可以直接USB启动。


树莓派4B使用了全新的EEPROM方案启动系统,而非之前的GPU启动系统,导致此前从USB启动系统的方法失效了。一个折中的方案是热迁移,即先使用SD卡启动,并将系统实时转移到USB硬盘上,但是操作复杂。最近树莓派基金会更新了EEPROM,其中一个重要的改动就是支持了USB启动,现在可以原生SUB启动系统了,io性能也得到了巨大提升。教程如下:

1.首先需要一个装有Raspberry PI OS的SD卡,进入系统并使用以下命令更新:

apt update -y
apt full-upgrade -y

2.编辑EEPROM文件/etc/default/rpi-eeprom-update,可以使用任意你所熟悉的编辑器。将它从不稳定版本改为稳定版,即critical改成stable

FIRWARE_RELEASE_STATUS="stable"

3.更改了EEPROM文件之后对其进行更新,待安装结束后重启系统切换到稳定版,命令如下。

rpi-eeprom-update -d -a
reboot

2020-08-24 145049.png

4.等重启完成,进入系统,使用以下命令检查是否进入了稳定版:

vcgencmd bootloader_version

注意发行的时间,第一个稳定版是7月15号,显示的时间一定晚于这个时间。
2020-08-24 145652.png

5.此时,将USB硬盘/U盘制作为系统盘,可以选择迁移原先SD卡的数据,也可以直接重新制作,因为USB设备的不同,以防万一,推荐全新制作而非迁移。以下教程将按照全新制作进行讲解。
使用Raspberry Pi Imager将Raspberry Pi OS写入到USB硬盘/U盘中,结束后将出现一个/boot分区。将之前SD卡系统中/boot分区下的所有.dat.elf文件复制到新的USB硬盘/U盘的/boot分区中。目前一共有16个文件,如下标注出的。
2020-08-24 151011.png

6.关机,移除SD卡,将USB硬盘/U盘连接上。重新插上电源,系统在大约2分钟之后就会成功启动。
测试使用的是一块1T的机械硬盘,采用dd测试io性能,达到了121M/S,比sd卡性能提高了不知道多少倍。如果使用的是SSD,性能将进一步增加,尤其是4K,但是受限于USB3.1的性能限制,最高大概为500M/S的速度。

dd if=/dev/zero of=test bs=1M count=1000

2020-08-24 154336.png

标签: linux, 树莓派, raspberry pi, USB启动

添加新评论