Nach einigen Jahren zuverlässigen Betriebs, ist mein USB-Stick an meinem Nextcloud-Rechner kaputt gegangen. Er diente als Datenlaufwerk und war unter /home/pi/daten gemountet. Ich habe einen neuen Stick gekauft und ihn an die gleiche Stelle gemountet. Dann habe ich mit touch die Datei .ocdata angelegt und den Eigentümer auf www-data geändert. Leider bleibt der Fehler. Hat jemand einen Tip? Die Tips im Netz haben bisher nicht geholfen
Ich konnte nun die Datei .ocdata anlegen, und habe den Ordner daten dem Besitzer www-data zugeordnet. Die Meldung ist nun weg. Aber Nextcloud funktioniert absolut nicht. Ich kann mich einloggen, aber das Design der Seite ist total kaputt. Und wenn ich z.B. auf Dateien klicke, kommt ein Fehler:
Der Server konnte die Anfrage nicht fertig stellen.
Sollte dies erneut auftreten, senden Sie bitte die nachfolgenden technischen Einzelheiten an Ihren Server-Administrator.
Weitere Details können im Server-Protokoll gefunden werden.
Technische Details
Entfernte Adresse: 46.165.179.105
Anfragekennung: X6QPG1tjVVAQNYfsg1UW
Typ: OCP\Files\GenericFileException
Code: 0
Nachricht: file_put_contents failed
Datei: /var/www/html/lib/private/Files/Node/File.php
Zeile: 73
Trace
#0 /var/www/html/lib/private/Files/SimpleFS/SimpleFile.php(109): OC\Files\Node\File->putContent(':root {\n--icon-...')
#1 /var/www/html/lib/private/Template/IconsCacher.php(146): OC\Files\SimpleFS\SimpleFile->putContent(':root {\n--icon-...')
#2 /var/www/html/lib/private/Template/SCSSCacher.php(337): OC\Template\IconsCacher->setIconsCss('/**\n * @copyrig...')
#3 /var/www/html/lib/private/Template/SCSSCacher.php(182): OC\Template\SCSSCacher->cache('/var/www/html/a...', 'd71e-f999-merge...', 'merged.scss', Object(OC\Files\SimpleFS\SimpleFolder), '/apps/files/css')
#4 /var/www/html/lib/private/Template/CSSResourceLocator.php(111): OC\Template\SCSSCacher->process('/var/www/html/a...', 'css/merged.scss', 'files')
#5 /var/www/html/lib/private/Template/CSSResourceLocator.php(86): OC\Template\CSSResourceLocator->cacheAndAppendScssIfExist('/var/www/html/a...', 'css/merged.scss', 'files')
#6 /var/www/html/lib/private/Template/ResourceLocator.php(79): OC\Template\CSSResourceLocator->doFind('css/merged')
#7 /var/www/html/lib/private/TemplateLayout.php(329): OC\Template\ResourceLocator->find(Array)
#8 /var/www/html/lib/private/TemplateLayout.php(237): OC\TemplateLayout::findStylesheetFiles(Array)
#9 /var/www/html/lib/private/legacy/OC_Template.php(183): OC\TemplateLayout->__construct('user', 'files')
#10 /var/www/html/lib/public/AppFramework/Http/TemplateResponse.php(210): OC_Template->fetchPage(Array)
#11 /var/www/html/lib/private/AppFramework/Http/Dispatcher.php(123): OCP\AppFramework\Http\TemplateResponse->render()
#12 /var/www/html/lib/private/AppFramework/App.php(152): OC\AppFramework\Http\Dispatcher->dispatch(Object(OCA\Files\Controller\ViewController), 'index')
#13 /var/www/html/lib/private/Route/Router.php(308): OC\AppFramework\App::main('OCA\\Files\\Contr...', 'index', Object(OC\AppFramework\DependencyInjection\DIContainer), Array)
#14 /var/www/html/lib/base.php(1009): OC\Route\Router->match('/apps/files/')
#15 /var/www/html/index.php(37): OC::handleRequest()
#16 {main}
Hier ein Hinweis, den die Experten sicher zu deuten wissen:
sudo -u www-data php -f /var/www/html/console.php files:scan --all
Starting scan for user 1 out of 3 (Gerdchen)
Home storage for user Gerdchen not writable
Make sure you're running the scan command only as the user the web server runs as
Servus @gerdchen03 … du verwendest zwar kein Nextcloud snap, aber dein Problem ist irgendwie bekannt… daher passt dieser Abschnitt aus unserem Nextcloud snap wiki wohl recht gut?
Change data directory… So regardless which procedure is used, the path to the data directory must include the complete path including .../data
because this is where the required .ocdata
file is located.
Common error message for incorrect path in config file
Error
Your data directory is invalid.
Ensure there is a file called ".ocdata" in the root of the data directory.
Danke für deine Antwort, aber das Problem mit .ocdata scheint gelöst zu sein. Das zweite Problem
Nachricht: file_put_contents failed
Datei: /var/www/html/lib/private/Files/Node/File.php
Zeile: 73
scheint auch gelöst zu sein, nachdem ich die Rechte von html auf 755 und User auf www-data gesetzt habe. Nun kommt ein neues. Irgendwie sind die Rechte offenbar kaputt gegangen.
Typ: OCP\Files\NotPermittedException
Code: 0
Nachricht: Could not create path
Datei: /var/www/html/lib/private/Files/Node/Folder.php
Zeile: 194
Trace
#0 /var/www/html/lib/private/Files/SimpleFS/NewSimpleFile.php(133): OC\Files\Node\Folder->newFile('icons-vars.css', ':root {\n--icon-...')
#1 /var/www/html/lib/private/Template/IconsCacher.php(146): OC\Files\SimpleFS\NewSimpleFile->putContent(':root {\n--icon-...')
#2 /var/www/html/lib/private/Template/SCSSCacher.php(337): OC\Template\IconsCacher->setIconsCss('/**\n * @copyrig...')
#3 /var/www/html/lib/private/Template/SCSSCacher.php(182): OC\Template\SCSSCacher->cache('/var/www/html/c...', '614f-f999-serve...', 'server.scss', Object(OC\Files\SimpleFS\SimpleFolder), '/core/css')
#4 /var/www/html/lib/private/Template/CSSResourceLocator.php(111): OC\Template\SCSSCacher->process('/var/www/html', 'core/css/server...', 'core')
#5 /var/www/html/lib/private/Template/CSSResourceLocator.php(63): OC\Template\CSSResourceLocator->cacheAndAppendScssIfExist('/var/www/html', 'core/css/server...')
#6 /var/www/html/lib/private/Template/ResourceLocator.php(79): OC\Template\CSSResourceLocator->doFind('css/server')
#7 /var/www/html/lib/private/TemplateLayout.php(329): OC\Template\ResourceLocator->find(Array)
#8 /var/www/html/lib/private/TemplateLayout.php(237): OC\TemplateLayout::findStylesheetFiles(Array)
#9 /var/www/html/lib/private/legacy/OC_Template.php(183): OC\TemplateLayout->__construct('user', 'dashboard')
#10 /var/www/html/lib/public/AppFramework/Http/TemplateResponse.php(210): OC_Template->fetchPage(Array)
#11 /var/www/html/lib/private/AppFramework/Http/Dispatcher.php(123): OCP\AppFramework\Http\TemplateResponse->render()
#12 /var/www/html/lib/private/AppFramework/App.php(152): OC\AppFramework\Http\Dispatcher->dispatch(Object(OCA\Dashboard\Controller\DashboardController), 'index')
#13 /var/www/html/lib/private/Route/Router.php(308): OC\AppFramework\App::main('OCA\\Dashboard\\C...', 'index', Object(OC\AppFramework\DependencyInjection\DIContainer), Array)
#14 /var/www/html/lib/base.php(1009): OC\Route\Router->match('/apps/dashboard...')
#15 /var/www/html/index.php(37): OC::handleRequest()
#16 {main}
Das Problem ist auch gelöst:
sudo -u www-data php -f /var/www/html/console.php files:scan --all
Starting scan for user 1 out of 3 (Gerdchen)
Home storage for user Gerdchen not writable
Im Ordner /home/pi/data/Gerdchen fehlte der Ordner files
Mit der App komme ich nun wieder auf meine Nextcloud.und habe alle Funktionen. Vom Browser aus bekomme ich noch die Meldung hier:
OK, auch der Fehler ist beseitigt. Im Verzeichnis /var/www/html/ habe ich folgendes ausgeführt:
sudo -u www-data php occ config:system:delete instanceid
Vielleicht hilft es ja mal jemandem!!
Nun noch eine Kleinigkeit. Ich kann alle Dateien und Ordner wieder auf die Cloud spielen, außer den Ordner Fotos. Den lässt er mich nicht anlegen. Offenbar ist noch irgendein Eintrag in der Datenbank, der das verhindert. Ich nutze postgres.
Wie kann ich denn die Datenbank bearbeiten, und den störenden Eintrag zu Fotos löschen?