如何从 Raspberry PI 3 中选定的分区启动?

如何从 Raspberry PI 3 中选定的分区启动?

我对引导加载程序了解不多。我在更新 SD 卡中的映像时遇到了一些问题。我有一台树莓派,我想在 SD 卡中创建两个分区,这样其中一个分区保存正在运行的映像,另一个分区保存备份映像。例如,如果我想更新映像,我会在一个分区中执行此操作,如果成功,则切换到该分区,否则它会回滚到上一个正在运行的映像。现在,我如何根据需要从特定映像启动?有没有关于 Linux 环境/RaspberryPI 3 中的引导加载程序的好教程或好起点?非常感谢!

答案1

警告:玩弄启动文件非常危险,可能会导致驱动器无法启动。确保备份文件在执行此操作之前,请先从 SD 卡中

程序:

  • 首先从当前新创建的可启动 SD 卡启动,因为 Raspbian 会执行一些初始化步骤,例如扩展文件系统、编辑启动文件等。

  • SD 卡上现在应该有两个分区,一个是根分区/boot,另一个是/根分区。然后创建第三个分区(ext4)。递归复制所有文件具有权限 从第二个根分区到新创建的分区。

  • 现在到了棘手的部分。我们必须指示内核以 root 身份挂载我们新创建的分区。为此,/boot/cmdline.txt在文本编辑器中打开文件,将此字符串替换root=PARTUUID=6c586e13-02为此root=/dev/mmcblk0p3mmcblk0p3表示第 0 个块的第 3 个分区多媒体卡 (MMC)又名 SD 卡。 root定义根文件系统的位置。请参阅Raspberry Pi 内核命令行 了解更多信息。

  • 或者,编辑该/etc/fstab文件。

PARTUUID=6c586e13-02  /  ext4  defaults,noatime  0  1

/dev/mmcblk0p3  /  ext4  defaults,noatime  0  1

相关内容