-
Notifications
You must be signed in to change notification settings - Fork 272
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
OS X .Trashes items do not see Remove when emptying trash #40
Comments
I have not dealt with how Finder deletes files yet. If you run with debug (set fuse.Debug to a function like https://github.com/bazillion/fuse/blob/2664175cb4560cb9d273a22ffb620cb7beeb702c/fs/fstestutil/debug.go#L41-43 ), you should see all incoming requests, even if you don't have a handler for them. With that, when you empty a trash bin that has items in it, If nothing shows up, then the problem is in osxfuse. If something shows up, copy-paste the relevant log here and I'll help you figure out how to handle it. |
Thanks, didn't think of the debug thing. Here's what I get. Looks like maybe its related to xattr's. As far as I can tell my xattr implementation is working, but maybe it isn't.
|
Well your fs is definitely claiming ENOTSUP "operation not supported" on a Getxattr there a couple of times, for node ids 0x3 and 0x5. If you read earlier in the log, you'll see what Lookup, Mkdir, Create etc call gave the kernel those node ids. My guess is that you implemented xattrs for some of your nodes, but not all of them. For example, on files but not on directories. It also seems pretty intent on looking up a file called |
@tv42 Thanks, I think that gives me something to go on. ._501 is what the file got renamed to when it was moved to the trash. I'll see if I can track it down. |
My understanding is this: on "multi-user" volumes (not $HOME), OS X puts Finder trash into When the file system does not support xattrs, Finder puts xattr data for file So, in this case, your fs does not support xattrs (on the right nodes?), so Finder tries to store the xattr data for It is opening your node 0x3 as a directory and listing its contents. If 0x3 was the lookup result for e.g. |
Flagging as low priority as this really needs manual QA with a test filesystem that does not currently exist. |
Perhaps http://hints.macworld.com/article.php?story=20091003083125659 |
I have replicated this issue exactly. There are two errors. The last is because when the mount failed, the mount point was trying to be moved to .Trash, but root does not have a .Trash directory. The .Trash directory is created when you log in via the main login screen. Something never done by root. |
@ztalbot2000 I'm sorry I didn't understand what you're trying to say. How is FUSE relevant to RPi SD cards? It also doesn't seem to relate to Ryan's problem much. For example, you're talking about a mount point being moved to |
Here is my log. Look familiar? udo /Volumes/crosstoolBase/brew/bin/fuse-ext2 -v /dev/disk3s2 ./linux -o debug Based on what I was doing it puts my previous explanation into context. |
The original problem was that the reporter claimed to not see any FUSE activity when he emptied the trash. (Still waiting for details.) I don't see how you talking about |
Heads up: the future of macOS support is in danger. If you care about FUSE on macOS, please encourage talented developers to pick up maintenance of the open source project. See #224 |
Can't do anything here. Tagged as doc because of the braindump of macOS trash behavior in #40 (comment) -- it'd be nice of some macOS people wrote up all the oddities of Finder etc, and .Trash and the xattr kludge would be part of that. |
Ok, so feel free to say this it outside of the scope of bazil/fuse, but I've got my file system working and I added -o local,... to mount_darwin.go to run the file system locally. On osx when I drag a file to the trash, it goes to a .Trashes folder on the file system. (I can even restore fine) The weird thing though is that when I empty the trash, I don't get any Remove or Rename's. Any idea what OSX does when you clear the trash on a local file system? The files just stay there and the trash bin shows full. I'm just wondering if anyone has any ideas on this? Thanks!
The text was updated successfully, but these errors were encountered: