-x tries to descend into FUSE filesystems

Matt McCutchen hashproduct+rsync at gmail.com
Tue Sep 5 22:30:03 GMT 2006


On 9/5/06, Robert Siemer <Robert.Siemer-rsync at backsla.sh> wrote:
> I've noticed that an "rsync -avx . host:/test" tries to descend into a
> FUSE filesystem (on the origin/sending side). This is at least true when
> the FUSE is mounted by somebody else.
>
> I came accross this while my nightly backup choked on this with
> "Permission denied" at the mount point.
> [...]
> A FUSE mounted fs is normally not accessible by other users.
> [...]
> ?---------   ? ?      ?          ?                ? /home/siemer/mnt/elf12

All rsync sees is a directory that it is not allowed to stat.  (ls
can't stat it either; that's why you get question marks instead of
attributes.)  Rsync has no way of knowing that the directory is on
another filesystem because that information would be returned by the
stat.  Thus, I don't think there's any reasonable behavior other than
to complain, "Permission denied".

As a workaround, exclude the root of the FUSE with --exclude, and
you'll tickle the code path in flist.c that is commented "See if file
is excluded before reporting an error".

Matt


More information about the rsync mailing list