Definieer de vastgelopen Nextcloud-onderhoudsmodus veilig met OCC.

Als Nextcloud na een update of onderhoudstaak nog steeds de status 'onderhoudsmodus' weergeeft, controleer dan eerst of de database-upgrade is voltooid. Als er occ statuseen foutmelding verschijnt needsDbUpgrade: false, voer de taak dan uit occ maintenance:mode --offals de webservergebruiker in de juiste Nextcloud-installatie; als er een foutmelding verschijnt true, voltooi de taak occ upgradedan voordat u de site opnieuw opent.

Het uitschakelen van de vlag herstelt de inlogmogelijkheden, maar repareert geen mislukte upgrade. Het doel is om de instantie weer online te krijgen, waarbij zowel de onderhoudsvlag als de upgradestatus zijn geverifieerd.

1. Controleer het exemplaar voordat u de status ervan wijzigt.

Maak verbinding met de host of container die de betreffende Nextcloud-URL levert. Bij een handmatige Linux-installatie ga je naar de Nextcloud-directory (vaak /var/www/nextcloud) en controleer je de status als HTTP-gebruiker:

cd /var/www/nextcloud
sudo -E -u www-data php occ status

Zoek naar maintenanceen needsDbUpgrade. Een typische veilige status om uit te schakelen is maintenance: truewanneer needsDbUpgrade: false. Als de onderhoudsmodus al op 'false' staat, kan de browser een verouderde pagina weergeven of verbinding maken met een andere backend. Als needsDbUpgradeop 'true' staat, schakel de onderhoudsmodus dan nog niet uit.

Illustratieve terminal die de status van de bezetting weergeeft met onderhoud op 'true' en 'needsDbUpgrade' op 'false'.
Het statusvoorbeeld laat zien dat de onderhoudsmodus is ingeschakeld, terwijl er geen database-upgrade in behandeling is. Dit is normaal gesproken de situatie waarin het uitschakelen van de onderhoudsmodus aangewezen is.

Nextcloud vereist dat OCC wordt uitgevoerd als de HTTP-gebruiker, zodat het eigenaarschap van bestanden consistent blijft. Op Debian of Ubuntu is dat meestal www-data; andere distributies kunnen apache, http, of gebruiken wwwrun. Controleer het serviceaccount van uw installatie voordat u de gebruiker in een commando vervangt. De huidige Nextcloud OCC-documentatie beschrijft de verschillen tussen gebruikers en het statuscommando.

2. Schakel de onderhoudsmodus uit met OCC

Voor een archief- of pakketinstallatie voert u de opdracht uit vanuit de map waarin het juiste occscript zich bevindt:

sudo -E -u www-data php occ maintenance:mode --off

Het commando moet melden dat de onderhoudsmodus is uitgeschakeld. De --offoptie wijzigt de onderhoudsstatus; er worden geen migraties uitgevoerd, machtigingen hersteld of een onderbroken bestandsvervanging ongedaan gemaakt.

Illustratief terminalcommando: sudo -E -u www-data php occ maintenance:mode --off
Dit is het OCC-commando voor een standaardinstallatie nadat de upgrade is voltooid en het commando wordt uitgevoerd op de actieve Nextcloud-directory.

Gebruik de wrapper die overeenkomt met uw installatie. Voor de officiële Nextcloud Docker-image documenteert het project zowel docker execDocker Compose- als Docker Compose-voorbeelden. Vervang de naam van de voorbeeldcontainer of -service door die van u:

# Docker Compose; "app" is an example service name
docker compose exec --user www-data app php occ maintenance:mode --off

# Docker; replace CONTAINER_ID with the Nextcloud container
docker exec -it --user www-data CONTAINER_ID php occ maintenance:mode --off
Illustratief Docker Compose-commando om de onderhoudsmodus van Nextcloud uit te schakelen als www-data
In Docker Compose start je OCC binnen de Nextcloud-service als www-data; gebruik hiervoor de naam van je Compose-service in plaats van de voorbeeldnaam 'app'.

Gebruik voor de Nextcloud Snap de OCC-wrapper aan de hostzijde in plaats van de interne mappen van de snap te openen:

sudo nextcloud.occ maintenance:mode --off

Het Snap-project geeft aan dat dit /snap/bin/nextcloud.occmogelijk nodig is als die map niet in het PATH van de shell staat. Zie de instructies voor de onderhoudsmodus van Snap . De officiële README van de Nextcloud Docker-image beschrijft het commandopatroon voor de container.

3. Als er nog een upgrade in behandeling is, voltooi deze dan eerst.

Wanneer Nextcloud statusrapporten weergeeft needsDbUpgrade: true, geeft dit aan dat de code- en databasemigratie niet synchroon lopen. Dit gebeurt vaak nadat een updater de code heeft vervangen, maar de migratiefase niet is voltooid. In die situatie is mogelijk slechts een beperkt aantal OCC-opdrachten beschikbaar en kan de onderhoudsmodus opzettelijk ingeschakeld blijven om gebruikers tijdens de upgrade buiten te houden.

Gebruik het upgradepad voor uw installatietype en controleer de foutmelding van de updater voordat u verdergaat. Voor een standaard archiefinstallatie moet u, nadat u hebt gecontroleerd of de beoogde Nextcloud-codeversie aanwezig is en een nieuwe back-up van de database en bestanden/configuratie hebt gemaakt (indien u die nog niet hebt), het volgende commando uitvoeren:

sudo -E -u www-data php occ upgrade

Laat de opdracht volledig worden uitgevoerd en los eventuele gemelde fouten op. Schakel de onderhoudsmodus niet herhaaldelijk in en uit om een ​​migratiefout te omzeilen. De upgrade-documentatie van Nextcloud legt uit dat de databasemigratie volgt op de vervanging van de servercode en raadt aan om vóór een upgrade een nieuwe back-up te maken. Docker, Snap en beheerde pakketten kunnen hun eigen upgrade-procedures hebben; gebruik die instructies als ze afwijken van het voorbeeld op basis van archieven.

Zodra de upgrade succesvol is voltooid en de status geen melding meer geeft van een database-upgrade in behandeling, voert u de juiste maintenance:mode --offopdracht hierboven uit. Vermijd het bewerken van config.phpde database of het rechtstreeks bijwerken ervan als een snelle oplossing. Als OCC de instelling niet kan schrijven, controleer dan of u de juiste installatie en HTTP-gebruiker hebt geselecteerd en controleer op fouten met betrekking tot het alleen-lezen configuratiebeleid of de bestandsrechten voordat u de machtigingen wijzigt.

4. Controleer de vlag en de live website.

Voer de statusopdracht opnieuw uit met hetzelfde installatiepad, dezelfde container en dezelfde gebruiker:

sudo -E -u www-data php occ status

Bevestig zowel maintenance: falseals needsDbUpgrade: false. Herhaal in Docker of Snap de controle via dezelfde wrapper die werd gebruikt om de vlag uit te schakelen. Het Nextcloud-statuscommando documenteert deze velden; de machineleesbare vorm ervan is occ status --output=json_pretty.

Illustratieve uitvoer van de occ-status die laat zien dat maintenance false is en needsDbUpgrade false.
Een succesvolle verificatie toont aan dat de onderhoudsmodus is uitgeschakeld en dat er geen database-upgrade in behandeling is; dit voorbeeld is geen uitvoer van een live server.

Laad de site vervolgens opnieuw in een nieuw browsertabblad en test een normale login en de lijst met bestanden. Nextcloud merkt op dat gebruikers die vóór de onderhoudsmodus waren ingelogd, hun browser mogelijk moeten vernieuwen nadat de server weer online is. Als OCC aangeeft dat de onderhoudsmodus niet actief is, maar de site nog steeds de onderhoudspagina weergeeft, controleer dan of de hostnaam of load balancer naar dezelfde instantie verwijst die u hebt gewijzigd; bij meerdere containers of nodes kan een andere backend zich nog steeds in de onderhoudsmodus bevinden.

Een succesvolle oplossing is daarom meer dan alleen een "uitgeschakeld" commando-antwoord: de OCC-status moet beide vlaggen op 'uit' weergeven en de beoogde openbare URL moet de werkende instantie weergeven. Als de upgrade-vlag op 'uit' blijft staan ​​of het migratiecommando mislukt, blokkeer dan de toegang voor gebruikers en los de upgradefout op voordat Nextcloud opnieuw wordt geopend.

Laat een reactie achter

Beheers de CPU-pieken van Nextcloud Preview met een geplande wachtrij.

Verplaats het genereren van miniaturen naar een gecontroleerd achtergrondschema, verklein ongebruikte voorbeeldformaten en controleer de wachtrij zonder uw Nextcloud-server te overbelasten.

Nextcloud Desktop Sync: Voorbij het "Bestanden verwerken"-scherm

Zoek naar het bestand, de uitsluitingsregel, het verbindingsprobleem of de status van de clientdatabase die de Nextcloud-synchronisatie blokkeert, en controleer vervolgens of uploads en downloads veilig verlopen.

Verwijder de Nextcloud OPcache-waarschuwing door de rechterlimiet aan te passen.

Zoek de PHP OPcache-limiet die de waarschuwing van Nextcloud veroorzaakt, werk de juiste web-PHP-configuratie bij, herstart de server veilig en controleer het resultaat.

Nextcloud verbinden met CODE Docker: installatie en afwegingen

Nextcloud verbinden met CODE Docker: installatie en afwegingen

Vergelijk de ingebouwde en op Docker gebaseerde code en verbind Collabora Online vervolgens met Nextcloud via een beveiligde HTTPS-reverseproxy.

Bouw een robuust Nextcloud-cluster met Galera

Plan een betrouwbare Nextcloud HA-implementatie met gedeelde opslag, Redis-vergrendeling, quorum-bewuste MariaDB-routering en praktische failover-controles.

Krijg Nextcloud Talk-gesprekken tot stand wanneer directe media niet werkt.

Krijg Nextcloud Talk-gesprekken tot stand wanneer directe media niet werkt.

Configureer en verifieer een bereikbare TURN-relais voor Nextcloud Talk wanneer firewalls of restrictieve NAT directe gespreksmedia blokkeren.

Verwijder Nextcloud-integriteitswaarschuwingen door de juiste bestanden te herstellen.

Gebruik het rapport met ongeldige bestanden om gewijzigde, ontbrekende of extra Nextcloud-code te identificeren, vertrouwde bestanden veilig te herstellen en het resultaat te controleren.

Verbind Gmail of Microsoft 365 met Nextcloud Mail via OAuth2.

Stel OAuth2 in voor Nextcloud Mail met Gmail of Microsoft 365, verifieer het ontvangen en verzenden van e-mails en los veelvoorkomende toestemmings- en SMTP-problemen op.

Definieer de vastgelopen Nextcloud-onderhoudsmodus veilig met OCC.

Definieer de vastgelopen Nextcloud-onderhoudsmodus veilig met OCC.

Gebruik OCC om de toegang tot Nextcloud te herstellen, de status van de databasemigratie te controleren en de juiste opdracht te kiezen voor archivering, Docker- of Snap-installaties.

Nextcloud LDAP- en Active Directory-aanmelding instellen

Verbind Nextcloud met LDAP of Active Directory, beperk de toegang met gebruikers- en groepsfilters en verifieer de veilige authenticatie vóór de uitrol.