Linux Schnellstart (auch für Raspberry Pi)

Allgemein


Achtung! Diese Anleitung nicht verwenden, wenn ein fertiges Image aus dem Download-Bereich dieser Seite verwendet wurde. Unsere Images aus dem Download-Bereich sind komplett fertig – also inkl. installiertem ioBroker. Eine erneute Installation nach dieser Anleitung ist also nicht mehr notwendig (und hat schon zu Problemen geführt).

Hinweise zur Nutzung von Images befinden sich auf den zugehörigen Readme Seiten (siehe Download-Tabelle, vorletzte Spalte – ReadMe) und auf dieser Seite.


Hier findet Ihr eine Installationsanleitung für ioBroker auf Linux am Beispiel vom Raspberry PI mit dem System Jessie. Die eigentliche Anleitung zur Installation von nodejs und ioBroker kann für sehr viele andere Linux-Systeme verwendet werden.

Es kann bei der Installation immer wieder zu Besonderheiten kommen auf Grund von Abhängigkeiten zu anderen Paketen oder zusätzlichen Installationen.

Wenn Ihr nicht mehr weiterkommt, dann postet bitte eure Fragen im Forum.

Bei der hier veröffentlichen Anleitung wird bei jedem Kernel Update wenn vorhanden auch automatisch die node.js Versionen aktualisiert.


benötigte Hardware

  • Raspberry PI
  • Netzteil (es ist wichtig ein gutes Netzteil zu haben. Mit schwachem Netzteil sind Stabilitätsprobleme zu erwarten)
  • Speicherkarte

Oder jede andere beliebige Hardware mit einem gängigen Linux (Debian, Ubuntu, usw.), oder auch einem Mac.

benötigte / wichtige Links


Installationsanleitung

Installation Raspbian

  1. Download Image (aktuelles RASPBIAN oder RASPBIAN LITE)
  2. Image auf die Karte installieren (Win32Diskimager)
  3. Raspberry starten
  4. Über Putty am Raspberry anmelden. Login: pi, Kennwort: raspberry
  5. mit sudo raspi-config die nötige Grundkonfiguration durchführen
  6. Root Zugang freischalten (NUR wenn root-Zugang per SSH oder sftp unbedingt benötigt wird)
    1. sudo nano /etc/ssh/sshd_config
    2. Datei anpassen: PermitRootLogin without-password in PermitRootLogin yes ändern und speichern
    3. SSH neu starten: sudo /etc/init.d/ssh restart
    4. sudo su (jetzt ist der Root Modus gestartet)
    5. mit passwd ein Passwort vergeben
  7. Ausloggen und als Root über Putty anmelden

Installation Node.js

——————————————————————————————–
Hinweis: Diese Anleitung bezieht sich auf nodejs 6.x

Die Nutzung von Nodejs 8.x wäre ebenfalls möglich (dazu in Schritt 4.1 die 6 gegen eine 8 austauschen), jedoch muss das dort mitgelieferte npm 5.x nach der Installation unbedingt auf v4.x downgegradet werden mit

sudo npm install -g npm@4

npm 5.x enthält noch einen Bug, der bei ioBroker zu massiven Problemen führt.
——————————————————————————————–

  1. Kernel Update: sudo apt-get update && sudo apt-get upgrade
  2. Auf bereits vorhandene Versionen von nodejs und npm testen.
    1. node -v
    2. nodejs -v
    3. npm -v
  3. nur wenn ALLE diese Befehle kein Ergebnis bringen unter 4. (bei RaspberryPi1 unter 5.) weitermachen, sonst
    1. Die alten node & node.js Versionen deinstallieren
      1. sudo apt-get --purge remove node
      2. sudo apt-get --purge remove nodejs
      3. sudo apt-get autoremove
      4. sudo reboot
  4. Node.js neu installieren für Linux und Raspberry 2/3
    1. curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
    2. sudo apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev libpam0g-dev nodejs
    3. reboot
  5. Node.js neu installieren nur für Raspberry Pi1 (sollte es beim download zu einer Fehlermeldung kommen, bitte unter http://nodejs.org/dist/latest-v6.x/ die aktuelle Versionsnummer heraussuchen und in den Befehlen 1-3 ersetzen)
    1. wget http://nodejs.org/dist/latest-v6.x/node-v6.14.2-linux-armv6l.tar.gz
    2. tar -xvf node-v6.14.2-linux-armv6l.tar.gz
    3. cd node-v6.14.2-linux-armv6l
    4. sudo cp -R * /usr/local/
    5. sudo ln -s /usr/local/bin/node /usr/bin/nodejs
  6. als Root über Putty anmelden
  7. Nach der Installation muss das Kommando “node -v” die Version von node.js zurückgeben. Falls es nicht passiert, dann sollte noch ein Alias erzeugt werden:
    sudo ln -s /usr/local/bin/nodejs /usr/bin/node

Bei einer bestehenden ioBroker-Installation müssen beim Wechsel der Masterversion von nodejs (4.x, 6.x, 8.x, 10.x) anschließend unbedingt die bereits installierten Adapter für diese geänderte node-Version neu kompiliert werden.

Dies geschieht mit dem Befehl: sudo ./reinstall.sh


In sehr alten Installationen gab es zwei Bugs bei dieser Datei.

Deshalb sollten erst die Eigenschaften Dateigröße und Ausführbarkeit überprüft werden:


 

der korrekte Output sollte so aussehen:


je nachdem wo node installiert wurde kann die Datei auch 6 bis 8 Byte größer sein.

Die Datei war damals irrtümlich im Windows-Format abgespeichert worden.

Dies äußert sich in einer Dateigröße von > 670 Byte oder beim Aufruf der Datei darin, dass ein Zeichen ^M als Fehler bemerkt wird.Um diesen Bug zu beheben, bitte über die Konsole ausführen:

Den letzten Befehl auch dann ausführen, wenn die Datei zwar im Linux-Format vorliegt (< 670 Byte), aber nicht ausführbar ist, was sich sich beim Aufruf der Datei in der Antwort “Befehl nicht gefunden” äußert.


Installation ioBroker

  1. ioBroker installieren
    1. sudo mkdir /opt/iobroker
    2. sudo chmod 777 /opt/iobroker
    3. cd /opt/iobroker
    4. sudo npm install iobroker --unsafe-perm
  2. je nach OS muss ioBroker evtl. noch mit sudo iobroker start gestertet werden
  3. ioBroker über IP im Webbrowser aufrufen: http://IP-Adresse:8081

weiter geht es Hier!

feste IP vergeben (optional)

sudo nano /etc/dhcpcd.conf

Pro interface anfügen (Beispiel):

interface eth0
static ip_address=192.168.0.10/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

letzte Änderung: 17.02.2018