ownCloud 9 failed to open dir

ownCloud Homepage

Ich habe ownCloud 9 bei all-inkl.com installiert und hatte dabei Probleme mit dem tmp-Verzeichnis.

Der Fehler war dank des all-inkl.com Supports schnell behoben, was mich natürlich sehr freute. Wenn Ihr ebenfalls das Problem und bisher keine zufriedenstellende Lösung dafür habt, könnte es sein, dass sich das mit folgender Anleitung ändert.

Der Fehler lässt sich durch den Eintrag einer zusätzlichen Zeile in die config.php beheben.

Stellt sicher, dass der FTP-Nutzer Schreibrechte auf die Datei hat. Dies ist üblicherweise nicht der Fall, kann aber leicht geändert werden. Meldet Euch im KAS (Kundenadministrationssystem) an und klickt im Menü auf der linken Seite auf den Eintrag Tools.

Im Untermenü klickt Ihr dann auf Besitzrechte. Im sich daraufhin öffnenden Dialog müsst Ihr den FTP-Benutzer auswählen und den Pfad zu Eurer ownCloud-Installation eingeben, zum Beispiel /beispielordner/owncloud/. Setzt anschließend den Haken bei Rekursiv .

Habt Ihr auf die Schaltfläche Besitzrechte jetzt setzen geklickt, legt Ihr anschließend den Ordner /beispielordner/owncloud/tmp in Eurem FTP-Programm an. Dann öffnet Ihr die Datei /beispielordner/owncloud/config/config.php im Bearbeiten-Modus.

Alternativ könnt Ihr die config.php auch herunterladen, lokal bearbeiten und anschließend wieder hochladen. Ist die Datei im Editor geladen, kommt es auf das Array $CONFIG und dessen schließende Klammer an.

$CONFIG = array (
  ...
);

Fügt der Datei die Zeile $CONFIG['tempdirectory'] = '/beispielordner/owncloud/tmp/'; hinzu. Fügt nur diese eine Zeile hinzu und lasst den übrigen Inhalt unverändert, sodass Ihr im Editor anschließend Folgendes seht.

$CONFIG = array (
  ...
);
$CONFIG['tempdirectory'] = '/beispielordner/owncloud/tmp/';

Speichert die geänderte Datei auf dem Webspace und gewährt anschließend dem PHP-User im KAS unter Tools wieder rekursive Besitzrechte auf /beispielordner/owncloud/. Das ist wichtig – vergesst Ihr das, hagelt es anschließend Fehlermeldungen und ownCloud ist unbenutzbar!

Wenn Ihr die Anleitung richtig nachvollzogen habt, sollten im ownCloud-Administrator-Bereich zukünftig keine Fehlermeldungen wie diese mehr zu sehen sein:

Error PHP opendir(/tmp): failed to open dir: Permission denied at /www/htdocs/w0000000/beispielordner/owncloud/lib/private/tempmanager.php#187

2 Kommentare

  1. Vielen Dank für die tolle Anleitung. Die Fehlermeldung hat mich schon seit Ewigkeiten genervt. Schön, dass die Lösung so einfach ist, wenn man denn weiß, woran man stellen muss.

    Eine kleine Ergänzung hätte ich allerdings noch. Ich bin zunächst 1:1 der Anleitung gefolgt und habe den tmp-Ordner im ownCloud-Installationsverzeichnis angelegt. Das mochte der neue Integrity Check allerdings gar nicht, da er für die temporären Dateien, die sich dann in diesem Ordner ansammelten, keine passenden Hash-Werte hatte. Statt der tmp-Fehlermeldung bekam ich dann laufend die Mitteilung, dass einige Dateien den Integritätscheck nicht bestanden hätten.

    Daher habe ich in den tmp-Ordner dann ähnlich wie den data-Ordner im Wurzelverzeichnis des Webspaces abseits des ownCloud-Installationsverzeichnisses angelegt. Seitdem läuft alles rund.

    • Hallo Thorsten, schön, dass sie dir ein wenig geholfen hat – ich danke meinerseits für deine Ergänzung und wünsche dir einen guten Start in die Woche.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.