-
Notifications
You must be signed in to change notification settings - Fork 255
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
Starting with fuse 3.0 the nonempty option has been removed. #440
Conversation
This caused gocryptfs to fail when this option is used and not using it will not work if the mountpoint is not empty either because the check failed. http://fuse.996288.n3.nabble.com/ANNOUNCE-libfuse-3-0-0-has-been-released-td14403.html
fusermount3 (i.e. fusermount from libfuse 3.x) has dropped the `nonempty` option. Detect fusermount3 and don't add `nonempty` in this case. Fixes #440
Hi! Thanks for the patch! The version parsing logic looks a little scary to me, I tried to have a simpler solution. Can you try 6eee5f2 and see if it fixes your problem? Also, gocryptfs will keep the |
Mounting over non-empty directories is allowed by default in libfuse 3.0 to match the behavior of mount. There is a changelog entry for libfuse3.0 that explains why the -nonempty option breaks with libfuse3.
This is on Ubuntu 20.04. I am happy to keep testing for you until we get this right. My PR worked, but I do agree that I wasn't real happy with the version checking and was hoping you knew a better way. |
I did not copy the binary built from 6eee5f2 to /usr/bin/gocryptfs. After I did this it works and I am happy with it. Thanks for accepting part of my patch and help! |
Thanks for testing! Merged to master.
Sorry, that was unclear! gocryptfs will keep rejecting nonempty directories per default, also when using libfuse3. This is checked inside gocryptfs by the |
|
I ran into this problem in Ubuntu 20.04 beta.
The code for libfuse >= 3.0 had the nonempty mount option removed from fusermount because the standard mount option does not have this option. This caused gocryptfs to fail when this option is used (fuse doesn't allow that option). Not using it will not work either if the mountpoint is not empty because the check "isEmptyDir" failed.
http://fuse.996288.n3.nabble.com/ANNOUNCE-libfuse-3-0-0-has-been-released-td14403.html