Unifi Controller startet nicht mehr
Fehler - /var/log/unifi/server.log :
[2024-03-07 03:17:19,025] <db-server> INFO db - Checking if database needs to be shut down
[2024-03-07 03:17:20,026] <db-server> INFO db - Database was not running
[2024-03-07 03:17:20,026] <db-server> INFO db - Database configuration, dir=/usr/lib/unifi/data/db, port=27117
[2024-03-07 03:17:20,114] <db-server> ERROR system - unable to exec
java.io.IOException: Cannot run program "bin/mongod" (in directory "/usr/lib/unifi"): error=0, Failed to exec spawn helper: pid: 755101, signal: 11
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
at com.ubnt.ace.B.Ôo0000(Unknown Source)
at com.ubnt.ace.B.Öô0000(Unknown Source)
at com.ubnt.ace.B.oÖ0000(Unknown Source)
at com.ubnt.service.system.z.Òô0000(Unknown Source)
at com.ubnt.service.system.z$1.run(Unknown Source)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.io.IOException: error=0, Failed to exec spawn helper: pid: 755101, signal: 11
at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:314)
at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:244)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
... 7 common frames omitted
[2024-03-07 03:17:20,114] <db-server> INFO db - Starting database process...
[2024-03-07 03:17:20,205] <db-server> ERROR system - unable to exec
java.io.IOException: Cannot run program "bin/mongod" (in directory "/usr/lib/unifi"): error=0, Failed to exec spawn helper: pid: 755109, signal: 11
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1143)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1073)
at com.ubnt.ace.B.ô00000(Unknown Source)
at com.ubnt.ace.B.oÔ0000(Unknown Source)
at com.ubnt.service.system.z.Òô0000(Unknown Source)
at com.ubnt.service.system.z$1.run(Unknown Source)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.io.IOException: error=0, Failed to exec spawn helper: pid: 755109, signal: 11
at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:314)
at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:244)
at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1110)
... 6 common frames omitted
[2024-03-07 03:17:20,205] <db-server> INFO db - Database process stopped...
[2024-03-07 03:17:21,904] <stamgr> WARN cache - unable to retrieve settings in site 6432ba9476f22131549ac718
com.google.common.util.concurrent.UncheckedExecutionException: com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27117, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exc>
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2055)
at com.google.common.cache.LocalCache.get(LocalCache.java:3966)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3989)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4950)
at com.ubnt.service.system.OooO.ôöØ000(Unknown Source)
at com.ubnt.service.system.OooO.oøØ000(Unknown Source)
at com.ubnt.service.event.A.newreturnnew(Unknown Source)
at com.ubnt.service.event.A.oöÓ000(Unknown Source)
at com.ubnt.service.event.A.ÔõÓ000(Unknown Source)
at com.ubnt.service.devmgr.classObject.StringdoObject(Unknown Source)
at com.ubnt.service.system.newnew.ÖO0000(Unknown Source)
at com.ubnt.ace.B$_OOo.run(Unknown Source)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27117, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectE>
at com.mongodb.internal.connection.BaseCluster.getDescription(BaseCluster.java:180)
at com.mongodb.internal.connection.SingleServerCluster.getDescription(SingleServerCluster.java:44)
at com.mongodb.client.internal.MongoClientDelegate.getConnectedClusterDescription(MongoClientDelegate.java:144)
at com.mongodb.client.internal.MongoClientDelegate.createClientSession(MongoClientDelegate.java:101)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.getClientSession(MongoClientDelegate.java:291)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.execute(MongoClientDelegate.java:183)
at com.mongodb.client.internal.FindIterableImpl.first(FindIterableImpl.java:213)
at com.ubnt.service.system.z.Stringnull(Unknown Source)
at com.ubnt.service.system.z.Ó00000(Unknown Source)
at com.ubnt.service.system.floatsuper.ØÕ0000(Unknown Source)
at com.ubnt.service.system.OooO$2.o00000(Unknown Source)
at com.ubnt.service.system.OooO$2.load(Unknown Source)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3533)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2282)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2159)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2049)
... 17 common frames omitted
[2024-03-07 03:17:21,904] <stamgr> INFO db - waiting for db connection...
[2024-03-07 03:17:22,011] <discover> INFO discover - [Internal] incomplete device information received
com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27117, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectException: C>
at com.mongodb.internal.connection.BaseCluster.getDescription(BaseCluster.java:180)
at com.mongodb.internal.connection.SingleServerCluster.getDescription(SingleServerCluster.java:44)
at com.mongodb.client.internal.MongoClientDelegate.getConnectedClusterDescription(MongoClientDelegate.java:144)
at com.mongodb.client.internal.MongoClientDelegate.createClientSession(MongoClientDelegate.java:101)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.getClientSession(MongoClientDelegate.java:291)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.execute(MongoClientDelegate.java:183)
at com.mongodb.client.internal.FindIterableImpl.first(FindIterableImpl.java:213)
at com.ubnt.service.system.z.Stringnull(Unknown Source)
at com.ubnt.service.system.z.Ó00000(Unknown Source)
at com.ubnt.service.devmgr.o0O0o.Õôö000(Unknown Source)
at com.ubnt.service.devmgr.o0O0o.thisinterfaceString(Unknown Source)
at com.ubnt.net.float.ÔÒø000(Unknown Source)
at com.A.A.oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.Object.ô00000(Unknown Source)
at com.A.A.oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.oOoO$1.run(Unknown Source)
at java.base/java.lang.Thread.run(Thread.java:833)
[2024-03-07 03:17:22,011] <discover> INFO db - waiting for db connection...
Der Fehler sagt aus, das er Probleme mit der mongo db also der Datenbank gibt.
Zuerst muss der Dienst gestoppt werden:
service unifi stop
In einigen Fällen, in denen das Journal beschädigt ist, ist es hilfreich, den folgenden Befehl auszuführen, bevor die Datenbank repariert wird, um sie an einen anderen Ort zu verschieben
mv -vi /usr/lib/unifi/data/db/journal /usr/lib/unifi/data/db/journal-$(date -I)
Reparieren Sie die Datenbank mit diesem Befehl:
mongod --dbpath /usr/lib/unifi/data/db --logpath /usr/lib/unifi/logs/mongod.log --repair
Starten Sie schließlich den UniFi-Dienst neu
service unifi start
Hinweis: Wenn dieser Prozess als Root durchgeführt wurde, hat sich der Dateibesitz möglicherweise geändert. Dies kann geändert werden mit:
chown -R unifi:unifi /usr/lib/unifi/data/db/
chown -R unifi:unifi /usr/lib/unifi/logs/
No Comments