Multiarch emulation not working with AlmaLinux 10 & Fedora 42 for rootless containers #26967
Replies: 2 comments 2 replies
-
I cannot see how installing emulator was ever allowed as rootless. Permission wise this seems extremely dangerous if it were allowed so the restriction that this only work when run as root seem expected to me. Adding an emulator there is done by writing to /proc/sys/fs/binfmt_misc/register and if I check the permission on my system it is write only for root, I am not sure if the A google search seem to indicate that this was added in 6.7 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d82c0a37d431ada0d1dae9a2665fcfe17b0f9e14 |
Beta Was this translation helpful? Give feedback.
-
yeah this is normal kernel behavior as rootless podman runs in its own mounts and then the runtime mounts a fresh /proc compare
AFAICT you can still use the emulators from the root namespace so it should still work just the listing might be off. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Issue Description
Hey everyone, we've been using the
docker.io/tonistiigi/binfmt
image for years on our CentOS Stream 9 machines with kernel 5.14.0 & podman 5.6.0 to setup multiarch emulation which has worked flawlessly so far.Now we tried to upgrade to AlmaLinux 10 with kernel 6.12.0 & podman 5.4.0 and unfortunately this solution has stopped working. I could replicate the same on my personal Fedora 42 machine with kernel 6.16.3 & podman 5.6.0.
Install looks successful, but emulators are empty when checking:
However when executed as
sudo
things start to work again, but it stays broken withoutsudo
:Now I really wonder why this has stopped working, is anybody aware of a kernel change or anything in that regard? We really wanna stick with unprivileged containers. Interestingly checking the status without root didn't work in the past, but does now:
I know that this is probably not a podman issue, but I'm thankful for any hint or help I can get!
Steps to reproduce the issue
Steps to reproduce the issue
sudo podman run --privileged --rm tonistiigi/binfmt --install arm64
podman run --privileged --rm tonistiigi/binfmt
podman run --rm --platform linux/arm64 alpine uname -m
- will fail on both Fedora 42 & AlmaLinux 10 withDescribe the results you received
Emulation simply doesn't work
Describe the results you expected
Emulation should keep working like it was in the past
podman info output
Podman in a container
No
Privileged Or Rootless
Rootless
Upstream Latest Release
No
Additional environment details
SELinux is disabled or permissive, happens on AWS and locally on my machine.
Additional information
No response
Beta Was this translation helpful? Give feedback.
All reactions