mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 13:26:00 +03:00
[GH-ISSUE #647] fuse: device not found, try 'modprobe fuse' first #365
Labels
No labels
bug
bug
dataloss
duplicate
enhancement
feature request
help wanted
invalid
need info
performance
pull-request
question
question
testing
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/s3fs-fuse#365
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @yellowmamba on GitHub (Sep 18, 2017).
Original GitHub issue: https://github.com/s3fs-fuse/s3fs-fuse/issues/647
Additional Information
The following information is very important in order to help us to help you. Omission of the following details may delay your support request or receive no attention at all.
Version of fuse being used (pkg-config --modversion fuse)
2.9.4System information (uname -a)
Linux fae8d21da480 4.9.43-17.38.amzn1.x86_64 #1 SMP Thu Aug 17 00:20:39 UTC 2017 x86_64 x86_64 x86_64 GNU/LinuxDistro (cat /etc/issue)
Ubuntu 16.04 LTS \n \ls3fs command line used (if applicable)
N/A
/etc/fstab entry (if applicable):
if you execute s3fs with dbglevel, curldbg option, you can get detail debug messages
Details about issue
I am not sure why, it used to work for my other projects. When I am prompt with this error message, I tried
modprobe fuseand gotbash: modprobe: command not found. Really out of ideas of what went wrong. Can anyone assist?Thanks
@yellowmamba commented on GitHub (Sep 18, 2017):
hmm, I am pretty sure now it's because of this line in
/etc/fstabBut I have no idea why it's not configured.
@yellowmamba commented on GitHub (Sep 19, 2017):
OK, it was due to docker run permission issue, need a
--privilegedflag. Unrelated to s3fs itself. Sorry.@audiofeature commented on GitHub (Feb 14, 2018):
@yellowmamba Can you explain in more detail how this is solved? I don't know where to use that --privileged flag.
@yellowmamba commented on GitHub (Feb 14, 2018):
Hi @audiofeature , it's a flag you can attach to docker, i.e.
docker run --privileged.@sougiovn commented on GitHub (Mar 12, 2018):
@yellowmamba not every hero wears a cape...
How did you figured this out?
@braco commented on GitHub (Apr 17, 2018):
There has to be some way to fix this with a pure Dockerfile
@rustyx commented on GitHub (May 29, 2018):
--privilegedgives too many permissions to the container.FUSE functionality needs in fact only the following permissions:
SYS_ADMIN is needed for mount/umount functionality, and
/dev/fuseexposes the FUSE device to the container.@diman82 commented on GitHub (Jan 6, 2019):
I'm still facing this issue, running docker-compose with 'privileged: true' in yml file.
Any ideas what I'm missing?
@gnosisgithub commented on GitHub (Nov 21, 2019):
So 'docker --privileged run ...'?
@Dr-Steve commented on GitHub (Mar 12, 2020):
This does not work in the context of AWS and Fargate, where you are not allowed to run with --privileged or --device (see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html)
Is there any way to get around this?
@ChrisPappalardo commented on GitHub (May 23, 2020):
I have the same issue as @Dr-Steve. I tried following this answer and ran into the device not found here discussed here. If I set privileged mode in development, it works, but that is not supported by AWS Fargate. Is there a recommended way to use s3fs with AWS Fargate that is also compatible with ecs-cli?
@nminhquang commented on GitHub (Jun 2, 2020):
Try to run docker container with these options:
--cap-add SYS_ADMIN --device /dev/fuse --security-opt apparmor:unconfined
@dnz-bdeboer commented on GitHub (Jul 29, 2021):
In case people come back here and think the last solution applies to Fargate: it does not. Fargate does not support SYS_ADMIN capability. You probably need to run your container in ECS. No big deal.
@ChrisPappalardo commented on GitHub (Jul 29, 2021):
Following up on this, I abandoned using s3fs in ECS with Fargate, it's much cleaner and easier using EFS which can be mounted via the task definition. If you really need to use S3, I suggest using it at the app level via an SDK (such as boto3 in python). S3 just isn't great for block-level storage in my opinion and I've had multiple issues trying to implement it that way.
@ayush5112 commented on GitHub (Dec 30, 2021):
I am getting the problem of permission denied on my system when I try to access a database mounted directory :
ls: cannot access '/home/ayushk/dla/scratch.dla': Permission denied
So, I tried to mount the directory from the docker itself but the error says :
fuse: device not found, try 'modprobe fuse' first
If we give --privileged option in the command to run the docker then error when is :
docker: Error response from daemon: OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.go:545: container init caused: process_linux.go:508: setting cgroup config for procHooks process caused: failed to write "a : rwm": write /sys/fs/cgroup/devices/docker/39b947e020815aae5bbdb0ad03dff2b6d662b96e8ed3dc898a92237e26bbd5f9/devices.allow: operation not permitted: unknown.
So how can we mount a directory on docker?
@Abdelrahman-Abbas commented on GitHub (Feb 1, 2022):
Did anyone solve such an issue when working with google cloud build to build the docker? I think it doesn't have the
--privilegedoption. Any help?@sinnrrr commented on GitHub (May 14, 2022):
to add this permission to docker-compose managed container add the following to the config file:
@lebyanelm commented on GitHub (Jul 18, 2022):
How do you apply these fixes on a docker container running under kubectl?
@KMint1819 commented on GitHub (Mar 31, 2024):
I've tried
--cap-add SYS_ADMIN --device /dev/fusebut then it shows@kjxbyz commented on GitHub (Jul 2, 2024):
@KMint1819 it works for me.
@AmanYadav7089 commented on GitHub (Nov 28, 2024):
that issue solve by use one property in kubernetes deployment inside container
securityContext:
privileged: true
@AmanYadav7089 commented on GitHub (Nov 28, 2024):