External storage SMB share won't sync to Desktop Client

I have been beating my head against a wall for the greater part of 8 hours trying to get Google to answer this question. External storage share is visible in the web GUI, the share can be manipulated and holds files as expected. The desktop client, however, is having none of it.

Expected behaviour

External storage folder will sync with the desktop client

Actual behaviour

Every few minutes I get a desktop notification saying the share can’t be synced and I should look at the logs. In the client, the share shows up on the Not Synced tab and the issue is ‘server reported no etag’

Steps to reproduce

  1. Mount external storage from a desktop or server
  2. After verifying it works in the web portal (it always does), wait for the desktop client to sync
  3. Client throws error

Server configuration

Operating system: Ubuntu 20.04.6

Web server: Apache 2.4.41

Database: MariaDB 10.3.39

PHP version: 7.4

ownCloud version: 10.8.0.4

Storage backend (external storage): External storage is on a windows server 2022 share

Client configuration

Client version: 5.2.1.13040

Operating system: Windows 11

OS language: English

Qt version used by client package (Linux only, see also Settings dialog): 6.4.3

Client package (From ownCloud or distro) (Linux only): from owncloud

Installation path of client:C:\Program Files\ownCloud

Logs

Please use Gist () or a similar code paster for longer
logs.

Template for output < 10 lines

  1. Client logfile: Output of owncloud --logwindow or owncloud --logfile log.txt
    (On Windows using cmd.exe, you might need to first cd into the ownCloud directory)
    (See also ) Neither of those commands produces outputs

  2. Web server error log:

  3. Server logfile: ownCloud log (data/owncloud.log):

{“reqId”:“longstringofnumbers”,“level”:3,“time”:“2024-02-08T19:42:06+00:00”,“remoteAddr”:“10.x.x.x”,“user”:“me”,“app”:“no app in context”,“method”:“PROPFIND”,“url”:“/owncloud/remote.php/dav/files/me/”,“message”:“Exception: {"Exception":"OCP\\Files\\StorageNotAvailableException","Message":"Invalid login","Code":0,"Trace":"#0 \/var\/www\/owncloud\/apps\/files_external\/lib\/Lib\/Storage\/SMB.php(364): OCA\\Files_External\\Lib\\Storage\\SMB->getFileInfo()\n#1 \/var\/www\/owncloud\/apps\/files_external\/lib\/Lib\/Cache\/SmbCacheWrapper.php(81): OCA\\Files_External\\Lib\\Storage\\SMB->stat()\n#2 \/var\/www\/owncloud\/apps\/files_external\/lib\/Lib\/Cache\/SmbCacheWrapper.php(52): OCA\\Files_External\\Lib\\Cache\\SmbCacheWrapper->canAccess()\n#3 \/var\/www\/owncloud\/lib\/private\/Files\/Cache\/Wrapper\/CacheWrapper.php(65): OCA\\Files_External\\Lib\\Cache\\SmbCacheWrapper->get()\n#4 \/var\/www\/owncloud\/lib\/private\/Files\/Cache\/Wrapper\/CacheWrapper.php(65): OC\\Files\\Cache\\Wrapper\\CacheWrapper->get()\n#5 \/var\/www\/owncloud\/lib\/private\/Files\/View.php(1489): OC\\Files\\Cache\\Wrapper\\CacheWrapper->get()\n#6 \/var\/www\/owncloud\/apps\/dav\/lib\/Files\/RootCollection.php(69): OC\\Files\\View->getFileInfo()\n#7 \/var\/www\/owncloud\/lib\/composer\/sabre\/dav\/lib\/DAVACL\/AbstractPrincipalCollection.php(119): OCA\\DAV\\Files\\RootCollection->getChildForPrincipal()\n#8 \/var\/www\/owncloud\/apps\/dav\/lib\/Tree.php(67): Sabre\\DAVACL\\AbstractPrincipalCollection->getChild()\n#9 \/var\/www\/owncloud\/lib\/composer\/sabre\/dav\/lib\/DAV\/Server.php(971): OCA\\DAV\\Tree->getNodeForPath()\n#10 \/var\/www\/owncloud\/lib\/composer\/sabre\/dav\/lib\/DAV\/Server.php(1661): Sabre\\DAV\\Server->getPropertiesIteratorForPath()\n#11 \/var\/www\/owncloud\/lib\/composer\/sabre\/dav\/lib\/DAV\/Server.php(1646): Sabre\\DAV\\Server->writeMultiStatus()\n#12 \/var\/www\/owncloud\/lib\/composer\/sabre\/dav\/lib\/DAV\/CorePlugin.php(346): Sabre\\DAV\\Server->generateMultiStatus()\n#13 \/var\/www\/owncloud\/lib\/composer\/sabre\/event\/lib\/WildcardEmitterTrait.php(89): Sabre\\DAV\\CorePlugin->httpPropFind()\n#14 \/var\/www\/owncloud\/lib\/composer\/sabre\/dav\/lib\/DAV\/Server.php(472): Sabre\\DAV\\Server->emit()\n#15 \/var\/www\/owncloud\/lib\/composer\/sabre\/dav\/lib\/DAV\/Server.php(253): Sabre\\DAV\\Server->invokeMethod()\n#16 \/var\/www\/owncloud\/apps\/dav\/lib\/Server.php(334): Sabre\\DAV\\Server->start()\n#17 \/var\/www\/owncloud\/apps\/dav\/appinfo\/v2\/remote.php(31): OCA\\DAV\\Server->exec()\n#18 \/var\/www\/owncloud\/remote.php(165): require_once(‘\/var\/www\/ownclo…’)\n#19 {main}","File":"\/var\/www\/owncloud\/apps\/files_external\/lib\/Lib\/Storage\/SMB.php","Line":193}”}

I cannot say more than:

I’m not a sync expert, and I’m not sure whether you can access external mounts with the sync client.

2 Likes

I had that thought as well but the share shows up in the web portal, I can up/download files from it. Those files show up on the share on the server. Literally every part works except the desktop client.

Like @alfredb, I don’t know if the sync client can access external mounts. Is there ownCloud desktop client documentation that suggests to you that external mounts should be synchronized or otherwise accessible from the desktop?

1 Like

I would understand if the client could explicitly not access the external storage mounts; I would expect the client not to throw errors if this was intentionally done. That error notification pops up every 2-5 minutes without fail until I remove the mount which leads me to believe that something is genuinely wrong.

That may be the case. Hopefully someone who uses external mounts will see this topic and be able to offer you some additional perspective.

1 Like

Hey,

this looks to me like a heavily outdated version of ownCloud (this has been released on 2021-07-15).

Maybe you could update to the most recent version 10.13.4 first to see if this is reporting the status of the SMB shares in a better way to the desktop client?