Error -36 - cannot do file operations

Hi all,

I am using macOS 10.15 with the current versions of Cryptomator and Fuse. Unfortunately, I cannot do any file operations (copying, moving, renaming etc.) on my files stored in Cryptomator (Onedrive) anymore.
Every operation is ending in error -36. :confused:

Any ideas for this?

Kind regards
Benny

Didn’t hear this from other users before… Any chance your fuse installation isn’t up-to-date?

For further analysis, can you check whether the log file shows any error messages?

Fuse was updated today to 3.10.3

I tried to rename a file “Download.pdf” to “Download 3.pdf”. Here is the log entry, showing an exception. Note: the vault was NOT opened as read only.

13:49:27.608 [main] INFO  org.cryptomator.launcher.Cryptomator - Starting Cryptomator 1.4.15 on Mac OS X 10.15 (x86_64)
13:49:27.703 [main] INFO  o.c.launcher.IpcProtocolImpl - Received launch args: 
13:49:27.997 [JavaFX Application Thread] INFO  org.cryptomator.launcher.Cryptomator - JavaFX application started.
13:49:28.087 [JavaFX Application Thread] INFO  org.cryptomator.jni.JniModule - loaded libMacFunctions.dylib
13:49:29.384 [JavaFX Application Thread] INFO  o.c.ui.controllers.WelcomeController - Current version: 1.4.15, lastest version: 1.4.15
13:49:35.706 [JavaFX Application Thread] DEBUG org.cryptomator.logging.DebugMode - Debug mode enabled
13:49:36.706 [pool-1-thread-1] DEBUG o.c.common.settings.SettingsProvider - Attempting to save settings to /Users/bbraeuer/Library/Application Support/Cryptomator/settings.json
13:49:36.718 [pool-1-thread-1] INFO  o.c.common.settings.SettingsProvider - Settings saved to /Users/bbraeuer/Library/Application Support/Cryptomator/settings.json
13:49:40.104 [Background Thread 2] WARN  o.cryptomator.cryptofs.ReadonlyFlag - Vault on readonly filesystem.
13:49:40.452 [Background Thread 2] DEBUG org.cryptomator.ui.model.FuseVolume - Successfully created mount point: /Volumes/6lw_8kRZRKkN_0
13:49:41.003 [Thread-11] TRACE o.c.frontend.fuse.ReadOnlyAdapter - statfs / (559861137408 / 1027680514048)
13:49:41.011 [Thread-10] TRACE o.c.frontend.fuse.locks.LockManager - Creating ReadWriteLock for []
13:49:41.014 [Thread-10] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:41.014 [Thread-10] TRACE o.c.frontend.fuse.locks.LockManager - Creating ReadWriteLock for []
13:49:41.015 [Thread-10] TRACE o.c.f.fuse.locks.DataRLockImpl - Acquired read data lock for '[]'
13:49:41.022 [Thread-10] TRACE o.c.frontend.fuse.ReadOnlyAdapter - getattr / (lastModifiedTime: 2018-06-01T19:43:31Z, lastAccessTime: 2019-10-08T15:00:33.638469Z, creationTime: 2017-09-14T13:34:15Z, isRegularFile: false, isDirectory: true, isSymbolicLink: false, isOther: false, size: 320, fileKey: (dev=1000007,ino=1303723))
13:49:41.027 [Thread-10] TRACE o.c.f.fuse.locks.DataRLockImpl - Released read data lock for '[]'
13:49:41.027 [Thread-10] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
13:49:41.028 [Thread-12] TRACE o.c.frontend.fuse.ReadOnlyAdapter - statfs / (559861137408 / 1027680514048)
13:49:41.028 [Thread-14] TRACE o.c.frontend.fuse.ReadOnlyAdapter - statfs / (559861137408 / 1027680514048)
13:49:41.028 [Thread-15] TRACE o.c.frontend.fuse.ReadOnlyAdapter - statfs / (559861137408 / 1027680514048)

and so on

13:49:56.933 [Thread-126] TRACE o.c.frontend.fuse.ReadOnlyAdapter - getattr /Privat (lastModifiedTime: 2018-05-15T08:00:03Z, lastAccessTime: 2019-10-08T15:00:33.175793Z, creationTime: 2017-09-14T13:32:11Z, isRegularFile: false, isDirectory: true, isSymbolicLink: false, isOther: false, size: 288, fileKey: (dev=1000007,ino=1291256))
13:49:56.933 [Thread-126] TRACE o.c.f.fuse.locks.DataRLockImpl - Released read data lock for '[, Privat]'
13:49:56.933 [Thread-126] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat]'
13:49:56.933 [Thread-126] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat, .localized]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.DataRLockImpl - Acquired read data lock for '[, Privat, .localized]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.DataRLockImpl - Released read data lock for '[, Privat, .localized]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat, .localized]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat]'
13:49:56.934 [Thread-127] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
13:49:56.934 [Thread-127] TRACE o.c.frontend.fuse.ReadOnlyAdapter - getattr /Privat/.localized failed, node not found
13:49:56.935 [Thread-128] TRACE o.c.frontend.fuse.locks.LockManager - Creating ReadWriteLock for [, Privat, Download 3.pdf]
13:49:56.935 [Thread-128] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:56.935 [Thread-128] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat]'
13:49:56.935 [Thread-128] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat, Download 3.pdf]'
13:49:56.935 [Thread-128] TRACE o.c.frontend.fuse.locks.LockManager - Creating ReadWriteLock for [, Privat, Download 3.pdf]
13:49:56.935 [Thread-128] TRACE o.c.f.fuse.locks.DataRLockImpl - Acquired read data lock for '[, Privat, Download 3.pdf]'
13:49:56.936 [Thread-128] TRACE o.c.f.fuse.locks.DataRLockImpl - Released read data lock for '[, Privat, Download 3.pdf]'
13:49:56.936 [Thread-128] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat, Download 3.pdf]'
13:49:56.936 [Thread-128] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat]'
13:49:56.936 [Thread-128] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
13:49:56.936 [Thread-128] TRACE o.c.frontend.fuse.ReadOnlyAdapter - getattr /Privat/Download 3.pdf failed, node not found
13:49:56.936 [Thread-129] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:56.936 [Thread-129] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat]'
13:49:56.936 [Thread-129] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat, Download 3.pdf]'
13:49:56.937 [Thread-129] TRACE o.c.f.fuse.locks.DataRLockImpl - Acquired read data lock for '[, Privat, Download 3.pdf]'
13:49:56.937 [Thread-129] TRACE o.c.f.fuse.locks.DataRLockImpl - Released read data lock for '[, Privat, Download 3.pdf]'
13:49:56.937 [Thread-129] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat, Download 3.pdf]'
13:49:56.937 [Thread-129] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat]'
13:49:56.937 [Thread-129] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
13:49:56.937 [Thread-129] TRACE o.c.frontend.fuse.ReadOnlyAdapter - getattr /Privat/Download 3.pdf failed, node not found
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat]'
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.PathWLockImpl - Acquired write path lock for '[, Privat, Download.pdf]'
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.DataWLockImpl - Acquired write data lock for '[, Privat, Download.pdf]'
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat]'
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.PathWLockImpl - Acquired write path lock for '[, Privat, Download 3.pdf]'
13:49:56.938 [Thread-130] TRACE o.c.f.fuse.locks.DataWLockImpl - Acquired write data lock for '[, Privat, Download 3.pdf]'
13:49:56.939 [Thread-130] TRACE o.c.frontend.fuse.ReadWriteAdapter - rename /Privat/Download.pdf to /Privat/Download 3.pdf
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.DataWLockImpl - Released write data lock for '[, Privat, Download 3.pdf]'
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.PathWLockImpl - Released write path lock for '[, Privat, Download 3.pdf]'
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat]'
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.DataWLockImpl - Released write data lock for '[, Privat, Download.pdf]'
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.PathWLockImpl - Released write path lock for '[, Privat, Download.pdf]'
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat]'
13:49:56.939 [Thread-130] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
**13:49:56.941 [Thread-130] ERROR o.c.frontend.fuse.ReadWriteAdapter - rename /Privat/Download.pdf to /Privat/Download 3.pdf failed.**
**java.nio.file.ReadOnlyFileSystemException: null**
**	at org.cryptomator.cryptofs.ReadonlyFlag.assertWritable(ReadonlyFlag.java:44)**
**	at org.cryptomator.cryptofs.CryptoFileSystemImpl.move(CryptoFileSystemImpl.java:503)**
**	at org.cryptomator.cryptofs.MoveOperation.move(MoveOperation.java:35)**
**	at org.cryptomator.cryptofs.CryptoFileSystemProvider.move(CryptoFileSystemProvider.java:336)**
**	at java.base/java.nio.file.Files.move(Files.java:1421)**
**	at org.cryptomator.frontend.fuse.ReadWriteAdapter.rename(ReadWriteAdapter.java:212)**
**	at jnr.ffi.provider.jffi.NativeClosureProxy$$impl$$6.invoke(Unknown Source)**
13:49:56.950 [Thread-131] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:56.950 [Thread-131] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat]'
13:49:56.950 [Thread-131] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[, Privat, Download.pdf]'
13:49:56.950 [Thread-131] TRACE o.c.f.fuse.locks.DataRLockImpl - Acquired read data lock for '[, Privat, Download.pdf]'
13:49:56.950 [Thread-131] TRACE o.c.frontend.fuse.ReadOnlyAdapter - getattr /Privat/Download.pdf (lastModifiedTime: 2016-09-30T13:57:36Z, lastAccessTime: 2019-10-11T09:18:09.179136Z, creationTime: 2016-09-30T13:57:36Z, isRegularFile: true, isDirectory: false, isSymbolicLink: false, isOther: false, size: 92006, fileKey: (dev=1000007,ino=1356126))
13:49:56.951 [Thread-131] TRACE o.c.f.fuse.locks.DataRLockImpl - Released read data lock for '[, Privat, Download.pdf]'
13:49:56.951 [Thread-131] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat, Download.pdf]'
13:49:56.951 [Thread-131] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[, Privat]'
13:49:56.951 [Thread-131] TRACE o.c.f.fuse.locks.PathRLockImpl - Released read path lock for '[]'
13:49:57.153 [Thread-132] TRACE o.c.f.fuse.locks.PathRLockImpl - Acquired read path lock for '[]'
13:49:57.153 [Thread-132] TRACE o.c.f.fuse.locks.DataRLockImpl - Acquired read data lock for '[]'
13:49:57.153 [Thread-132] TRACE o.c.frontend.fuse.ReadOnlyAdapter - getattr / (lastModifiedTime: 2018-06-01T19:43:31Z, lastAccessTime: 2019-10-08T15:00:33.638469Z, creationTime: 2017-09-14T13:34:15Z, isRegularFile: false, isDirectory: true, isSymbolicLink: false, isOther: false, size: 320, fileKey: (dev=1000007,ino=1303723))

I see. The problem is that under Catalina permissions are reported incorrectly. We’ve implemented a workaround in Cryptomator 1.4.16:

We failed to update our version checker :see_no_evil: You should now see that an update is available. Sorry!

Thank you very much, it’s working now! :smile: :+1:

4 posts were split to a new topic: Error -36 when writing to vault located on WebDAV mount

Had the same issue. Running macOS 10.15. After updating FUSE to 3.10.3 and Cryptomator to 1.4.16 I was able to add new files to my vault.

© 2020 Skymatic GmbH • Privacy PolicyImpressum