Automatic rollback in case of boot failure?



I wonder if there is any kind of automatic recovering system on ostree
and if not, how to implement it.

Imagine for example that after an admin upgrade the system no longer
boots (it gets stuck on boot for some obscure reason [1]). It's easy
to manually reboot it and choosing the previous option on the boot
manager, but it requires manual steps.

Here I use (rpm-/)ostree on remote physical machines and I just cannot
reboot them remotely in case of such kind of problem and I imagine
there are other use cases with similar limitation.

The first issue here is defining what a boot failure is. A dependency
loop is clearly one kind, but there are for sure more.

It might reside on either initrd or during some further point.

The idea for solving that is soemething like an automatic
emergency.service or rescue.service which changes the boot order (or
run some kind of rollback) and reboot the machine instead of going to
a prompt. But That's the approach I am thinking for this problem in my
usecase, but I am not sure if it's the least problematic one. By my
experience the deps. loop situation does not call any recover system,
but there might be a way of doing that.

Does this feature sound interesting or any of you know a better aproach?

Thanks in advance.

[1] In fact I did that basically by creating a dependency loop on systemd :-)

-- 
Sent from my mind


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]