将 OverlayFS 与 A/B 分区方案相结合

将 OverlayFS 与 A/B 分区方案相结合

我想知道是否可以将 OverlayFS 与 A/B 升级方案结合起来,并以完全仅 RO 的方式进行。这结合了一些技术,所以我不确定它是否可能或正确的位置

我所说的 A/B 分区方案是指我有两个可启动分区,那么升级包括升级非活动分区,然后进行切换。目前,这对我有用,但需要注意的是,我必须修改非活动分区 /etc/fstab。我这样做是为了修改 root 的标签。

换句话说,如果我当前的活动设备是“SystemA”,那么一旦我将新映像写入非活动分区。我安装非活动分区并将非活动分区修改/etc/fstab为类似的内容

LABEL=SystemB / ext4 defaults 0 0

我的设备和分区看起来像

NAME   MOUNTPOINT     LABEL       SIZE 
sda                             223.6G 
├─sda1 /boot_infra    boot          2G 
├─sda2                systema     20G 
├─sda3 /media/root-ro systemb     20G 
└─sda4 /media/root-rw overlayfs 

然后,我们使用自定义 grub 工具来确定要使用的分区。我们在 boot_partition 上修改它,使用grub-editenv

然后,当我启动时,OverlayFS 接管并正确设置所有内容。

然而,由于各种原因(公司/客户安全类型的事情),我需要消除修改 fstab 步骤。我需要非活动分区完全 RO,不对映像进行任何修改。

思考我想做的是让 FSTAB 动态解析要使用的标签,而不像我目前那样将其硬编码到 FSTAB 中

相关内容