Update README.md
This commit is contained in:
parent
e3bf90e30a
commit
dd2d657acf
1 changed files with 30 additions and 7 deletions
37
README.md
37
README.md
|
|
@ -35,16 +35,39 @@ MBR/BIOS:
|
|||
|
||||
```
|
||||
/dev/disk:
|
||||
/dev/disk1 - ext2 - /boot
|
||||
/dev/disk2 - swap
|
||||
/dev/disk3 - btrfs - /
|
||||
/dev/disk1 ext4 /boot
|
||||
/dev/disk2 swap [SWAP]
|
||||
/dev/disk3 btrfs@home /home
|
||||
/dev/disk3 btrfs@root-2021-04-01 /
|
||||
/dev/disk3 btrfs@root-2021-04-20 /
|
||||
/dev/disk3 btrfs@conf-2021-04-01 /config
|
||||
/dev/disk3 btrfs@conf-2021-04-20 /config
|
||||
```
|
||||
|
||||
Subvolumes:
|
||||
- Every installed release has it's own subvolume for rootfs and config in case a configuration changes with an update
|
||||
- The user can choose which one to boot into
|
||||
|
||||
- 2021-04-01: Released version
|
||||
- current: Currently active version in case next boot fails
|
||||
- last: Last known good version
|
||||
### Update flow
|
||||
|
||||
State before the update:
|
||||
|
||||
- boot entry `last` is set to version 1 (last known working version)
|
||||
- boot entry `current` is also set to version 1
|
||||
- on every boot the default boot entry is set to `last` automatically in early boot
|
||||
|
||||
Update process:
|
||||
|
||||
- a new version is downloaded as a btrfs snapshot and put into place as version 2
|
||||
- `current` boot entry is modified to boot the new version
|
||||
- `current` is set as default boot entry
|
||||
|
||||
- device reboots into new version 2 via `current` boot entry
|
||||
- early boot sets `last` as default boot entry
|
||||
- after successful boot:
|
||||
- the user marks the system as functional which sets the `last` boot entry to the current version
|
||||
- if something goes wrong:
|
||||
- the system reboots, now with the `last` entry being the default booting into the last known working system
|
||||
- the user gets displayed an error because `last` and `current` is not the pointing to the same version and `last` is booted indicating an error
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue