ostree-prepare-root.service: Run earlier in initrd
Previously, we were preparing the root very late in the boot process; right before we switch root. The issue with that is that most services in the initrd that run `After=initrd-root-fs.target` expect that `/sysroot` already points to the rootfs we'll be pivoting to. Running this late violates that assumption. This patch fixes this by making `ostree-prepare-root.service` instead run right after `sysroot.mount` (the physical sysroot mounted by systemd) but still before `initrd-root-fs.target` (which is the target signalling that `/sysroot` is now valid and ready). This should make it easier to integrate OSTree with other initrd services such as Ignition. Related: https://github.com/dustymabe/ignition-dracut/issues/20 Closes: #1759 Approved by: cgwalters
This commit is contained in:
1 parent
ae99b9ccdc
commit
a4a49724d6
2 files changed
+4
-5
No files matched your search
@@ -36,7 +36,7 @@ depends() {
|
||||
install() {
|
||||
dracut_install /usr/lib/ostree/ostree-prepare-root
|
||||
inst_simple "${systemdsystemunitdir}/ostree-prepare-root.service"
|
||||
mkdir -p "${initdir}${systemdsystemconfdir}/initrd-switch-root.target.wants"
|
||||
mkdir -p "${initdir}${systemdsystemconfdir}/initrd-root-fs.target.wants"
|
||||
ln_r "${systemdsystemunitdir}/ostree-prepare-root.service" \
|
||||
"${systemdsystemconfdir}/initrd-switch-root.target.wants/ostree-prepare-root.service"
|
||||
"${systemdsystemconfdir}/initrd-root-fs.target.wants/ostree-prepare-root.service"
|
||||
}
|
||||
Reference in new issue
Block a user