Trying to run a gocryptfs
encrypted file system mount within a rclone mount
remote file system itself accessing the remote host over SFTP, I ran into an annoying issue that writes would fail with a “Operation not permitted” error, but the file in question would appear within the gocryptfs file system (so clearly something was working).
Slothing through the output of running rclone mount
with -vv
but without --daemon
to try to find clues as to what was actually going on, I came across these two lines:
yyyy/mm/dd hh:mm:ss ERROR : <encrypted filename>: WriteFileHandle: ReadAt: Can't read and write to file without --vfs-cache-mode >= minimal yyyy/mm/dd hh:mm:ss DEBUG : &{<encrypted filename> (w)}: >Read: read=0, err=operation not permitted
Well, there’s the error being returned, and the cause.
Per the documentation, rclone mount --vfs-cache-mode
takes one of off
, minimal
, writes
, full
; and the default, lo and behold, is off
, which is clearly less than minimal
.
Adding a --vfs-cache-mode minimal
to the end of the rclone mount
command seems to have fixed it, insofar as the error is gone and writes appear to go through fully as intended.