-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ignition: systemd: fix systemd 256 usage #101
Conversation
Systemd 256 mounts /usr as read-only, but Ignition setup requires to have some files written depending on the live image or the ignition contents.
Just found out from @tormath1 (thanks!) that Fedora CoreOS had the same issue and implemented similar fixes: coreos/fedora-coreos-config@44d0ff8 coreos/ignition#1891 |
I'm confused. Doesn't this break verity? We therefore must have mounted /usr read-only before? I recall hearing about this before, but I've forgotten what was said. |
dm-verity protects the /usr partition, not the initrd mounts. This PR is not doing anything special that was not done before aka now (the initrd /usr is writable), it just aligns with the new systemd expected workflow (the initrd /usr to not be writable). But we still need to have a working ignition, so that's that. There is no other way until Ignition decides on another place to store that information. |
If CoreOS has done it, then I guess it makes sense, but I'm still confused. /usr isn't a separate partition within the initrd, is it? |
The /usr in this context is the initrd image partition (vmlinuz one). Not the /usr partition A or B (3 or 4) from the Flatcar disk image, that partition is read-only at filesystem layer and dm-verity protected. |
Right, but the initrd covers all of /, not just /usr. If I extract it, then I see this:
And if I boot with |
If you want to see what is actually happening, you need to add debug logs here: https://github.com/flatcar/bootengine/pull/101/files#diff-3c5d226e3099ab036b0015f5a5e8eb1bfcfff1537fd1d32e6b1b3f0799ea752eR10, build Flatcar and run it. I think What is important to know is that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll take your word for it, but I'll try to get a better understanding when I get back to tinkering with Dracut soon. Approving because CoreOS has made the same change.
Giving my 2 cents here, but if |
That would be similar to the option 3, basically create the image with the vmlinuz that contains the correct switch executable Maybe
|
Merging this PR as is to have systemd 256 in this cycle. |
Use flatcar/bootengine#101, that fixes systemd 256 Ignition quirk. See: coreos/fedora-coreos-config@44d0ff8
Use flatcar/bootengine#101, that fixes systemd 256 Ignition quirk. See: coreos/fedora-coreos-config@44d0ff8
Systemd 256 mounts /usr as read-only, but Ignition setup requires to have some files written depending on the live image or the ignition contents.
The are multiple options we can consider:
Testing done
[Describe the testing you have done before submitting this PR. Please include both the commands you issued as well as the output you got.]
changelog/
directory (user-facing change, bug fix, security fix, update)/boot
and/usr
size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.