On Wed, Jun 15, 2016 at 2:17 PM, Stephen Gallagher <sgall...@redhat.com> wrote:
> On 06/15/2016 03:46 PM, Chris Murphy wrote:
>> I don't understand the technical reason for the 1st reboot. The
>> substantial risk for updates is the user environment. If that's killed
>> off even multi-user.target is far less risk to do updates in. But I
>> don't see why system-update.target can't be isolated from
>> graphical.target rather than mandating a reboot to get there.
>
> I tried to cover this in an earlier post, but the first reboot is to protect
> against things like "user temporarily mounted over /usr/lib/foo so updating 
> the
> foo package isn't actually modifying the persistent system" and "there's a
> memory-leak bug in the kernel so 99% of system RAM is held by kernel space 
> while
> trying to update" or other unpredictable things that can happen according to
> chaos theory when system as complex as a modern Fedora has been running for
> days/weeks/months without a reboot. The first reboot puts the system into a
> (mostly) known state, which is basically a band-aid around a thousand other
> unpredictabilities.

To me this sounds like user sabotage. But lets say I accept this as
sufficiently common that it needs accounting for...

Systemd could unmount everything down to nearly going back to the
initramfs without a reboot, then remount everything per the usual
fstab generator rules just like at startup time, and then commence the
update.

Or probably faster and more reliable would be an nspawn container that
bind mounts the fs per the usual fstab generator rules like at startup
time, and does the offline update in the container environment, which
inside that container would be like a new boot (sorta).

The alternatives appear to have more problems and limitations. We
can't have delayed or scheduled unattended updates on encrypted rootfs
since the user needs to enter a passphrase; or we need a substantially
reworked initramfs that brings up networking much earlier in boot to
connect to a key server in order to unlock rootfs.


-- 
Chris Murphy
--
devel mailing list
devel@lists.fedoraproject.org
https://lists.fedoraproject.org/admin/lists/devel@lists.fedoraproject.org

Reply via email to