Skip to content
Snippets Groups Projects
Forked from pkg / systemd
Source project has a limited visibility.
  • Denis Pynkin's avatar
    2ce89c63
    Force the call of systemd-journal-flush before `/var` unmount · 2ce89c63
    Denis Pynkin authored
    The problem with failed `/var` unmount placed on separate partition
    have a long story: https://github.com/systemd/systemd/issues/867
    According messages after the fix integrated into upstream -- there are
    some corner cases which aren't fully fixed by patches adding [relinquish
    options](pkg/systemd!26
    
    )
    
    In case of ostree-based images we have a similar issue since `/var` is
    bind-mounted in initramfs. Systemd is trying to unmount `/var` on
    shutdown, however `ExecStop=` command from `systemd-journal-flush`
    service is not executed during shutdown.
    By adding `PartOf=var.mount` into service file we force the
    `systemd-journal-flush.service` to be called prior the `/var` unmount.
    This allow to unlock the bind-mount, since `journald` have a chance to
    re-link it's journal into `/run` with `journalctl
    --smart-relinquish-var` call.
    
    Signed-off-by: default avatarDenis Pynkin <denis.pynkin@collabora.com>
    2ce89c63
    History
    Force the call of systemd-journal-flush before `/var` unmount
    Denis Pynkin authored
    The problem with failed `/var` unmount placed on separate partition
    have a long story: https://github.com/systemd/systemd/issues/867
    According messages after the fix integrated into upstream -- there are
    some corner cases which aren't fully fixed by patches adding [relinquish
    options](pkg/systemd!26
    
    )
    
    In case of ostree-based images we have a similar issue since `/var` is
    bind-mounted in initramfs. Systemd is trying to unmount `/var` on
    shutdown, however `ExecStop=` command from `systemd-journal-flush`
    service is not executed during shutdown.
    By adding `PartOf=var.mount` into service file we force the
    `systemd-journal-flush.service` to be called prior the `/var` unmount.
    This allow to unlock the bind-mount, since `journald` have a chance to
    re-link it's journal into `/run` with `journalctl
    --smart-relinquish-var` call.
    
    Signed-off-by: default avatarDenis Pynkin <denis.pynkin@collabora.com>