Mac OS X High Sierra Permissions


I am one of the many thrown out by CrashPlan. Currently I backup up to a freenas system using sftp. All clients systems are OS X 10.12 / 10.13 Most machines with multiple users and get read errors.
Looking at the options of loading duplicati on startup with a plist, but really want to get backup working properly first. The machines are logged and running duplicati as the initial administrator account.

And… very cool.


Error reported while accessing file: /Users/mikehathaway/Pictures
System.UnauthorizedAccessException: Access to the path '/Users/mikehathaway/Pictures' is denied.
  at System.IO.__Error.WinIOError (System.Int32 errorCode, System.String maybeFullPath) [0x00129] in <6e9b92f0d119424382ef180639777acb>:0 
  at System.IO.FileSystemEnumerableIterator`1[TSource].HandleError (System.Int32 hr, System.String path) [0x00006] in <6e9b92f0d119424382ef180639777acb>:0 
  at System.IO.FileSystemEnumerableIterator`1[TSource].CommonInit () [0x00054] in <6e9b92f0d119424382ef180639777acb>:0 
  at System.IO.FileSystemEnumerableIterator`1[TSource]..ctor (System.String path, System.String originalUserPath, System.String searchPattern, System.IO.SearchOption searchOption, System.IO.SearchResultHandler`1[TSource] resultHandler, System.Boolean checkHost) [0x000d6] in <6e9b92f0d119424382ef180639777acb>:0 
  at System.IO.FileSystemEnumerableFactory.CreateFileNameIterator (System.String path, System.String originalUserPath, System.String searchPattern, System.Boolean includeFiles, System.Boolean includeDirs, System.IO.SearchOption searchOption, System.Boolean checkHost) [0x00009] in <6e9b92f0d119424382ef180639777acb>:0 
  at System.IO.Directory.InternalGetFileDirectoryNames (System.String path, System.String userPathOriginal, System.String searchPattern, System.Boolean includeFiles, System.Boolean includeDirs, System.IO.SearchOption searchOption, System.Boolean checkHost) [0x00000] in <6e9b92f0d119424382ef180639777acb>:0 
  at System.IO.Directory.InternalGetFiles (System.String path, System.String searchPattern, System.IO.SearchOption searchOption) [0x00000] in <6e9b92f0d119424382ef180639777acb>:0 
  at System.IO.Directory.GetFiles (System.String path) [0x0000e] in <6e9b92f0d119424382ef180639777acb>:0 
  at Duplicati.Library.Snapshots.NoSnapshot.ListFiles (System.String folder) [0x00000] in <77daa5b4404f4a3f88c47ead1428ebeb>:0 
  at Duplicati.Library.Utility.Utility+<EnumerateFileSystemEntries>d__22.MoveNext () [0x00244] in <1cb5198b00f34ae59d97ee7fe7a3a16c>:0


Hi @Mike_Hathaway, welcome to the forum!

Due to how Duplicati stores configuring and database files I think you’ll find it easier to get the plist based service / daemon working first. Shifting from tray-icon to daemon often involves extras steps that can be avoided by starting as daemon.

If you still want to wait on that shift, I suspect you need to be running Duplicati as root rather than administrator.


I have 3 machines, I am working on one of them I am switching to the plist service daemon. Just not quite working yet.


I have duplicati working as a service and no more permissions errors. I installed the server.plist into the /Library/LaunchDaemons and the client .plist into /Library/LaunchAgents Works like a charm on 10.13 and 10.12

These are the plists


Great! Does that mean we can flag your post as the solution or is there something else that needs to be address?

(By the way, I edited your initial post by adding “~~~” before and after the er message to make it more readable.)


Yes this is a solution that could be flagged. Running on 3 systems. One completely remote from the sftp server.


Running perfectly for me on 10.14.1, thank you!


Welcome to the forum, @jbmfc - and thanks for letting us know this worked for you!


I see it works for you, but my understanding is that this is part of security/privacy measures in MacOS Mojave.

At some point I will modify the build script to notarize the MacOS builds so they get this access. But until then you can use the workaround you found, or you can go to system settings -> security & privacy -> anonymity -> full disk access, and add there.