-
Notifications
You must be signed in to change notification settings - Fork 95
Include cryptsetup in containerized builds #291
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
Conversation
|
This will result in both the |
|
Oops, looks like both of those modules are already blacklisted in |
|
Let's first ensure that we're on the same page about the recovery build. From what I understand that build is meant to be an all-inclusive rescue environment which should support most storage setups out of the box. The lack of luks support is generally a problem(imagine decrypting an encrypted usb stick/hard drive etc...). On the other hand when supporting everything under the sun that build might become extremely bulky. Where should be the cutoff point of "the build is good enough"(cryptsetup? tpm? tmp2? gpg? wpa_supplicant?). I think that The options I see right now:
Are there options I'm missing? |
Recovery builds are a pretty new thing, so they're a bit nebulous. However, I don't have any real objection to
The first option is what I've generally settled on. It'll be the closest match to existing behavior from the myriad ways to build ZBM. That also will allow us to reduce the number of different places Dracut modules have to be blacklisted, centralizing a few core blacklisted items in zfsbootmenu.conf. Adding in @ahesford so that he can weigh in on what he'd like to see here. |
|
Adding cryptsetup to the recovery image is fine, if that is sufficient to stand up (manually) a LUKS volume and perform some recovery operations in ZBM. Because we officially recommend native encryption, I don't want to get bogged down trying to make either the recovery or release builds capable of automatically loading pools on LUKS volumes. The purpose of the release image is to provide the greatest common divisor for widespread support; the purpose of the recovery image is to provide a cache of tools that might not be convenient to use, but are at least available in times of desperation. I'm content to tell people that automatic support for LUKS requires a locally built, custom ZBM image. The contrib script to perform unlocking with keys in LUKS was intended as a demonstration that should be customized for individual use. We're happy to merge improvements to that script based on feedback from those who actually use it (neither zdykstra nor I have LUKS setups), but we do not intend to provide guarantees that the script is functional or easy to use. |
When building zfsbootmenu using the default build container it's not possible to include the crypt dracut module or the encrypt mkinitcpio hook.
The default build container should install cryptsetup for those modules/hooks to work. Including those modules/hooks is required for the contrib/luks-unlock.sh script to work.