Wer einen Unifi Controller von Ubiquiti unter Ubuntu-Server oder Debian betreibt kennt das Problem:

Man installiert unifi über Paketquellen in klassischer Art und Weise (sudo apt-get install unifi), richtet den Controller ein und erfreut sich über dessen Funktion. Sobald man aber ein Upgrade (sudo apt-get upgrade) über den Server laufen lässt, weil man die Sicherheitspatche und Aktualisierungen einspielen will, wird oft auch automatisch die neue unifi-Version eingespielt.

An sich eine gute Sache, immerhin will man ja auch den Controller auf aktuellen Stand halten, allerdings habe ich echt bei jedem Upgrade das Problem, dass der Controller danach nicht mehr startet.

Durchsucht man die die Log-Files, wird man in der syslog relativ schnell mit dem folgenden Eintrag fündig:

unifi.init: Starting Ubiquiti UniFi Controller: unifi Cannot locate Java Home
 unifi:init: failed!

Unifi kann beim Starten also das Home Verzeichnis der Java-Installation nicht finden. Um dies zu korrigieren, öffnet man das Init-Skript mit folgendem Befehl:

sudo nano /etc/init.d/unifi

Danach sucht man sich gleich am Anfang die Funktion mit der nach dem Java-Home gesucht wird, sie beginnt mit:

set_java_home () {

Ich habe versucht in dieser Funktion wie in dieser Anleitung beschrieben herumzudoktern, was aber nie zum gewünschten Resultat führte.

Eigentlich ist es ganz einfach: Kommentiert die komplette set_java_home Funktion aus oder löscht sie weg.

Am Ende steht bei mir statt der Funktion nur noch der Pfad zu meiner Java-Installation (kann bei euch abweichen, einfach mal dem Pfad folgen und entsprechend die Zeile anpassen):

JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

Danach mit nachfolgendem Befehl den unifi-Server durchstarten und es sollte keine Fehlermeldung mehr im syslog zu finden sein:

sudo /etc/init.d/unifi restart

Wenn man jetzt allerdings noch das Problem hat, dass das Webmenü nicht geladen wird und der Browser ewig lädt und lädt und lädt, dann liegt es an der fehlenden Entropie für die SSL-Verschlüsselung (v.a. wenn der Unifi-Controller in einer VM läuft).

Dies kann abgestellt werden, indem man das Paket haveged nachinstalliert:

sudo apt-get install haveged

Danach flutscht auch das Laden des Webmenüs im Nu.


P.S.: Ich selbst benutze in meinem Heimnetzwerk zwei Accesspoints von Ubiquiti, weshalb ich auch den Unifi-Controller in einer VM laufen habe. Evtl. mache ich dazu mal einen extrigen Blogpost, wie ich beim Hausbau ein professionelles LAN/WLAN geplant und umgesetzt habe.


Der Artikel enthält Affiliate-Links zu Amazon die mit einem * gekennzeichnet sind. Kaufst du ein von mir verlinktes Produkt bei Amazon, bekomme ich eine kleine Provision und du unterstützt mich und meine Arbeit. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen. Dir entstehen keine Nachteile oder Mehrkosten.


Autor

Hi! Ich bin Andreas und betreibe diese Seite, auf der ich über Themen rund um IT-Technik, Reisen und Fotografie schreibe. Dir gefallen meine Artikel und du möchtest mir einen virtuellen Kaffee ausgeben? Gerne! PayPal.me/imraz0r

Einen Kommentar schreiben

Pin It