"permission denied" for excluded directory

I’ve setup one sync that won’t run (“failed to setup, retrying”) because of the error:

error while traversing /var/www/vhosts/example.com/logs/subdomain: permission denied

The logs directory only has permissions for root.

The base directory is /var/www/vhosts/example.com/ and the .stignore is

!/subdomain
!/dumps
**

It doesn’t seem to matter if I include ‘**’ at the top or the bottom, or if I only use ‘*’. My understanding is that the global exclude should be at the end of the list or the include over-rides will be excluded.

Any suggestions?

Your ignore patterns are correct, the is due to filesystem watching and your include (!...) patterns: With includes we need to traverse into all ignored directories as well, to see if there is something included in there. For normal scans we can ignore errors in those directories, but with filesystem watching (external library) we can’t. So your options are to adjust your directory structure/ignore patterns to not use any includes or disable filesystem watching.

Thanks, that helps me understand what is going on.

So for non-traversable directories, the options are either:

  1. Use excludes only, or
  2. Turn off filesystem watching for this sync and use rescan interval only.

Confirming that using the second option (easier for now) works fine, as the number of files is low enough that frequent rescans has little impact.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.