Guten Abend Zusammen,
da es nun schon öfters diskutiert wurde und so eine komplette Zusammenfassung fehlt, oder ich sie nicht gefunden habe?
Kann hier jemand die unten aufgeführten Anleitung so anpassen, dass sie mit dem aktuellen Image auch funktioniert?
Ausgangslage wäre das Image RASPBIAN STRECH LITE, wie hier im Schimmer Video auch empfohlen.
Dann bekomme ich aber die schon in einem anderen Bereich aufgeführte Fehlermeldungen.
Dann gibt es ein paar Hinweise was man ändern soll, aber wann und wo?
Kann uns Newbies einer dies STEP by STEP erklären, wie unten?
Das wäre MEGA GEIL!
Danke und Liebe Grüße
Chris
RASPBIAN STRETCH LITE
Minimal image based on Debian Stretch
Version:June 2018
Release date:2018-06-27
Kernel version:4.14
Release notes:Link
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
- Download Image (aktuelles RASPBIAN oder RASPBIAN LITE)
- Image auf die Karte installieren (Win32Diskimager)
- Raspberry starten
- Über Putty am Raspberry anmelden. Login: pi, Kennwort: raspberry
- mit
sudo raspi-config
die nötige Grundkonfiguration durchführen
- Root Zugang freischalten (NUR wenn root-Zugang per SSH oder sftp unbedingt benötigt wird)
sudo nano /etc/ssh/sshd_config
- Datei anpassen: PermitRootLogin without-password in PermitRootLogin yes ändern und speichern
- SSH neu starten:
sudo /etc/init.d/ssh restart
-
sudo su
(jetzt ist der Root Modus gestartet)
- mit
passwd
ein Passwort vergeben
- Ausloggen und als Root über Putty anmelden
Installation Node.js
—————————————————————————————————————-
Hinweis: Die untenstehende Anleitung bezieht sich auf nodejs 8.x
Die Nutzung von Nodejs 6.x ist ebenfalls möglich (dazu in Schritt 4.1 die 8 gegen eine 6 austauschen),
anschließend das dort mitgelieferte npm 3.x nach der Installation auf v4.x upgraden mit
sudo npm install -g npm@4
————————————————————————————————-
- Kernel Update:
sudo apt-get update && sudo apt-get upgrade
- Auf bereits vorhandene Versionen von nodejs und npm testen.
node -v
nodejs -v
npm -v
- nur wenn ALLE diese Befehle kein Ergebnis bringen unter 4. (bei RaspberryPi1 unter 5.) weitermachen, sonst
- Die alten node & node.js Versionen deinstallieren
sudo apt-get --purge remove node
sudo apt-get --purge remove nodejs
sudo apt-get autoremove
sudo reboot
- Node.js neu installieren für Linux und Raspberry 2/3
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev libpam0g-dev nodejs
reboot
- das mitglieferte npm 5.6.0 npm unbedingt downgraden mit
sudo npm install -g npm@4 npm 5.x enthält noch einen Bug, der bei ioBroker zu massiven Problemen führt.
- 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)
wget http://nodejs.org/dist/latest-v6.x/node-v6.14.2-linux-armv6l.tar.gz
tar -xvf node-v6.14.2-linux-armv6l.tar.gz
cd node-v6.14.2-linux-armv6l
sudo cp -R * /usr/local/
sudo ln -s /usr/local/bin/node /usr/bin/nodejs
- als Root über Putty anmelden
- 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:
1
2
|
cd /opt/iobroker
ls -l reinstall.sh
|
der korrekte Output sollte so aussehen:
1
|
-rwxrwxrwx 1 root root 655 Apr 19 13:23 reinstall.sh
|
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:
1
2
3
4
|
cd /opt/iobroker
sudo mv reinstall.sh reinstall.dos
sudo tr -d '\r' < reinstall.dos > reinstall.sh
sudo chmod +x reinstall.sh
|
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
- ioBroker installieren
sudo mkdir /opt/iobroker
sudo chmod 777 /opt/iobroker
cd /opt/iobroker
sudo npm install iobroker --unsafe-perm
- je nach OS muss ioBroker evtl. noch mit sudo iobroker start gestertet werden
- ioBroker über IP im Webbrowser aufrufen:
http://IP-Adresse:8081
weiter geht es Hier!
Upgrade von nodejs und npm
Hier am Beispiel eines Upgrades von Node 6 & npm 3 — auf Node 8 & npm 4
VORHER BACKUP MACHEN!!
Wenn ihr nicht als Root angemeldet seid, “sudo” vor die Befehle stellen..
Folgende Befehle sind auszuführen
iobroker stop
apt-get --purge remove node nodejs
apt-get autoremove
reboot
Nach dem Reboot geht es mit diesen Befehlen weiter:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev libpam0g-dev nodejs
reboot
Nach dem erneuten Reboot geht es mit diesen Befehlen weiter:
npm i -g npm@4
Die zum Schluss erscheinende Meldung Update available 5.6.0 → 6.0.0 │ Run npm i -g npm to update einfach ignorieren!
cd /opt/iobroker
dann:
sudo chmod +x reinstall.sh
./reinstall.sh
.. endet mit Meldung
— ./reinstall.sh: Zeile 34: Dateiende beim Suchen nach `”‘ erreicht.
— ./reinstall.sh: Zeile 37: Syntax Fehler: Unerwartetes Dateiende.
Dies ist kein Grund zur Sorge.
sollte jedoch eine Meldung kommen
-bash: ./reinstall.sh: /bin/bash^M: bad interpreter: No such file or directory
muss die Datei reinstall.sh auf Linux-Zeilenende umgewandelt werden.
Das geht mit Notepad++ oder auf der Kommandozeile mit diesen Befehlen (danke an paul53)
mv /opt/iobroker/reinstall.sh /opt/iobroker/reinstall.dos
tr -d '\r' < /opt/iobroker/reinstall.dos > /opt/iobroker/reinstall.sh
Jetzt noch ein
iobroker start
Und ioBroker läuft mit Node 8..
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