Benutzer-Werkzeuge

Webseiten-Werkzeuge


wiki:projekte:iobroker:uebersicht

Dies ist eine alte Version des Dokuments!


Neuinstallation ioBroker auf einem R-Pi 3 B+

Quellen:

Das Grundsystems

Installation

Die Verwendung von InfluxDB 2.x setzt ein 64-bit Betriebssystem voraus.
Ein Desktop bzw. eine vollständige grafische Oberfläche wird nicht benötigt. Daher bezeichnet man ein solches System als „Headless“. Somit basiert dieses Heimautomatisierungsprojekt auf einem Raspberry Pi OS (32 oder 64-bit) Lite.

# Raspberry Pi Image besorgen
#wget https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2023-02-22/2023-02-21-raspios-bullseye-armhf-lite.img.xz
wget https://downloads.raspberrypi.com/raspios_lite_armhf/images/raspios_lite_armhf-2023-10-10/2023-10-10-raspios-bookworm-armhf-lite.img.xz
oder 
#wget https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2023-02-22/2023-02-21-raspios-bullseye-arm64-lite.img.xz
wget https://downloads.raspberrypi.com/raspios_lite_arm64/images/raspios_lite_arm64-2023-10-10/2023-10-10-raspios-bookworm-arm64-lite.img.xz
# R-Pi Imager herunterladen und intallieren:
wget https://downloads.raspberrypi.org/imager/imager_latest_amd64.deb
sudo dpkg -i imager_latest_amd64.deb
rpi-imager
#sudo touch /media/<benutzername>/bootfs/ssh
#sync
# SD-Karte aushängen und damit den R-Pi booten

Konfiguration

Während des Bootvorganges erhält der Raspberry eine IP Adresse vom Router. Diese kann über die entsprechende Weboberfläche des Routers ermittelt werden.

# Grundsystem auf den aktuellen Stand bringen:
ssh -l pi <IP>
sudo su
apt-get update && sudo apt-get upgrade
apt-get install aptitude mc apt-transport-https software-properties-common
raspi-config nonint do_hostname iobroker
raspi-config nonint do_onewire 0
raspi-config nonint do_change_locale de_DE.UTF-8 UTF-8
raspi-config nonint do_expand_rootfs
raspi-config nonint do_update
reboot
# Feste IP für eth0 einstellen:
mcedit /etc/dhcpcd.conf
interface eth0
static ip_address=192.168.10.11/24
static routers=192.168.10.1
static domain_name_servers=192.168.10.1
# nicht benötigte Dienste beenden und/oder entfernen:
systemctl disable ModemManager.service
systemctl stop ModemManager.service
apt-get purge modemmanager

InfluxDB 1.x

Installation

sudo su
#wget -qO- https://repos.influxdata.com/influxdata-archive_compat.key | sudo apt-key add -
#source /etc/lsb-release
#echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
#curl https://repos.influxdata.com/influxdata-archive.key | gpg --dearmor | sudo tee /usr/share/keyrings/influxdb-archive-keyring.gpg >/dev/null
#echo "deb [signed-by=/usr/share/keyrings/influxdb-archive-keyring.gpg] https://repos.influxdata.com/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
wget -q https://repos.influxdata.com/influxdata-archive_compat.key
echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c influxdata-archive_compat.key' | sha256sum -c && cat influxdata-archive_compat.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list
 
apt-get update
apt-get install influxdb
 
systemctl unmask influxdb.service
systemctl enable influxdb
systemctl start influxdb
systemctl status influxdb

Konfiguration

sudo su
influx
> CREATE USER "admin" WITH PASSWORD 'influxdbadmin' WITH ALL PRIVILEGES
> CREATE USER "iobroker" WITH PASSWORD 'iobroker'
> CREATE DATABASE "iobroker"
> GRANT ALL ON "iobroker" TO "iobroker"
> exit
#
mcedit /etc/influxdb/influxdb.conf
[http]  
 enabled = true  
 bind-address = ":8086"  
 auth-enabled = true
 log-enabled = true  
 write-tracing = false  
 pprof-enabled = true  
 https-enabled = false
#
systemctl restart influxdb

Datenbankgröße ermitteln

sudo su
du -sh /var/lib/influxdb/data/iobrokerdb/

Backups

Erstellen

sudo su
influxd backup -portable /path/to/backup-destination

Wieder herstellen

sudo su
influxd restore -portable /path/to/backup-destination

InfluxDB 2.x

Installation

sudo su
cd ~
wget -q https://repos.influxdata.com/influxdata-archive_compat.key
echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c influxdata-archive_compat.key' | sha256sum -c && cat influxdata-archive_compat.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list
apt-get update
apt-get install influxdb2
systemctl start influxdb
systemctl status influxdb

Konfiguration

Die Konfiguration der InfluxDB erfolgt über den Browser via http://RASPI-IP:8086.

Grafana

Installation

sudo su
#wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key
#echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
 
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
apt-get update
# Install the latest OSS release:
apt-get install -y grafana
# Start System Service aka. Server
systemctl daemon-reload
systemctl start grafana-server
systemctl status grafana-server
systemctl enable grafana-server.service

Grafana Server: http://IP:3000

Grafana ohne Login

mcedit /etc/grafana/grafana.ini
# [auth.anonymous]
enabled = true
systemctl restart grafana-server

Backup

Erstellen

sudo su
cp /var/lib/grafana/grafana.db /path/to/backup-destination
cp /etc/grafana/grafana.ini /path/to/backup-destination

Wieder herstellen

sudo su
cd /path/to/backup-destination
cp grafana.db /var/lib/grafana/
cp grafana.ini /etc/grafana/

ioBroker

Installation

sudo su
# automatische Installation:
curl -sLf https://iobroker.net/install.sh | bash -

Nach der Installation ist die ioBroker Instanz erreichbar unter http://<Raspberry-Pi-IP>:8081.

Steuerung

# ioBroker starten:
iobroker start
# ioBroker stoppen:
iobroker stop
# ioBrker Infos anzeigen
iobroker info

Adapter installieren

Als Adapter werden alle Schnittstellen zu externen aber auch zu internen Datenquellen (z.B. Shelly Sensoren, Temperatur, Luftfeuchte, GPIO, 1-Wire, etc.) und Senken (Shelly Aktoren) bezeichnet.

  • influxDB (Datenbank zur Speicherung von Messwerten)
  • DS18B20 (Auslesen von 1-Wire Temperatursensoren)
  • HABpanel (Steuerung von Aktoren vis Webseite)
  • Jeelink-Geräte (Empfangen von 868mHz LaCrosse Temperatur- und Feuchtesensoren (hier z.B. TX29DTH-IT) mit Hilfe eines Jeelink Klones
  • MQTT Broker (zur Datenverarbeitung von MQTT-fähigen Sensoren und Aktoren)
  • Philips Luftreiniger (für die Anbindung eines Philips Air Purifier 4000i Series (Typ: AC4236/10)
  • RPI-Monitor (Nutzung von GPIOs z.B. zum Einlesen eines Reed-Kontaktes für den Gaszähler)
  • Skriptausführung (Javascript und Blockly)
  • WEB-Server (für HABpanel

Adapter konfigurieren

Die oben aufgeführten Adapter sind nach der Installation unter Instanzen zu finden und müssen dort konfiguriert werden.

1-Wire

DS18B20

TBC - Empfänger bauen und programmieren → TBC

MQTT

Für IKEA Sensoren –> Die angepasste Firmware gibt es hier.

Philips

Gaszähler

Reedkontakt am GPIO #?

Blockly

Und das ganze als Java Script:

createState('Gaszaehlerstand', 0, JSON.parse('{"type":"number", "unit":"m³"}'), async () => {
});
createState('GaszaehlerstandkWh', 0, JSON.parse('{"type":"number", "unit":"kWh"}'), async () => {
});
createState('Tagesverbrauch', 0, JSON.parse('{"type":"number", "unit":"m³"}'), async () => {
});
schedule("0 0 * * *", async () => {
  setState('javascript.0.Tagesverbrauch' /* Tagesverbrauch */, 0, true);
});
on({ id: 'rpi2.0.gpio.17.state' /* GPIO 17 */, val: false }, async (obj) => {
  let value = obj.state.val;
  let oldValue = obj.oldState.val;
  setState('javascript.0.Tagesverbrauch' /* Tagesverbrauch */, (getState('javascript.0.Tagesverbrauch').val + 0.01), true);
  setState('javascript.0.Gaszaehlerstand' /* Gaszaehlerstand */, (getState('javascript.0.Gaszaehlerstand').val + 0.01), true);
});
on({ id: 'javascript.0.Gaszaehlerstand' /* Gaszaehlerstand */, change: 'ne' }, async (obj) => {
  let value = obj.state.val;
  let oldValue = obj.oldState.val;
  // m³ x Zustandszahl x Brennwert
  setState('javascript.0.GaszaehlerstandkWh' /* GaszaehlerstandkWh */, Math.round(((obj.state ? obj.state.val : "") * 0.9613 * 9.866) * 1000) / 1000, true);
});
 
//JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjcmVhdGUlMjIlMjBpZCUzRCUyMjBCJTdCJTdETGxSZCUyQ2QhQnI2NyU0MFZsYnYlMjIlMjB4JTNEJTIyMTEzJTIyJTIweSUzRCUyMi0xMTIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFR2FzemFlaGxlcnN0YW5kJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJ6Q01IWiUzQiUyNCUzRGV2c1p+ZyUyMyUyNCUyNUIlMkNkJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkNPTU1PTiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiUyQndhSlhpQmV+MWRuJTQwU05CWEQlNURiJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRSU3QiUyMnR5cGUlMjIlM0ElMjJudW1iZXIlMjIlMkMlMjAlMjJ1bml0JTIyJTNBJTIybSVDMiVCMyUyMiU3RCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjcmVhdGUlMjIlMjBpZCUzRCUyMjIlNUIlM0QlNUREKmZ3ZVV5JTVEeiU1RGZLUmIqTiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5BTUUlMjIlM0VHYXN6YWVobGVyc3RhbmRrV2glM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMjYlMjN2alF2NEpoaVklN0NtWiU2MHR2YTQlMkIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQ09NTU9OJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIybEQlN0RwNy5WJTI1JTNEIVMlM0FlJTJGKFBqMSU1QmUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTdCJTIydHlwZSUyMiUzQSUyMm51bWJlciUyMiUyQyUyMCUyMnVuaXQlMjIlM0ElMjJrV2glMjIlN0QlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY3JlYXRlJTIyJTIwaWQlM0QlMjJKdCU1RVUlMjR3fiUyQzNSfilVUEpKUCUyQiUyNGMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFVGFnZXN2ZXJicmF1Y2glM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMm9iJTNCXzA5ISU1RXVrZV8lM0JjJTQwVXF0Q1olMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQ09NTU9OJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyQnI3eSUzRCUyQ2RHQUY5SSU1RG1iJTNGei0lMkMlM0ElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTdCJTIydHlwZSUyMiUzQSUyMm51bWJlciUyMiUyQyUyMCUyMnVuaXQlMjIlM0ElMjJtJUMyJUIzJTIyJTdEJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnNjaGVkdWxlJTIyJTIwaWQlM0QlMjIlMjNUWCUzRFpYJTdCLXcyY3UlM0RVaiFudU8qJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU0NIRURVTEUlMjIlM0UwJTIwMCUyMColMjAqJTIwKiUzQyUyRmZpZWxkJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnVwZGF0ZSUyMiUyMGlkJTNEJTIyJTQwMHVGbkszcCU0MGQoYUZOelQlN0MlMkZsYiUyMiUyMGlubGluZSUzRCUyMmZhbHNlJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwZGVsYXlfaW5wdXQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFamF2YXNjcmlwdC4wLlRhZ2VzdmVyYnJhdWNoJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMjQpciUyQ1glNjBGZy4lNUJxJTNEdV9IKmxmUmslMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb24lMjIlMjBpZCUzRCUyMmFGZiUyRiU0MCU1RSpsNEgpcCUyMyUyQ3U2RiU1RS4pJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFcnBpMi4wLmdwaW8uMTcuc3RhdGUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRWZhbHNlJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydXBkYXRlJTIyJTIwaWQlM0QlMjJOZHp+anclNjBPJTdEJTI0OGklN0NNSEJUQm41JTIyJTIwaW5saW5lJTNEJTIyZmFsc2UlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VqYXZhc2NyaXB0LjAuVGFnZXN2ZXJicmF1Y2glM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2FyaXRobWV0aWMlMjIlMjBpZCUzRCUyMkRxT1ROcm9NJTdDRkxXJTJGWGclMkJrJTQwa3IlMjIlMjBpbmxpbmUlM0QlMjJmYWxzZSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFQUREJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjI4NyU1RFpqJTI0RyU1RC4qJTdCdHJXYTAqQmh+JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjJNOSU0ME94JTJDOGdGMCUzQUhDbyUyNHhfdCUyQiklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VqYXZhc2NyaXB0LjAuVGFnZXN2ZXJicmF1Y2glM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJXJTVCJTdCKWNQJTdEOTByLWpDNFApJTQwUzFqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMC4wMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnVwZGF0ZSUyMiUyMGlkJTNEJTIyanI5Uk4lMkZIR0VVdmJKJTJDc2FzJTNEQWwlMjIlMjBpbmxpbmUlM0QlMjJmYWxzZSUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC5HYXN6YWVobGVyc3RhbmQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMldJVEhfREVMQVklMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2FyaXRobWV0aWMlMjIlMjBpZCUzRCUyMiE4LUlwcDdDclElNUQlM0QlM0ROSW5aVkQzJTIyJTIwaW5saW5lJTNEJTIyZmFsc2UlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUFERCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyJTNEM2NCJTIzZVpiLW0lN0JCQWJKX0pCJTNEJTI0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjIyJTJCbXpXKkwlNDAlNjA5aCU0MGQwUC0lMkMlMkY0RiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC5HYXN6YWVobGVyc3RhbmQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJxJTNBcDdGYXFzX2YlN0JSdkkxX0oueDIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwLjAxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbiUyMiUyMGlkJTNEJTIyN1dvbXclNjBxbF95dSU3Qmk5biglMkYlM0YzLSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC5HYXN6YWVobGVyc3RhbmQlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRW5lJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29tbWVudCUyMiUyMGlkJTNEJTIyVC0lMjQlMjRsJTJCUSFPa04lM0YuJTdCZCU3QmYzNFklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT01NRU5UJTIyJTNFbSVDMiVCMyUyMHglMjBadXN0YW5kc3phaGwlMjB4JTIwQnJlbm53ZXJ0JTNDJTJGZmllbGQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydXBkYXRlJTIyJTIwaWQlM0QlMjIpby0lM0FnMkpPJTQwbVclN0NOUEMlMkNfLWdhJTIyJTIwaW5saW5lJTNEJTIyZmFsc2UlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VqYXZhc2NyaXB0LjAuR2FzemFlaGxlcnN0YW5ka1doJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9ybmRmaXhlZCUyMiUyMGlkJTNEJTIyazBLJTdDSElUVyU3Q3BWZGYtZyolMkNYN0glMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJuJTIyJTNFMyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyeCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyVCU0MEM5JTdEVyUyNVJqMzN2RWpnTndaciU3QiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTMuMTIzNCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9hcml0aG1ldGljJTIyJTIwaWQlM0QlMjIlNjBUSiUzQVhfIXhmWmdjcSU1QiUzQk5JT35NJTIyJTIwaW5saW5lJTNEJTIyZmFsc2UlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRU1VTFRJUExZJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJtTFQlN0NpJTdCR2UlN0IlMjRQQmMlM0QyQ2xqeUglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2FyaXRobWV0aWMlMjIlMjBpZCUzRCUyMld1dCUzRGdVRkQlMjU0aDNGJTdCSDJxZSguJTIyJTIwaW5saW5lJTNEJTIyZmFsc2UlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRU1VTFRJUExZJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJYeTIlNjBOcCpleiUyM3UlNUVwJTNCJTQwczJEKU0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9zb3VyY2UlMjIlMjBpZCUzRCUyMmJLJTJGeW01MCUyNSUyQ0thZXZwSDZFJTVCKjMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFc3RhdGUudmFsJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyMTduNDRzb2gtTUMubEItUHQlMjUlMjVoJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMC45NjEzJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJDJTdEZ0hPJTVEJTVCMGQlN0R+aiU0MCU1QnQ2LlZNWCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTkuODY2JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==

InfluxDB

Backup durch Script

// Täglich um 03:00 Uhr Nachts wird das Backup ausgeführt. Anpassbar unter "schedule"
var usbstick = "/mnt/usb-stick/backup/"; /*Hier den Pfad zum USB-Stick eintragen*/
 
function backup() {
    exec('iobroker backup', 
        function (error, stdout, stderr) {console.log('stdout: ' + stdout);});
    setTimeout( function() { 
        exec('mv  -v /opt/iobroker/backups/* ' + usbstick,
            function (error, stdout, stderr) {console.log('stdout: ' + stdout);});
    }, 180000);
}
 
schedule("0 3 * * *",  function(obj){
    backup();
});

Update und Bugfixing

iobroker stop
iobroker update
iobroker fix
# oder curl -sL https://iobroker.net/fix.sh | bash -
iobroker upgrade self
iobroker start
wiki/projekte/iobroker/uebersicht.1698483772.txt.gz · Zuletzt geändert: von wikimaster