1

I have a .fuse_hidden* file in one of my folders, and it won't go away. 'lsof | grep fuse_hidden' doesn't give anything, so I'm not sure what program the OS thinks has it open still. Is there any way to force a delete without rebooting? This is in Ubuntu 12.10, the and the folder is on an NTFS partition.

Thanks.

2 Answers 2

1

i borrowed this answer:

Hidden files are created by the fuse high-level user-space library. Unix supports references and access to deleted files, but that's not something most fuse applications handle. So the fuse user-space library acts the same way as NFS, in that deletions are 'soft' as long as references remain. Instead of actually deleting the file, it is renamed to '.fuse_hidden...' until the last reference is released.

This is part of the FUSE user-space library, and is correct behavior. There is a hard_remove mount option for FUSE that you can use if your program allows passing in additional fuse flags (or modify the program to do so). The downside is that the filesystem would no longer have access to files that were open while deleted, so it may behave poorly.

Some filesystems will track references themselves and may disable soft deletes by default. Also, programs that use the FUSE low-level API won't do this.

2
  • 1
    So the file won't delete because there are still references to it? Is there any way to see what is referencing it still?
    – user164162
    Mar 12, 2013 at 15:35
  • 1
    unmount the NTFS drive, then these files should be gone.
    – chifiebre
    Mar 12, 2013 at 16:19
0
sudo fuser -c <filename>

This ought to give you the process IDs for processes still accessing your file.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .