I have a vault created over a year ago, used very infrequently, initially created on a Windows machine that no longer exists. The vault is on Dropbox storage. Added the vault to a Linux (Ubuntu) machine, an iPad and iPhone and I can view the files and add/delete just fine across those 3 devices, Dropbox keeps them in sync as expected, no issues.
When I added it to my Mac however, the vault is found, successfully decrypted, and a folder opens up when i click “Reveal”. However, there are no files visible.
If I drag a file from elsewhere into the vault, it copies over and then immediately disappears. The file then appears on my other devices, and is visible on those (Ubuntu, iOS, iPadOS), but completely empty folder on Mac.
If I create a new vault on Mac, again in Dropbox, this behaves correctly. I see the WELCOME.rtf, and when I add a new file on Mac, I can see it. It syncs to other devices, and if I add files on the other devices, they sync and appear on my Mac within a few seconds - exactly as expected.
So there is clearly a problem with this old vault… And yet, it is able to be added to other new devices just fine (the Ubuntu and iPad had Cryptomator added for the first time for this test, after the Mac was misbehaving).
I’m running OSX 15.4.1 on a 2018 Macbook Pro (Intel).
I have tried MacFUSE and Fuse-T both installed via Homebrew, as the volume mount, and then I tried macFUSE 4.10.2 directly (not homebrew). With full uninstall and restarted between.
I have also tried Applescript as the mount.
In all cases, the new vault is fine, the old vault mount, but no files shown but CAN add files (which do the “disappear but sync” thing).
I know I can just move the files from the old vault to the new one, and kill the old one, and maybe that’s what I will do, but I’d like to know why this has happened, as it could happen again…! How can other OS’s work just fine on that vault but not the Mac, might something else weird happen and I really lose data in the future?!
When I run the healthcheck in Cryptomator, it fails, with
Check failed: Traversal of data dir failed. See log for details.
and the logs show this:
23:19:48.356 [App Background Thread 008] WARN o.c.cryptofs.common.BackupHelper - Failed to compare valid /Users/me/Library/CloudStorage/Dropbox/TestVault/masterkey.cryptomator.780ADF7B.bkup with backup file.
java.nio.file.FileSystemException: /Users/me/Library/CloudStorage/Dropbox/TestVault/masterkey.cryptomator.780ADF7B.bkup: Operation not permitted
at java.base/sun.nio.fs.UnixException.translateToIOException(Unknown Source)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source)
at java.base/sun.nio.fs.UnixFileSystemProvider.newFileChannel(Unknown Source)
at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(Unknown Source)
at java.base/java.nio.file.Files.newByteChannel(Unknown Source)
at java.base/java.nio.file.Files.newByteChannel(Unknown Source)
at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(Unknown Source)
at java.base/java.nio.file.Files.newInputStream(Unknown Source)
at java.base/java.nio.file.Files.mismatch(Unknown Source)
at org.cryptomator.cryptofs@2.9.0/org.cryptomator.cryptofs.common.BackupHelper.assertSameContent(BackupHelper.java:68)
at org.cryptomator.cryptofs@2.9.0/org.cryptomator.cryptofs.common.BackupHelper.attemptBackup(BackupHelper.java:59)
at org.cryptomator.desktop@1.17.0/org.cryptomator.ui.keyloading.masterkeyfile.MasterkeyFileLoadingStrategy.loadKey(MasterkeyFileLoadingStrategy.java:78)
at org.cryptomator.desktop@1.17.0/org.cryptomator.ui.health.StartController.verifyVaultConfig(StartController.java:81)
at org.cryptomator.desktop@1.17.0/org.cryptomator.ui.keyloading.KeyLoadingStrategy.use(KeyLoadingStrategy.java:108)
at org.cryptomator.desktop@1.17.0/org.cryptomator.ui.health.StartController.loadKey(StartController.java:73)
at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
23:19:50.392 [pool-3-thread-1] ERROR o.c.cryptofs.health.dirid.DirIdCheck - Traversal of data dir failed.
java.nio.file.FileSystemException: /Users/me/Library/CloudStorage/Dropbox/TestVault/d: Operation not permitted
if I “ls” in terminal on the volume that is mounted, I get:
ls: fts_read: Input/output error
Whereas on a new vault ls lists the files as expected.
This message led me to Cannot see folders and files - #12 by minimalwerk
But this seems to be specific issue with FUSE-T whereas I am using macFUSE, and am only having issue with a singular vault.
I tried that old version of FUSE-T anyway, and that fails completely with
Error Code 4VHF:1S9S:FV7O
org.cryptomator.integrations.mount.MountFailedException: org.cryptomator.jfuse.api.FuseMountFailedException: fuse_new failed
at org.cryptomator.frontend.fuse@5.0.5/org.cryptomator.frontend.fuse.mount.FuseTMountProvider$FuseTMountBuilder.mount(FuseTMountProvider.java:133)
Which is due to being too old, and meant to use a newer FUSE-T version, sends me to 1.0.47 FUSE-T which has the initial issue.
I also see a lot of people voicing issues with FUSE-T, such as https://www.reddit.com/r/Cryptomator/comments/1g3j20x/how_is_fuset_on_mac_these_days/, making me want to stick to macFUSE for now unless this is the only way!
Thanks in advance for any help and ideas!