Owncloud - File is locked - Datei-Sperre entfernen: Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
K (Manuelles Ausschalten des Sperrstatus)
K (Fehler beim Löschen von Dateien oder Verzeichnissen aus Owncloud)
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:
  
 
==Fehler beim Löschen von Dateien oder Verzeichnissen aus Owncloud==
 
==Fehler beim Löschen von Dateien oder Verzeichnissen aus Owncloud==
Neulich habe ich versucht, eine Datei von meiner [https://owncloud.org Owncloud] zu löschen. Zunächst versuchte ich es im Client-Programm auf meinem Rechner. Lokal ließ sich die Datei löschen, im Synchronisationsprotokoll und in den Server-Aktivitäten des Client-Fensters wurde mir das auch bestätigt. Aber als ich mich routinemäßig ins Web-Interface einloggte, um Updates vorzunehmen, viel mir auf, dass die lokal auf dem PC als gelöscht gemeldeten Dateien bzw. Ordner noch mit Inhalten aufgelistet wurden.
+
Neulich habe ich versucht, eine Datei von meiner [https://owncloud.org Owncloud] zu löschen. Zunächst versuchte ich es im Client-Programm auf meinem Rechner. Lokal ließ sich die Datei löschen, im Synchronisationsprotokoll und in den Server-Aktivitäten des Client-Fensters wurde mir das auch bestätigt. Aber als ich mich routinemäßig ins Web-Interface einloggte, um Updates vorzunehmen, fiel mir auf, dass die lokal auf dem PC als gelöscht gemeldeten Dateien bzw. Ordner noch mit Inhalten aufgelistet wurden.
  
 
Das Löschen im Web-Interface wurde mit einem Fehler am oberen Seitenrand quittiert: <span style="padding:0.2em 0.5em; background-color: orange; border-radius:3px;">Fehler beim Löschen von Dateien.</span>
 
Das Löschen im Web-Interface wurde mit einem Fehler am oberen Seitenrand quittiert: <span style="padding:0.2em 0.5em; background-color: orange; border-radius:3px;">Fehler beim Löschen von Dateien.</span>
Zeile 40: Zeile 40:
  
 
=Permanente Lösung bei regelmäßigem Auftreten=
 
=Permanente Lösung bei regelmäßigem Auftreten=
 +
Manchmal habe ich durch schnell nacheinander ausgeführte Datei-Updates (hochladen einer Datei) den Fehler provozieren können, dass ich nahezu bei jeder Session den Sperrstatus zurücksetzen musste. Das kann nerven...
 +
 
Sollte das Problem häufiger Auftreten, kann man eine dauerhafte Lösung durch Abschalten der Dateisperre (file locking) herbei führen. Aber Abschalten ist eigentlich keine echte Lösung, nur das Umgehen von Ursachen.
 
Sollte das Problem häufiger Auftreten, kann man eine dauerhafte Lösung durch Abschalten der Dateisperre (file locking) herbei führen. Aber Abschalten ist eigentlich keine echte Lösung, nur das Umgehen von Ursachen.
  
Zeile 47: Zeile 49:
 
<syntaxhighlight lang="php">'filelocking.enabled' => false,</syntaxhighlight>
 
<syntaxhighlight lang="php">'filelocking.enabled' => false,</syntaxhighlight>
  
==Links==
+
==Quellen und Links==
 
* https://owncloud.org
 
* https://owncloud.org
 
* [https://central.owncloud.org/t/file-is-locked-how-to-unlock/985 Owncloud-FAQ zu diesem Thema]
 
* [https://central.owncloud.org/t/file-is-locked-how-to-unlock/985 Owncloud-FAQ zu diesem Thema]

Aktuelle Version vom 24. Januar 2019, 15:12 Uhr

Manuelles Zurücksetzen des Sperrstatus

Fehler beim Löschen von Dateien oder Verzeichnissen aus Owncloud

Neulich habe ich versucht, eine Datei von meiner Owncloud zu löschen. Zunächst versuchte ich es im Client-Programm auf meinem Rechner. Lokal ließ sich die Datei löschen, im Synchronisationsprotokoll und in den Server-Aktivitäten des Client-Fensters wurde mir das auch bestätigt. Aber als ich mich routinemäßig ins Web-Interface einloggte, um Updates vorzunehmen, fiel mir auf, dass die lokal auf dem PC als gelöscht gemeldeten Dateien bzw. Ordner noch mit Inhalten aufgelistet wurden.

Das Löschen im Web-Interface wurde mit einem Fehler am oberen Seitenrand quittiert: Fehler beim Löschen von Dateien.

Im Administrationsbereich von Owncloud fand sich eine solche bzw. ähnliche Fehlermeldung:


FatalwebdavException: {"Message":"HTTP\/1.1 503 System in maintenance mode.","Exception":"Sabre\\DAV\\Exception\\ServiceUnavailable","Code":0,"Trace":"#0 [internal function]: OCA\\DAV\\Connector\\Sabre\\MaintenancePlugin->checkMaintenanceMode(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#1 \/hp\/bs\/aa\/iu\/www\/domain\/owncloud\/3rdparty\/sabre\/event\/lib\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\n#2 \/hp\/bs\/aa\/iu\/www\/domain\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(446): Sabre\\Event\\EventEmitter->emit('beforeMethod', Array)\n#3 \/hp\/bs\/aa\/iu\/www\/domain\/owncloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(248): Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), Object(Sabre\\HTTP\\Response))\n#4 \/hp\/bs\/aa\/iu\/www\/domain\/owncloud\/apps\/dav\/appinfo\/v1\/webdav.php(57): Sabre\\DAV\\Server->exec()\n#5 \/hp\/bs\/aa\/iu\/www\/domain\/owncloud\/remote.php(164): require_once('\/hp\/bs\/aa\/iu\/ww...')\n#6 {main}","File":"\/hp\/bs\/aa\/iu\/www\/domain\/owncloud\/apps\/dav\/lib\/Connector\/Sabre\/MaintenancePlugin.php","Line":84,"User":"AUser"}2017-02-14T14:21:03+00:00

Der Fehler weist auf eine Datei-Sperre hin. Diese kann behoben werden, indem man sich auf der Datenbank einlogged und in der Tabelle oc_file_locks alle Einträge löscht.

Dazu muss Owncloud zunächst in den Wartungsmodus gebracht werden.

Owncloud in den Wartungsmodus versetzen

Um Owncloud in den Wartungsmodus zu bringen loggen wir uns per FTP auf unseren Webspace ein und editieren die Datei config.php im Verzeichnis /config der Owncloud-Installation. Zunächst suchen wir im Quelltext nach einer Zeile mit dem Inhalt

'maintenance' => false,

In meiner Installation war diese Zeile nicht zu finden. Ich habe sie daher als vorletzte Anweisung eingefügt, den Wert false auf true gesetzt und die Datei anschließend auf dem Webspace gespeichert.

Owncloud zeigt nun auf der Login-Seite einen entsprechenden Wartungshinweis an. Auch der Client auf dem Rechner ist nun inaktiv.

Im nächsten Schritt löschen wir alle Einträge aus der Tabelle oc_file_locks der Owncloud-Datenbank.

Einträge aus der Datenbank löschen

Die Datenbank erreichen wir über das Web-Interface von PhpMyAdmin. Dieses Tool wird meist von den Webhostern mit angeboten, um Datenbanken über das Internet administrieren zu können.

Nach dem Login auf der Datenbank können wir im SQL-Eingabe-Bereich direkt den Befehl zum Löschen des Tabelleninhaltes eingeben und ausführen lassen.

DELETE FROM oc_file_locks WHERE 1

Das war es auch schon. Wir loggen uns aus der Datenbank aus.

Wartungsmodus ausschalten

Um den Wartungsmodus von Owncloud auszuschalten und die Cloud-Software wieder zu aktivieren loggen wir uns per FTP auf unseren Webspace ein und editieren die Datei config.php im Verzeichnis /config der Owncloud-Installation. Zunächst suchen wir im Quelltext nach einer Zeile mit dem Inhalt

'maintenance' => true,

Der Wert true in der Anweisungszeile muss auf false gesetzt und die Datei anschließend auf dem Webspace gespeichert werden.

Danach sollte die reguläre Login-Seite von Owncloud beim Aufrufen des Web-Interfaces zu sehen sein. Auch der Owncloud-Client auf dem Rechner sollte nun wieder aktiviert sein.

Permanente Lösung bei regelmäßigem Auftreten

Manchmal habe ich durch schnell nacheinander ausgeführte Datei-Updates (hochladen einer Datei) den Fehler provozieren können, dass ich nahezu bei jeder Session den Sperrstatus zurücksetzen musste. Das kann nerven...

Sollte das Problem häufiger Auftreten, kann man eine dauerhafte Lösung durch Abschalten der Dateisperre (file locking) herbei führen. Aber Abschalten ist eigentlich keine echte Lösung, nur das Umgehen von Ursachen.

Owncloud im Hosting-Paket

Wir können die Dateisperrung deaktivieren, indem wir die Konfigurationsdatei im Verzeichnis /config/config.php bearbeiten:

'filelocking.enabled' => false,

Quellen und Links