Office-Dateien verhindern Ordnerzugriff über SMB

Servus,
Ich habe einen privaten Nextcloud 24.0.4-Server in einem separaten debian 11 container auf meinem Proxmox Server laufen. PHP ist in Version 8.0.22 und die MariaDB-Datenbank in Version 10.3.34 und in einem eigenen Container installiert.
Der eigentliche Speicher ist ein TrueNAS-System, das mit der External Storage App über SMB eingebunden wird.
Mich verfolgt seit einiger Zeit ein Fehler, der scheinbar Dateien aus MS Office betrifft. Wenn ich in NC einen Ordner öffne, in dem sich ein kürzlich angelegtes Office-Dokument (Excel/Word/Powerpoint spielt keine Rolle) befindet, werde ich zurück zum root geworfen und folgender Fehler wird angezeigt:


[webdav] Fatal: Icewind\SMB\Exception\Exception: Unknown error (34) for /<Dokumentenpfad/Dokument.docx at <<closure>>

 0. /var/www/html/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Exception/Exception.php line 49
    Icewind\SMB\Exception\Exception::unknown()
 1. /var/www/html/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php line 75
    Icewind\SMB\Exception\Exception::fromMap()
 2. /var/www/html/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php line 92
    Icewind\SMB\Native\NativeState->handleError()
 3. /var/www/html/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php line 351
    Icewind\SMB\Native\NativeState->testResult()
 4. /var/www/html/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeShare.php line 305
    Icewind\SMB\Native\NativeState->getxattr()
 5. /var/www/html/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php line 149
    Icewind\SMB\Native\NativeShare->getAttribute()
 6. /var/www/html/nextcloud/apps/files_external/lib/Lib/Storage/SMB.php line 226
    Icewind\SMB\Native\NativeFileInfo->getAcls()
 7. /var/www/html/nextcloud/apps/files_external/lib/Lib/Storage/SMB.php line 263
    OCA\Files_External\Lib\Storage\SMB->getACL()
 8. /var/www/html/nextcloud/apps/files_external/lib/Lib/Storage/SMB.php line 633
    OCA\Files_External\Lib\Storage\SMB->getFolderContents()
 9. <<closure>>
    OCA\Files_External\Lib\Storage\SMB->getDirectoryContent()
10. /var/www/html/nextcloud/lib/private/Files/Cache/Scanner.php line 410
    iterator_to_array()
11. /var/www/html/nextcloud/lib/private/Files/Cache/Scanner.php line 390
    OC\Files\Cache\Scanner->handleChildren()
12. /var/www/html/nextcloud/lib/private/Files/Cache/Scanner.php line 342
    OC\Files\Cache\Scanner->scanChildren()
13. /var/www/html/nextcloud/lib/private/Files/View.php line 1350
    OC\Files\Cache\Scanner->scan()
14. /var/www/html/nextcloud/lib/private/Files/View.php line 1390
    OC\Files\View->getCacheEntry()
15. /var/www/html/nextcloud/apps/dav/lib/Connector/Sabre/Directory.php line 231
    OC\Files\View->getFileInfo()
16. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/Tree.php line 78
    OCA\DAV\Connector\Sabre\Directory->getChild()
17. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 971
    Sabre\DAV\Tree->getNodeForPath()
18. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 1662
    Sabre\DAV\Server->getPropertiesIteratorForPath()
19. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 1647
    Sabre\DAV\Server->writeMultiStatus()
20. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 346
    Sabre\DAV\Server->generateMultiStatus()
21. /var/www/html/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPropFind()
22. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit()
23. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod()
24. /var/www/html/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
25. /var/www/html/nextcloud/apps/dav/lib/Server.php line 358
    Sabre\DAV\Server->exec()
26. /var/www/html/nextcloud/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
27. /var/www/html/nextcloud/remote.php line 166
    require_once("/var/www/html/n ... p")

PROPFIND /remote.php/dav/files/<Dokumentenpfad>
from 192.168.x.x by  Benutzer at 2022-08-19T10:50:27+02:00

Damit kann ich leider so überhauptnichts anfangen. Lösche ich die bemängelte Datei, kann ich das Verzeichnis wieder öffnen. Umbenennen hilft nicht.

Hatte das schon jemand, oder hat jemand eine Idee, was da falsch laufen könnte?

Danke im Voraus
R’N’L

Hallo zusammen,

ich habe einen Nextcloud-Server (Ubuntu 22.04, PHP 8.1.14, MariaDB 10.6.11), und bin via Google-Suche auf den Thread gestoßen.

Ich binde zwei shares via Samba ein, eines via Synology-NAS und eines via Samba auf Linux.

Bei letzerem (/INFO) hagelt es ähnliche Fehler wie bei RockNLol, z.B. beim Scannen der Dateien:


Starting scan for user 1 out of 4 (brot)
Exception during scan: Unknown error (34) for /INFO
#0 /var/www/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Exception/Exception.php(49): Icewind\SMB\Exception\Exception::unknown()
#1 /var/www/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php(75): Icewind\SMB\Exception\Exception::fromMap()
#2 /var/www/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php(92): Icewind\SMB\Native\NativeState->handleError(
)
#3 /var/www/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeState.php(351): Icewind\SMB\Native\NativeState->testResult(
)
#4 /var/www/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeShare.php(305): Icewind\SMB\Native\NativeState->getxattr()
#5 /var/www/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php(149): Icewind\SMB\Native\NativeShare->getAttri
bute()
#6 /var/www/nextcloud/apps/files_external/lib/Lib/Storage/SMB.php(224): Icewind\SMB\Native\NativeFileInfo->getAcls()
#7 /var/www/nextcloud/apps/files_external/lib/Lib/Storage/SMB.php(261): OCA\Files_External\Lib\Storage\SMB->getACL()
#8 /var/www/nextcloud/apps/files_external/lib/Lib/Storage/SMB.php(631): OCA\Files_External\Lib\Storage\SMB->getFolderContents()
#9 [internal function]: OCA\Files_External\Lib\Storage\SMB->getDirectoryContent()
#10 /var/www/nextcloud/lib/private/Files/Cache/Scanner.php(412): iterator_to_array()
#11 /var/www/nextcloud/lib/private/Files/Cache/Scanner.php(391): OC\Files\Cache\Scanner->handleChildren()
#12 /var/www/nextcloud/lib/private/Files/Cache/Scanner.php(342): OC\Files\Cache\Scanner->scanChildren()
#13 /var/www/nextcloud/lib/private/Files/Utils/Scanner.php(256): OC\Files\Cache\Scanner->scan()
#14 /var/www/nextcloud/apps/files/lib/Command/Scan.php(161): OC\Files\Utils\Scanner->scan()
#15 /var/www/nextcloud/apps/files/lib/Command/Scan.php(217): OCA\Files\Command\Scan->scanFiles()
#16 /var/www/nextcloud/3rdparty/symfony/console/Command/Command.php(255): OCA\Files\Command\Scan->execute()
#17 /var/www/nextcloud/core/Command/Base.php(177): Symfony\Component\Console\Command\Command->run()
#18 /var/www/nextcloud/3rdparty/symfony/console/Application.php(1009): OC\Core\Command\Base->run()
#19 /var/www/nextcloud/3rdparty/symfony/console/Application.php(273): Symfony\Component\Console\Application->doRunCommand()
#20 /var/www/nextcloud/3rdparty/symfony/console/Application.php(149): Symfony\Component\Console\Application->doRun()
#21 /var/www/nextcloud/lib/private/Console/Application.php(213): Symfony\Component\Console\Application->run()
#22 /var/www/nextcloud/console.php(100): OC\Console\Application->run()
#23 /var/www/nextcloud/occ(11): require_once('...')
#24 {main}

Seit dem letzen Update führt das dazu, dass ein Fehler kommt wenn man via Nextcloud-Web-Gui auf die Dateien zugreifen will:

“Dieses Verzeichnis ist nicht verfügbar, bitte die Logdateien überprüfen oder den Administrator kontaktieren.”

Außer diesem Thread komme ich aber nicht sehr viel weiter. Ich vermute dass es eventuell an den xattr’s der Dateien liegt.

Lohnt es sich eventuell ein Issue auf github dafür zu öffnen?

Schönen Tag zusammen,
brot

Ich konnte das Problem bei mir umgehen/beheben, in dem ich die “Überprüft den ACL-Zugriff beim Auflisten von Dateien” Option bei dem Mount deaktiviert habe.

Derzeit sieht es so aus als hätte das keine Auswirkungen auf die sichtbarkeit der Dateien. Ich würde allerdings vermuten, dass hier beim parsen der ACL ausnahmen auftreten die nicht behandelt werden.

Eventuell hiflt das ja künftig jemandem, der auch über den “Unknown error (34)” stolpert.

Schönen Tag noch,
brot

1 Like