-
Notifications
You must be signed in to change notification settings - Fork 160
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
Docker run error: "idmapped mounts are not supported on the filesystem" #586
Comments
Hi @hthcis, thanks for giving Sysbox a shot and for the detailed error report.
That was the case until recently, but that may have changed in recent kernels (and if so we need to update Sysbox to be aware of this). My recommendation is that you put both the Docker and Sysbox data roots under ext4 if possible (i.e., Also, we don't officially support AlmaLinux (i.e., we don't test on it), but some folks have made Sysbox work on it (see this recent PR for example).
You shouldn't need to do that; the sysbox installer creates a top level systemd service for sysbox and the sub-services for sysbox-fs and sysbox-mgr already (under
I don't think so; the error is pointing to the sysbox data root being on XFS:
So the solution would be to ensure the sysbox data root (which you configured to |
Thanks for the quick response.
Somehow it didn't do that on my machine. Do you mean "make install"?
First that was the case, but later I reformatted /data to ext4. Now the error is:
Because /data is already ext4, my guess was the incorrect FUSE path is the cause. Thanks. |
I installed a brand new AlmaLinux 9 VM with ext4 and default paths, but unfortunately the error is still the same. Error
EDIT:
I use a different kernel (did not run "dnf update" after installation of the VM)
Partitions
Docker run
Error
sysbox-mgr.log
sysboy-fs.log
|
I'm the maintainer of this upstream. Some CentOS versions have disabled Idmapped mounts. Last I checked @giuseppe had filed a request to enable them. |
Thanks for chiming in @brauner, and thank you very much for developing the kernel's ID-mapped-mounts in the first place. @hthcis: per @brauner's feedback and the dmesg warning For Sysbox to work properly, the Linux kernel must either support ID-mapped-mounts or support the shiftfs module (works on Ubuntu/Debian mainly), as these mechanisms allow host files mounted into the Sysbox container (which is always inside a Linux user-namespace) to show up with proper user-ID/group-ID ownership inside the container. |
Thanks @brauner, @ctalledo for the help. Can I follow the status of @giuseppe's request somewhere? |
+1 |
Sorry for my late response @hthcis and @johnwmail When I did the tests i was using Almalinux 9.0 with I also have tested it with Almalinux 9.1 and As a suggestion i don't know if you have tried to start sysbox without idmapped-mounts enabled (it starts with them by default). I haven't seen that in the thread being suggested. To do that start sysbox with |
Nice, thanks for sharing, will try on tomorrow |
Thanks for the response. |
Yes, sysbox --disable-idmapped-mount works on rhel9 kernel (5.14.0-162.6.1.el9_1.x86_64) |
Hi folks, closing this ticket as Sysbox v0.6.2 no longer requires shiftfs on kernels >= 5.12; see here for more info. Also, Sysbox v0.6.2 checks if shiftfs is present and functional on the host; if it's present but not working correctly, it uses alternative methods to ensure the rootfs has proper ownership inside the rootless container. |
Error
Running the following command returns error "idmapped mounts are not supported on the filesystem".
With another VM (centos stream 9) I had the same error. Without sysbox runtime it works.
I could not find an existing issue for this.
Error mesage:
Configuration
OS and hardware (it's a VM on Nutanix)
Disks
sdb1 was formatted as xfs before, but I reformatted it because i got basically the same error as now, but it stated "xfs" in the message:
Is currently only ext4 (not xfs) supported with idmapping?
Sysbox config
I created the following systemd services for sysbox-fs and sysboy-mgr (I do not use sybox as a wrapper, because I found no way to specify the system-fs mountpoint this way).
So all data is on ext4 under /data, but the sysbox-fs.log shows FUSE still uses the default path "/var/lib/sysboxfs" not "/data/sysboxfs":
Maybe this is the cause for the error?
I found a PR to fix this: #333
Can I somehow configure the FUSE path?
My sysbox built
I used make to build sysbox based on latest commit (5389057) of master branch (Date Tue Aug 9 19:44:46 2022 +0300).
I'm not aware of any issues during built.
Docker version
(I have downgraded containerd to 1.6.4 because of this: containerd/containerd#7219)
Sysbox-mgr log
In case it is needed
Questions
Thanks for the support.
The text was updated successfully, but these errors were encountered: