ServerMaintenanceMode Das System befindet sich im Wartungsmodus

Hallo zusammen,

seit einigen Tagen habe ich regelmĂ€ĂŸig die folgende Fehlermeldung im Protokoll der Cloud:
ServerMaintenanceMode Das System befindet sich im Wartungsmodus.
manchmal auch in englischer Sprache.
ServerMaintenanceMode System is in maintenance mode.

Ja, der Server ist jede Nacht fĂŒr die Zeit des automatischen Backups im Wartungsmodus und das seit vielen Jahren. Bisher tauchte eine solche Meldung nicht auf. Kennt jemand den Grund dafĂŒr?

  • Bei welchen Anbieter? Was fĂŒr ein Server? v-server, shared, root, usw. Oder Lokal?
    Server4you, root-Server
  • Auf welcher Hardware? PC, Raspberry PI, Banana, NAS usw

    PC
  • Betriebssystem sowie Version ALLER beteiligten Systeme
    Ubuntu 20.04, Linux 5.4.0-221-generic x86_64
  • Nextcloud Version: 32.0.0.13
  • PHP Version: PHP 8.2.28, Zend Engine v4.2.28
  • Welche Datenbank? MySql,Engine X (Nginx),MariaDB usw

    mysql 10.6.22
  • Apache version, usw.
    Apache2, Version 2.4
  • Wurden vor kurzen Server Updates gemacht? Wenn ja von was?
    Nein
  • Habt ihr die Logs angesehen von Nextcloud und von System?
    Ja, keine weiteren Infos
  • Bei was fĂŒr einer Aktion ist der Fehler aufgetreten?
    Ist nicht nachvollziehbar.

LG Mathias

Ubuntu 20.04 ist seit Mai 2025 EOL.

Vielen Dank fĂŒr den Hinweis, aber das stimmt so nicht ganz:

Version: 20.04 LTS (Focal Fossa)
Released: Apr 2020
End of Standard Support: May 2025
End of Ubuntu Pro Support: Apr 2030
End of Legacy Support: Apr 2032

Quelle: Ubuntu release cycle | Ubuntu

Auf dem Server ist der Pro Support aktiviert.

Also die Log-Dateien mĂŒssen das abzeigen. ZutĂ€tzlich den Log-Level von Nextcloud mal rauf setzen.

  • Systemlog
  • Backup-Log
    mĂŒssten etwas hierzu auswerfen. - Ich vermute, eher das Backup-Log. Sollte diese nach /dev/null geleitet werden, das mal in eine Datei umleiten.

Danke fĂŒr die Hinweise.

Das Backup ist ĂŒber rsync realisiert. Das Logfile wird in eine Logdatei geschrieben, hier gab es keinerlei EintrĂ€ge bzgl. irgendwelcher Fehler.

Das Systemlog werde ich noch einmal “durchforsten”, mal sehen ob ich evtl. etwas ĂŒbersehen habe.

Den Log-Level von Nextcloud werde ich heute abend mal hochsetzen.

Ich habe dieselbe Fehlermeldung seit Nextcloud 32.0. Bei mir wird sie verursacht, wenn ein Client auf caldav/carddav zugreifen möchte wÀhrend Nextcloud sich im Wartungsmodus befindet.

{"reqId":"4yS869z198evyX4KhI1J","level":3,"time":"2025-10-21T11:58:31+02:00","remoteAddr":"1.2.3.4","user":"--","app":"no app in context","method":"REPORT","url":"/nextcloud/remote.php/dav/addressbooks/users/<USERNAME>/contacts/","message":"Uncaught exception","userAgent":"iOS/26.0.1 (23A355) dataaccessd/1.0","version":"32.0.0.13","exception":{"Exception":"OCA\\DAV\\Exception\\ServerMaintenanceMode","Message":"Das System befindet sich im Wartungsmodus.","Code":0,"Trace":[{"file":"/var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"checkMaintenanceMode","class":"OCA\\DAV\\Connector\\Sabre\\MaintenancePlugin","type":"->"},{"file":"/var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":456,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/apps/dav/lib/Connector/Sabre/Server.php","line":211,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/apps/dav/lib/Server.php","line":424,"function":"start","class":"OCA\\DAV\\Connector\\Sabre\\Server","type":"->"},{"file":"/var/www/nextcloud/apps/dav/appinfo/v2/remote.php","line":22,"function":"exec","class":"OCA\\DAV\\Server","type":"->"},{"file":"/var/www/nextcloud/remote.php","line":151,"args":["/var/www/nextcloud/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/var/www/nextcloud/apps/dav/lib/Connector/Sabre/MaintenancePlugin.php","Line":65,"message":"Uncaught exception","exception":{},"CustomMessage":"Uncaught exception"}}

Ich habe ein Github issue eröffnet: [Bug]: Nextcloud reports errors with carddav/caldav requests in maintenance mode · Issue #55894 · nextcloud/server · GitHub

1 Like

Super, den Verdacht hatte ich auch schon. Komisch ist nur, das NC das als Fehler ausgibt. Es ist doch ganz normal, das wĂ€hrend eines Wartungsmodus jemand versucht auf die Cloud zuzugreifen. NC sollte das ĂŒberhaupt nicht interessieren.

Wie machst du das denn mit der Aktivierung des Wartungsmodus? Also z.B.:

sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on

als Cronjob?

Sehe ich auch so. Du kannst gerne das Github-Issue mit einem “Daumen-Hoch” bewerten. Dann sehen die Entwickler, dass ich nicht der einzige bin, den das betrifft.

ja, genau so. Allerdings nicht als cronjob, sondern von einem Skript aus.

Das mit dem Skript mache ich auch so. Dann könntest du als vorlĂ€ufigen Workarround im Skript zusĂ€tzlich auch noch den Webserver und evtl. auch PHP stoppen. Die mĂŒssen doch wĂ€hrend des Backups nicht laufen, es sei denn fĂŒr andere Server. Ohne laufenden Webserver sollten im Log dann auch keine Fehlermeldungen mehr auftauchen, wenn ein Smartphone ö.Ă€. per caldav/carddav Kontakt zur NC will.

Ist zwar keine Lösung des eigentlichen Problems, beseitigt aber vorerst die nervigen Symptome.

Da man die Backupzeiten kennt, kann man die Meldungen auch einfach ignorieren :wink:

Edit:

PHP lĂ€uft nicht als Dienst, sondern wird zur Laufzeit auf Anforderung ausgefĂŒhrt - entweder von Nginx, Apache, aber auch von der Kommandozeile (siehe “occ”-Befehl). (Aussage ist falsch - s.u.)

Den Webserverdienst fĂŒr die Dauer beenden, bringt zumindest fĂŒr die ClientgerĂ€te nichts, die bekommen dann nur eine andere Fehlermeldung. Wird der Server ĂŒber eine WeboberflĂ€che administriert, wird diese dann ebenfalls beendet.
Bringt dann also eher Nach- als Vorteile.

1 Like

Was wohl auf die Art der Installation ankommt. Wenn ich mittels

root@DebianServerVM2:~# /etc/init.d/php8.2-fpm stop

den php stoppe, dann bekomme ich umgehend ein 502 Bad Gateway von meinem nginx zurĂŒck.

nehme ich

root@DebianServerVM2:~# /etc/init.d/nginx stop

ist die Antwort ein Verbindung fehlgeschlagen.

NC-Logfiles können so in beiden FĂ€llen nicht befĂŒllt werden.

Deswegen fragte ich ja danach, wie der Wartungsmodus gestartet wird. Beim TS per Shellscript und das dann nachts per Cronjob ausgefĂŒhrt. Über die WeboberflĂ€che wird dann eher nicht administriert 


1 Like

Es ist ja klar, das diese “Fehlermeldung” nicht wirklich ein Fehler ist. Aber es sollte einfach nicht sein. Den Webserver herunterfahren werde ich deshalb sicher nicht, zumal davon noch einige Websites betroffen wĂ€ren. Es sollte halt geprĂŒft werden, wieso NC plötzlich diesen völlig normalen Zustand als Fehler wertet.

Auch wenn der Pro-Support noch bis Apr 2030 geht, wird die Nextcloud technisch höchstwahrscheinlich immer auf die neueren Systeme angepasst.

In den Systemanforderungen von Version 24 wurde Ubuntu 20.04 LTS letztmalig empfohlen.

Ubuntu 20.04 LTS wurde letztmalig in den Systemanforderungen von Version 29 erwÀhnt und ab den Systemanforderungen von Version 30 war es dann gar nicht mehr vorhanden.

Könnte das eventuell auch eine Rolle spielen?

FĂŒr die Nextcloud gibt es auch einen kostenpflichtigen Support, welcher eventuell solche Dinge in Ă€lteren Nextcloud-Versionen beheben kann wenn man auf Grund anderer PrioritĂ€ten eine Ă€ltere Version verwenden muss.

Support intro

Sorry to hear you’re facing problems. :slightly_frowning_face:

The community help forum (help.nextcloud.com) is for home and non-enterprise users. Support is provided by other community members on a best effort / “as available” basis. All of those responding are volunteering their time to help you.

If you’re using Nextcloud in a business/critical setting, paid and SLA-based support services can be accessed via portal.nextcloud.com where Nextcloud engineers can help ensure your business keeps running smoothly.

Getting help

In order to help you as efficiently (and quickly!) as possible, please fill in as much of the below requested information as you can.

Before clicking submit: Please check if your query is already addressed via the following resources:

(Utilizing these existing resources is typically faster. It also helps reduce the load on our generous volunteers while elevating the signal to noise ratio of the forums otherwise arising from the same queries being posted repeatedly).

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can. :heart:

The Basics

  • Nextcloud Server version (e.g., 29.x.x):
    • 32.0.1.2
  • Operating system and version (e.g., Ubuntu 24.04):
    • Ubuntu Server 24.04 LTS
  • Web server and version (e.g, Apache 2.4.25):
    • Apache (version unknown)
  • Reverse proxy and version _(e.g. nginx 1.27.2)
    • None
  • PHP version (e.g, 8.3):
    • unknown
  • Is this the first time you’ve seen this error? (Yes / No):
    • No
  • When did this problem seem to first start?
    • setting up Home Assistant backups and doing maintenance on NC
  • Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
    • Dockerized
  • Are you using CloudfIare, mod_security, or similar? (Yes / No)
    • No

Summary of the issue you are facing:

When setting Nextcloud to maintenance mode it always logs an error if some App wants to authenticate. Shouldn’t that be a warning instead? As Errors should inidicate system issues, not failed logins.?

Steps to replicate it (hint: details matter!):

  1. set Nextcloud to maintenance mode

  2. try to push data via WebDAV (in my case this is done by HomeAssistant for backup)

  3. chek the logs

Log entries

Nextcloud

Please provide the log entries from your Nextcloud log that are generated during the time of problem (via the Copy raw option from Administration settings->Logging screen or from your nextcloud.log located in your data directory). Feel free to use a pastebin/gist service if necessary.

Below error occured due to my active session when setting NC to maintenance mode, but it’s the same error for my HA-Backup.

{"reqId":"AXBmDGRVQBFu7zsj7Vis","level":3,"time":"2025-11-04T09:24:06+00:00","remoteAddr":"192.168.178.204","user":"basti","app":"no app in context","method":"PROPFIND","url":"/remote.php/dav/files/basti/","message":"Uncaught exception","userAgent":"Mozilla/5.0 (Linux) mirall/4.0.1 (build 34593) (Nextcloud, ubuntu-6.8.0-79-generic ClientArchitecture: x86_64 OsArchitecture: x86_64)","version":"32.0.1.2","clientReqId":"251956ad-a198-4ec3-b264-576956df0e0e","exception":{"Exception":"OCA\\DAV\\Exception\\ServerMaintenanceMode","Message":"System is in maintenance mode.","Code":0,"Trace":[{"file":"/var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"checkMaintenanceMode","class":"OCA\\DAV\\Connector\\Sabre\\MaintenancePlugin","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php","line":456,"function":"emit","class":"Sabre\\DAV\\Server","type":"->","args":["beforeMethod:PROPFIND",[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]]},{"file":"/var/www/html/apps/dav/lib/Connector/Sabre/Server.php","line":211,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->","args":[{"__class__":"Sabre\\HTTP\\Request"},{"__class__":"Sabre\\HTTP\\Response"}]},{"file":"/var/www/html/apps/dav/lib/Server.php","line":424,"function":"start","class":"OCA\\DAV\\Connector\\Sabre\\Server","type":"->","args":[]},{"file":"/var/www/html/apps/dav/appinfo/v2/remote.php","line":22,"function":"exec","class":"OCA\\DAV\\Server","type":"->","args":[]},{"file":"/var/www/html/remote.php","line":151,"args":["/var/www/html/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/var/www/html/apps/dav/lib/Connector/Sabre/MaintenancePlugin.php","Line":65,"message":"Uncaught exception","exception":{},"CustomMessage":"Uncaught exception"}}

Configuration

Nextcloud

The output of occ config:list system or similar is best, but, if not possible, the contents of your config.php file from /path/to/nextcloud is fine (make sure to remove any identifiable information!):

{
    "system": {
        "htaccess.RewriteBase": "\/",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "apps_paths": [
            {
                "path": "\/var\/www\/html\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/var\/www\/html\/custom_apps",
                "url": "\/custom_apps",
                "writable": true
            }
        ],
        "upgrade.disable-web": true,
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "localhost",
            "***REMOVED SENSITIVE VALUE***"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "32.0.1.2",
        "overwrite.cli.url": "http:\/\/localhost",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "maintenance": false,
        "maintenance_window_start": 2,
        "loglevel": 2
    }
}

Apps

The output of occ app:list (if possible).

Enabled:
  - activity: 5.0.0-dev.0
  - app_api: 32.0.0
  - bruteforcesettings: 5.0.0-dev.0
  - circles: 32.0.0
  - cloud_federation_api: 1.16.0
  - comments: 1.22.0
  - contactsinteraction: 1.13.1
  - dashboard: 7.12.0
  - dav: 1.34.2
  - federatedfilesharing: 1.22.0
  - federation: 1.22.0
  - files: 2.4.0
  - files_downloadlimit: 5.0.0-dev.0
  - files_pdfviewer: 5.0.0-dev.0
  - files_reminders: 1.5.0
  - files_sharing: 1.24.0
  - files_trashbin: 1.22.0
  - files_versions: 1.25.0
  - firstrunwizard: 5.0.0-dev.0
  - logreader: 5.0.0-dev.0
  - lookup_server_connector: 1.20.0
  - nextcloud_announcements: 4.0.0-dev.0
  - notifications: 5.0.0-dev.0
  - oauth2: 1.20.0
  - password_policy: 4.0.0-dev.0
  - photos: 5.0.0-dev.1
  - privacy: 4.0.0-dev.0
  - profile: 1.1.0
  - provisioning_api: 1.22.0
  - recommendations: 5.0.0-dev.0
  - related_resources: 3.0.0-dev.0
  - serverinfo: 4.0.0-dev.0
  - settings: 1.15.1
  - sharebymail: 1.22.0
  - support: 4.0.0-dev.0
  - survey_client: 4.0.0-dev.0
  - systemtags: 1.22.0
  - text: 6.0.1
  - theming: 2.7.0
  - twofactor_backupcodes: 1.21.0
  - updatenotification: 1.22.0
  - user_status: 1.12.0
  - viewer: 5.0.0-dev.0
  - weather_status: 1.12.0
  - webhook_listeners: 1.3.0
  - workflowengine: 2.14.0
Disabled:
  - admin_audit: 1.22.0
  - encryption: 2.20.0
  - files_external: 1.24.0
  - suspicious_login: 10.0.0-dev.0
  - twofactor_nextcloud_notification: 6.0.0-dev.0
  - twofactor_totp: 14.0.0
  - user_ldap: 1.23.0

Any help appreciated! :slight_smile:
Mayber there’s an option to treat such errors as warning or the like? I don’t want to always check my logs due to errors that occured because of login attempts during maintenance.

Probably the same (but in German):

1 Like

maybe.. on the other side it’s still a failed operation.. but at the end there is a bug report already and the fix exists as well - should be shipped soon

1 Like