So erkennt Nextcloud Ihre unkonventionell hinzugefügten Dateien

Geschrieben von: Sven
Veröffentlicht am: 23.09.2019, 14:22 Uhr

Es kann viele Gründe geben, Dateien auch über einen unkonventionellen Weg in die Benutzerordner von Nextcloud zu kopieren. Dies könnte beispielsweise per FTP oder über ein Skript ablaufen. In dieser Anleitung wird gezeigt, wie Sie Nextcloud auch Dateien und Verzeichnisse erkennen lassen können, die über einen nicht vorgesehenen Weg in einen Nutzerordner gelangt sind.

Möglichkeit 1: Erkennung in der Konfigurationsdatei aktivieren

Damit Nextcloud sozusagen immer nach neuen Dateien Ausschau hält, die über nicht vorgesehene Wege dazugekommen sind, gehen Sie wie folgt vor:

Laden Sie sich per FTP die Datei config.php aus dem Ordner „config“ Ihres Nextcloud Verzeichnisses herunter und öffnen Sie diese mit einem einfachen Texteditor wie z. B. Notepad++.

Fügen Sie nun die Zeile

'filesystem_check_changes' => 1,

in die config.php Datei ein, wie auf der nachfolgenden Abbildung zu sehen. Laden Sie diese nach dem Speichern wieder an die selbe Stelle auf Ihren Webspace hoch und überschreiben die alte Datei.

config.php

Hinweis: Wenn Sie später die Option (vorübergehend) wieder deaktivieren möchten, reicht es, den Wert von „1“ auf „0“ zu ändern.

Ist die Funktion aktiv, kann der betroffene Nutzer, nach dem Login in seinen Account, die neuen Dateien und Ordner i. d. R. sofort sehen. Die Berechnung des benötigten Speicherplatzes und die vollständige Indexierung in Nextcloud kann ggf. aber erst zu einem späteren Zeitpunkt angestoßen werden. Sie müssen sich aber nicht selbst darum bemühen, dass der Prozess gestartet wird, dies geschieht automatisch z. B. bei einem der nächsten Seitenaufrufe. Bis zur vollständigen Erkennung der Dateien kann der Speicherplatzbedarf der betroffenen Ordner nicht ermittelt werden.

Größe des Verzeichnisses ist noch nicht bekannt

Unter Umständen könnte Nextcloud eine Weile lang langsamer reagieren und generell minimal träger wirken, als wenn die Option deaktiviert wäre.

Möglichkeit 2: Dateierkennung im Terminal anstoßen (Root-Rechte nötig)

In diesem Fall bestimmen Sie selbst ganz genau, wann bei welchem Nutzer die Dateien gescannt werden. Wenn Sie nur ausnahmsweise mal einen Scan durchführen möchten, können Sie den entsprechenden Befehl über das Terminal ausführen.

Allerdings benötigen Sie hierfür Root-Rechte, die Sie z. B. bei einem Linux vServer erhalten. Die nachfolgend genannten Befehle gelten für Ubuntu und können in Teilen bei anderen Distributionen abweichen. Loggen Sie sich also zuerst per SSH auf Ihrem Server ein.

Beispiel: Dateien aller Nutzer scannen

Um die Dateien und Ordner von allen Benutzern (hier im Beispiel insgesamt 3) direkt in einem Schwung zu scannen, wechseln Sie zuerst in Ihr das Hauptverzeichnis Ihrer Nextcloud Instanz.

cd /vollstaendiger/pfad/ihrer/nextcloud-instanz

Hier im Beispiel wäre das:

cd /var/www/html/nextcloud

Geben Sie nun im Anschluss den nachfolgenden Befehl ein.:

sudo -u www-data php occ files:scan --all

Dateien aller Nutzer über das Terminal scannen

Je nach Menge der zu scannenden Dateien kann hier eine ganze Weile vergehen. Am Ende gibt Ihnen das Terminal ein Ergebnis aus, wie hier auf dem Screenshot zu sehen. Ab dem Moment sind die Dateien alle in Nextcloud eingelesen und können wie gewohnt verwendet werden.

Beispiel: Dateien eines einzelnen Nutzers scannen

Wenn Sie nur die Dateien von einem bestimmten Nutzer scannen möchten, gehen Sie wie folgt vor:

Wechseln Sie zuerst wie oben beschrieben mit dem Befehl „cd“ in Ihr Nextcloud Verzeichnis und führen dann den nachfolgenden Befehl aus:

sudo -u www-data php occ files:scan BENUTZERNAME

Dateien einzelner Nutzer über das Terminal scannen

Wichtig ist, dass Sie hier die korrekte Schreibweise des Nutzernamens verwenden. Exakt so, wie Sie diesen in der Benutzerverwaltung im Administrator Account in der Spalte „Benutzername“ ablesen können (Screenshot unten). Ansonsten werden 0 Verzeichnisse und 0 Dateien gefunden, wie im oberen Bereich des Screenshots (oben) zu sehen.

Nextcloud Benutzerverwaltung

Weitere Optionen finden Sie in der offiziellen Dokumentation von Nextcloud.

Allgemeine Hinweise:

Bei der Methode, Dateien auf irreguläre Art in ein Benutzerkonto zu kopieren, kann es passieren, dass mehr Speicher belegt wird, als zugeteilt wurde. Das hat dann zur Folge, dass dem Nutzer alle Schreibrechte entzogen werden, bis er ausreichend Dateien gelöscht hat. Das sieht dann wie folgt aus:

Überfüllter Nextcloud Account

Unter dem Punkt „Aktivität“ (Blitzsymbol) finden sich keine Einträge zu den neuen Dateien, wie dies normalerweise üblich ist.

Es gibt einige Dateien, wie beispielsweise die „.htaccess“ Datei, diese kann in der Regel in Nextcloud nicht verwaltet werden. Über andere Wege können Sie diese Dateien zwar in ein Nutzerverzeichnis verschieben, diese können aber nicht gesehen und auch nicht gelöscht werden. Dies kann dafür sorgen, dass Sie ganze Verzeichnisse nicht mehr über Nextcloud löschen können.

Falls Sie die Serverseitige Verschlüsselung aktiviert haben, werden nach aktuellem Stand (Nextcloud 16) nur Dateien verschlüsselt, die Sie über den regulären Weg in Nextcloud eingefügt haben.

Kommentare: (5)

Christopher Frey
18.08.2021, 14:40 Uhr
Leider funktioniert keiner der Möglichkeiten bei mir.
Möglichkeit 1 habe ich hinzugefügt, aber nichts passiert.

19.08.2021, 13:51 Uhr
Hi Christopher,

vielleicht liegen die einzulesenden Dateien nicht an der korrekten Stelle? Sie müssen dort liegen, wo auch die anderen Dateien des Users zu finden sind:

nextcloud/data/DeinUser/files

Gruß

Sven
https://www.hostflash.de

Michael
09.10.2022, 15:59 Uhr
Danke, Sven, das war wirklich hilfreich!

Ich habe Nextcloud auf einem Raspberry Pi laufen (NextcloucPi) und hatte Probleme mit ein paar Dateien / Ordnern, die nicht korrekt eingelesen waren. Die waren zwar vorhanden, wurden aber in der Cloud nicht angezeigt. (Ich hatte ein Image der SD-Karte zurückgespielt und da stimmte die Datenbank auf dem Image nicht mehr exakt mit den einen Tag später vorhandenen Daten überein. Ich musste online alle Daten löschen und dann alles erneut über den Client hochladen. Doch selbst dann waren ganze Ordner online nicht mehr sichtbar und ein paar Fotos "verloren".)

Über SSH mit dem Pi verbunden läuft nun nach Eingabe des Befehls sudo -u www-data php occ files:scan benutzername alles anscheinend wieder korrekt. Wie bin ich froh! :)

Ich werde diesen Befehl in Zukunft immer wieder mal ausführen. Oder wäre es sinnvoll, diesen Befehl sogar als Cron-Job z.B. einmal die Woche nachts durchlaufen zu lassen, um allfällig entstandene Inkonsistenzen zu beseitigen?

Nochmals vielen Dank!

Gruss, Michael

09.10.2022, 20:55 Uhr
Hallo Michael,

danke für deinen Kommentar. Das freut mich natürlich sehr, dass dir meine Anleitung weitergeholfen hat.

Aber solange du nicht ständig Dateien auf ungewöhnlichem Wege hinzufügst, würde ich es für unnötig halten, dies als Cron-Job einzurichten.

Denn im normalen Betrieb solllte das Problem ja eher nicht auftreten. Images spielst man ja normalerweise auch nicht ständig zurück.

Ich würde eher dazu raten, auf einem gesonderten Laufwerk ein Backup der wichtigen Dateien zu erstellen, um diese im Notfall wiederherstellen zu können.

Gruß

Sven
https://www.hostflash.de

Michael
09.10.2022, 22:36 Uhr
Hallo Sven

Ja, da hast du auch wieder recht. Manchmal denkt man halt, dass man solche Probleme in Zukunft grundsätzlich vermeiden möchte und tendiert dann dazu, übers Ziel hinauszuschiessen.

Jedenfalls kenne ich jetzt eine Möglichkeit, solche Probleme zu lösen.

Ich mache jetzt mal ein Voll-Backup übers Web-Panel des NextcloudPi (auf ein zweites Laufwerk). Es gibt dort auch die Möglichkeit, Snapshots einzurichten (inkrementell oder differentiell, bin mir nicht sicher), die mit rsync laufen sollen. Dann bräuchte ich nur ab und zu ein Voll-Backup. Da muss ich mich aber auch noch schlau machen, wie das alles funktioniert und was am sinnvollsten ist. Kommt Zeit, kommt Rat.

Nochmals vielen Dank und alles Gute.

Gruss
Michael

Kommentar schreiben:

5000 Zeichen übrig
Hinweise zur Verarbeitung Ihrer Angaben und Widerspruchsrechte finden Sie in unserer Datenschutzerklärung.