Ich habe eine Cloud Migriert.
Das heisst auf einem neuem Speicher habe ich NC installiert, die noch benötigten Benutzer erstellt.
Mittels FTP habe ich die Daten von der bisherigen NC Umgebung rüber kopiert.
Dann mit “php occ files:scan --all” eingelesen.
Die Dateien werden nun auch alle angezeigt und können geöffnet werden.
Soweit so gut.
Habe die Tabelle “oc_share” von der bisherigen DB exportiert und in die neue DB importiert.
Logge ich mich nun in die neue NC Umgebung ein, funktioniert noch alles, aber die Freigaben sind nicht ersichtlich.
Was ging da schief.
Hallo @helpmenc,
willkommen in den Foren der Anwender-Gemeinschaft von Nextcloud! 
Leider hast du wichtige Informationen nicht angegeben. Es sind Angaben wie Nextcloud-Version, Webserver-Typ, PHP-Version, Log-Einträge nötig. Benötigte Informationen findest du im Support Template
Davon abgesehen, den Weg den du gewählt hast, wird nicht funktionieren. Dadurch dass du die Dateien kopiert und neu eingelesen hast, haben diese neue IDs und können von der Share Tabelle nicht mehr referenziert werden oder würden im schlimmsten Fall sogar falsche Dateien freigeben.
Das kann nur funktionieren, wenn das komplette Backup wiederhergestellt wird und auch dann sind bestimmte Voraussetzungen zu erfüllen.
Es ist Nc Version 32
Auf einem SharedHosting
PHP 8.4
Ich will nicht die ganze DB kopieren, da darin einiges nicht korrekt ist.
Wie kann ich die neuen ID’s herausfinden für die geteilten Ordner
Ich habe diese Ordner nc32 Freigaben hosted at ImgBB — ImgBB auf der bisherigen NC32 Umgebung.
Die Ordner sehe ich bereits wieder in der neuen NC32 Umgebung, aber wie bringe ich es zu stande, dass die bisherigen Freigaben “URL” auf der neuen NC32 Umgebung auch wieder gehen.
Möchte aber bewusst nicht die ganze DB kopieren. Den die bisherige NC32 hat nicht einwandfrei funktioniert.
Sondern nur die Freigaben und die Benutzer.
Hat niemand mir ein Tipp wie man nur die Freigabe Links aus der bisherige DB übernehmen kann.
Die Aussage von @SysKeeper kann ich nur bestätigen.
Hast Du Dir die Tabelle oc_share einmal genau angeschaut?
Wie stellst Du Dir das überhaupt vor?
Jede Datei und jeder Ordner haben eine neue fileid bekommen. Diese fileid ist in der Tabelle oc_share die Spalte file_source und muss identisch sein.
Die Spalte file_target enthält dann den genauen Pfad zum neu indexierten Ordner oder der Datei. Diesem Pfad musst Du dann das entsprechende alte token zuordnen, also den Schlüssel am Ende des Freigabe-Links (z.B. */index.php/s/SFXb5GC4wXYDKb6).
Zusätzlich müssen noch share_type und permissions korrekt gesetzt werden.
Zum Beispiel share_typ (3) und permissions (31)
(3) Ordner oder Datei wird mit einem Link geteilt (mit Token)
(31) Bearbeitung erlauben + Erstellen erlauben + Löschen erlauben + Weiterverteilen erlauben
Dann müssen auch die Benutzernamen identisch sein in den Spalten uid_initiator und uid_owner. Das könnte man noch aus der alten Datenbanktabelle entnehmen, aber war irgendwo ein Passwort gesetzt, dann hört es hier erst recht auf.
Für ein paar wichtige Freigaben könnte man diesen Weg gehen, aber es besteht immer die Gefahr, dass ein Ordner oder eine Datei durch falsche Zuordnung auch in falsche Hände geraten könnte.
Ich hab das Problem so gelöst
Habe die Freigaben neu erstellt auf der neuen Cloud
Dann von Hand den Token der alten Cloud für die Freigaben in die neue Cloud eingetragen
Nun funktionieren die bisherigen Freigaben weiterhin mit den bisherigen Links.