File by id xxxxx not found Fehler

Hey zusammen,

wir haben unsere NextCloud vor ein paar tagen von einem uberspace Server auf einen Strato V-Server umgezogen. Die Datenbank haben wir dabei einfach kopiert und umgezogen.
OS: Ubuntu 22.04

Wir haben unsere neue NextCloud innerhalb eines Docker Stacks mit den folgenden Images aufgesetzt:
Nextcloud:latest
redis:latest
mariakdb:11.4

Die user Ordner liegen innerhalb des data Verzeichnisses. Die gruppen Ordner haben wir wie folgt gemountet
/srv/docker/nextcloud/grp-data:/mnt/grp-data
Die Gruppenordner verwalten wir über das Externe Speicher Addon. Dabei haben wir diese als Lokalen Ordner gemountet.
Das Problem ist das wir seit dem Umzug immer wieder den folgenden Fehler bekommen:

“Exception”: “Sabre\DAV\Exception\ServiceUnavailable”,
“Message”: “File by id 393555 not found”,
“Code”: 0,

Wir haben schon einen filescan gemacht. Was können wir machen um diesen Fehler zu beheben und den Filecache vielleicht auch komplett neu einzulesen? Und gibt es eine Möglichkeit das wir die Shared Files also quasi die Links nicht verlieren bzw. vielleicht auch händisch ummappen können?

Vielen Dank schon mal für jede Hilfe :slight_smile:

Hallo @lmall, willkommen in den Foren der Anwender-Gemeinschaft von Nextcloud! :handshake:

für server_migration würde ich empfehlen server migration Manual zu folgen. Nachdem es jetzt durch ist und es darum geht die Folgen zu heilen würde ich kontrollieren was zu Fehler führt - sind die problematischen Files temporär (Zugriffsfehler) oder dauerthaft nicht vorhanden - das wäre zu erwarten wenn sie sich nach dem Migration an einem anderen Ort ligen (files werden in der DB ausgehen von DataDir gespeichert/verlinkt) sofern sich die Pfade verändert haben muss du diese entweder korrigieren oder mit occ occ files:scan wieder “einlesen”. Shares sind an der eindeutigen file id “festgemacht” sprich wenn die Datei im Storage gefunden wird ist auch die Freigabe wieder gut, sonst muss diese neu eingerichtet werden - es gibt apps wie cfg_share_links die es erlauben die alten Werte wieder zu nutzen

Hi @wwe,
also wir haben bei unserer Migration die Daten in ein anderes Verzeichnis verschoben. Daher macht es sinn das die Cloud sie nicht findet. Einen FileScan haben wir bereits gemacht. Die Frage ist jetzt nur wie wir das ganze wieder “retten” :slight_smile: . Macht es sinn die DB Tabellen (filecache usw.) zu löschen und einen erneuten filescan laufen zu lassen? Dann müssten wir ja die ganzen neuen Datei Orte haben oder?
LG

Tritt das Problem nur bei einzelnen Dateien oder bei ganzen Ordnern oder Mountpoints auf? Wenn es nur einzelne Dateien sind, dann kann es an gewisse Probleme wie falsche Rechte im Dateisystem weniger liegen.

Du könntest versuchen den Filecache neu aufzubauen. Schaue vorher im Internet welche Gefahren das bringen kann. Aber du hast ja bestimmt ein Backup der Datenbank.

php occ files:cleanup
php occ files:scan --all

Dokumentation

Auch kannst du mal schauen, ob die Datei, die du fehlerhaft aufgerufen hast, überhaupt im Filesystem und in der Datenbank existiert. Poste gerne echte Beispiele.

ja sicher kannst du die Datein einfach wieder einlesen… dann sind sie “neu” in der Cloud. Ich habe zuerst verstanden dass du auch Metadaten wie Freigaben retten möchtest - dann musst du nach Wegen suchen die Einträge in der DB mit dem FS wieder zu verbinden… ich hätte hier versucht die Pfade an die DB anzupassen… wenn das nicht wichtig ist dann folge dem Hinweis von devnull