Skip to content
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

Stopping asd kills fuse mounts (error: Transport endpoint is not connected) #86

Open
rhyc opened this issue Oct 14, 2023 · 0 comments
Open

Comments

@rhyc
Copy link

rhyc commented Oct 14, 2023

Hi! I have encountered unexpected behavior from anything-sync-daemon.

My setup:

Anything-Sync-Daemon v6.0.0
Host: Ubuntu 20.04
VM Guest: Debian 12
Vmware Workstation 16

The host shares multiple directories to guest via fuse.vmhgfs-fuse. ASD runs inside guest, and its WHATTOSYNC is a sub-directory of a shared directory. OVERLAYFS is not used.

Everything runs fine until I stop ASD with sudo systemctl stop asd.service

Then all shared directories become dead in guest. I get error Transport endpoint is not connected trying to access them.

Expected behavior: After I stop ASD, all shared directories continue to function in guest.

As far as I can tell, the offending code is in do_unsync():

umount -R -f -l "$DIR"
umount -R -f -l "$BACKUP"

The forced umount kills fuse service. After I remove -f from umount, ASD seems to behave correctly in my setup.

I found a thread discussing this behavior of umount -f:

fuse filesystems get disconnected on container exit

Edit: According to Thread: [fuse-devel] bind mount and ENODEV and Aborting a filesystem connection, this is the expected and documented behavior of umount -f

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant