Homebridge-Tool zum aktualisieren, sichern, neu aufsetzen.....

  • Hallo,

    (leider werden die Bilder nicht mehr im Text korrekt angezeigt)

    ich stelle Euch hier ein Tool'packet zur Verfügung.

    Enthalten ist:

    - das Tool "raspiBackup.sh" um ein komplett Backup der SD-Karte von einem Raspberry (Debian x86) auf einen Backupmedium zu machen

    Benutze: "raspiBackup.sh ?" und siehe in "hbridge.cfg" um alle Optionen zu sehen.


    - das Tool "hbridge_new.sh" um "homebridge" zu entfernen, neu zu installieren, Plugins zu installieren, als Dienst einrichten/löschen, deconz installieren, Raspi CAM in Betrieb nehmen und weiters

    Benutze: "hbridge_new.sh ?" und siehe in "hbridge.cfg" um alle Optionen zu sehen.


    - im Ordner "$HOME/hbridge_install/files/" ist die Datei "WiFi_Check.sh"

    Das Script sucht den Gateway im WLAN und prüft ob dieser erreichbar ist, wenn nicht wird das WLAN neugestartet.

    Benutze: "$HOME/hbridge_install/files/WiFi_Check.sh ?" um alle Optionen zu sehen.

    (beim ersten Start ohne Parameter wird ein Systemlink angelegt, danach reicht "WiFi_Check.sh" zum starten)


    Durch den start:

    Code
    sudo crontab -e

    und diesem Eintrag ins root cron:

    # */5 * * * * /usr/local/bin/WiFi_Check.sh 2>&1 | /usr/bin/logger -t WiFi_check

    wird aller 5 min geprüft ob der WLAN-Gateway erreichbar ist.


    - im Ordner "$HOME/hbridge_install/files/" ist die Datei "netz_tool.sh"

    Benutze: "$HOME/hbridge_install/files/netz_tool.sh ?" um alle Optionen zu sehen.

    siehe im Post Unten bei "netz_tool.sh"


    EDIT:

    Aktualisiert am 09.08.2021


    - 09.08.2021 raspiBackup 0.4.22c hbridge_install 1.0.88b, ./files/WiFi_Check v.0.21, ./files/netz_tool.sh v.0.45b, ./files/img_mount.sh v.0.0.17 Beta, reporter.sh 0.1.7b

    - 19.03.2021 raspiBackup 0.4.22 hbridge_install 1.0.85a, WiFi_Check v.0.21, netz_tool.sh v.0.44, reporter.sh 0.1.7b

    - 17.01.2021 raspiBackup 0.4.21 hbridge_install 1.0.82, WiFi_Check v.0.19f, netz_tool.sh v.0.41d, reporter.sh 0.1.7b

    - 25.10.2020 raspiBackup 0.4.21 hbridge_install 1.0.79, WiFi_Check v.0.19f, netz_tool.sh v.0.41d, reporter.sh 0.1.7b

    - 27.09.2020 raspiBackup 0.4.20e hbridge_install 1.0.78f, WiFi_Check v.0.19f, netz_tool.sh v.0.41d, reporter.sh 0.1.7b

    - 28.08.2020 raspiBackup 0.4.20d hbridge_install 1.0.78, WiFi_Check v.0.19e, netz_tool.sh v.0.41d, reporter.sh 0.1.7b

    - 18.07.2020 raspiBackup 0.4.19e hbridge_install 1.0.77e, WiFi_Check v.0.19e, netz_tool.sh v.0.41d, reporter.sh 0.1.7b

    - 09.06.2020 raspiBackup 0.4.19c hbridge_install 1.0.77c, WiFi_Check v.0.18c, netz_tool.sh v.0.41c, reporter.sh 0.1.7b

    - 31.05.2020 raspiBackup 0.4.19 hbridge_install 1.0.76b, WiFi_Check v.0.18b, netz_tool.sh v.0.41b, reporter.sh 0.1.7b

    - 03.05.2020 raspiBackup 0.4.16b hbridge_install 1.0.75, WiFi_Check v.0.18, netz_tool.sh v.0.41, reporter.sh 0.1.7b

    - 18.03.2020 raspiBackup 0.4.16b hbridge_install 1.0.72, WiFi_Check v.0.17, netz_tool.sh v.0.41, reporter.sh 0.1.7b

    - 08.03.2020 raspiBackup 0.4.15 hbridge_install 1.0.71, WiFi_Check v.0.17, netz_tool.sh v.0.41, reporter.sh 0.1.7b

    - 17.02.2020 raspiBackup 0.4.15 hbridge_install 1.0.69, WiFi_Check v.0.17, netz_tool.sh v.0.41, reporter.sh 0.1.7b

    - 04.01.2020 raspiBackup 0.4.13a hbridge_install 1.0.65a, WiFi_Check v.0.17, netz_tool.sh v.0.40a, reporter.sh 0.1.7b

    - 15.12.2019 raspiBackup 0.4.11 hbridge_install.tar.gz 1.0.63b, WiFi_Check v.0.17, netz_tool.sh v.0.40a,

    reporter.sh 0.1.7b

    # Die Datei "reporter-example.blacklist" umbenennen in "reporter.blacklist"

    # In der Datei "reporter.blacklist" kann pro Zeile ein Eintrag aus der Fehlermeldung hinterlegt werden.

    # Alle Fehlermeldungen die dieses Wort enthalten, werden nicht per Telegram gesendet.

    # Vorsicht: "ERROR" blockiert das senden aller Meldungen die ERROR enthalten.

    - 09.11.2019 raspiBackup 0.4.9 hbridge_install.tar.gz 1.0.61, WiFi_Check v.0.17, netz_tool.sh v.0.39

    - 03.10.2019 raspiBackup 0.4.8d hbridge_install.tar.gz 1.0.60, WiFi_Check v.0.17, netz_tool.sh v.0.36b

    - 18.08.2019 raspiBackup 0.4.5b hbridge_install.tar.gz 1.0.57b, WiFi_Check v.0.17, netz_tool.sh v.0.33

    - 08.08.2019 raspiBackup 0.4.4 hbridge_install.tar.gz 1.0.56, WiFi_Check v.0.17, netz_tool.sh v.0.32

    - 22.07.2019 raspiBackup 0.4.3 hbridge_install.tar.gz 1.0.55b, WiFi_Check v.0.17, netz_tool.sh v.0.32

    - 18.06.2019 raspiBackup 0.4.3 hbridge_install.tar.gz 1.0.54, WiFi_Check v.0.17, netz_tool.sh v.0.29g

    - 02.06.2019 raspiBackup 0.4.3 hbridge_install.tar.gz 1.0.52a, WiFi_Check v.0.17, netz_tool.sh v.0.28

    - 16.05.2019 raspiBackup 0.4.3 hbridge_install.tar.gz 1.0.52

    - 07.05.2019 raspiBackup 0.4.2b hbridge_install.tar.gz 1.0.51b

    - 05.05.2019 raspiBackup 0.4.2 hbridge_install.tar.gz 1.0.51

    - 04.05.2019 raspiBackup 0.4.2 hbridge_install.tar.gz 1.0.50

    - 19.01.2019 raspiBackup 0.4.2 hbridge_install.tar.gz 1.0.49

    - 01.01.2019 raspiBackup 0.4.1 hbridge_install.tar.gz 1.0.47a

    - 30.03.2019 raspiBackup 0.4.1 hbridge_install.tar.gz 1.0.47

    - 13.03.2019 raspiBackup 0.4.0 hbridge_install.tar.gz 1.0.46

    - 10.03.2019 raspiBackup 0.4.0 hbridge_install.tar.gz 1.0.44

    - 03.02.2019 raspiBackup 0.4.0 hbridge_install.tar.gz 1.0.42

    - 02.01.2019 raspiBackup 0.3.9 hbridge_install.tar.gz 1.0.39

    - 28.12.2018 raspiBackup 0.3.5,6 hbridge_install.tar.gz 1.0.38

    - 21.11.2018 raspiBackup 0.3.5, hbridge_install.tar.gz 1.0.35

    - 30.08.2018 raspiBackup 0.3.1b, hbridge_install.tar.gz 1.0.31b

    - 19.08.2018 raspiBackup 0.3.1, hbridge_install.tar.gz 1.0.31

    - 01.07.2018 raspiBackup 0.2.9, hbridge_install.tar.gz 1.0.29

    - 24.06.2018 raspiBackup 0.2.8b, hbridge_install.tar.gz 1.0.28b2

    - 18.06.2018 raspiBackup 0.2.8, hbridge_install.tar.gz 1.0.28b

    - 16.06.2018 raspiBackup 0.2.7a, hbridge_install.tar.gz 1.0.27j

    - 04.06.2018 raspiBackup 0.2.7, hbridge_install.tar.gz 1.0.27c

    - 21.05.2018 raspiBackup 0.2.6b, hbridge_install.tar.gz 1.0.26b

    - 04.05.2018 raspiBackup 0.2.5, hbridge_install.tar.gz 1.0.25d

    - 01.05.2018 raspiBackup 0.2.4d, hbridge_install.tar.gz 1.0.25b

    - 25.04.2018 raspiBackup 0.2.4d, hbridge_install.tar.gz 1.0.24h
    - 24.03.2018 raspiBackup 0.1.7, hbridge_install.tar.gz 1.0.16b

    - 18.03.2018 raspiBackup 0.1.6b, hbridge_install.tar.gz 1.0.15
    - 10.03.2018 raspiBackup 0.1.6b, hbridge_install.tar.gz 1.0.14


    NEU

    ACHTUNG ab 1.0.77e neuer Aufbau der "hbridge.cfg" (für Zukünftige Erweiterungen)


    - 1.0.88b = Restore-Datei Auswahl per Index Nummer

    - 1.0.88 = -rsl = -rs + tail -f syslog

    - 1.0.87d = BugFix, Text=node lts, BugFix installMode_node inst_node_version lts_node_version

    - 1.0.86c = new $lts_node_version, (-r node) remove_node, "-u node lts"

    - 1.0.86a = -?, installTyp Anzeige node, BugFix, stab_node=xx.yy.cc xx -> lts -> www_node_lts;Typos

    - 1.0.85 = neu Parameter save, sichern der latest last letzte stabile Version

    - 1.0.84 = BugFix -u node

    - 1.0.83 = BugFix, nodeInstMode=beta/stable

    - 1.0.82a = apt_update nur einmal am Tag Cache aktualisieren,Code cleaning

    - 1.0.82 = deConzInstMode - leer=nicht,1=beta,0=stab installiert, BugFix

    - 1.0.81 = @e Eintrag in der "hbridge_backup.cfg" wird als Exclude-Eintrag benutzt

    - 1.0.80 = beim verwenden einer "hbridge_backup.cfg" wird auch eine exclude Datei "hbridge_backup_exclude.cfg" berücksichtigt

    - 1.0.79 = BugFix

    - 1.0.78f = -h Display mor Info's, BugFix deConz firmware, einlesen der installierten Versionen, Hilfeanzeige erweitert, scan nach Parameter DBG

    - 1.0.78 = Typo Fix, Versionnummern angepasst

    - 1.0.77e = dbg u.functions Datei eingebunden (vorbereitung Zukunft), suche in -p -ld, RaspBee II RTC Modul, einige Bugs behoben

    - 1.0.77c = gosse Typo & BugFix aktion in allen scripts -i, -hue, restore services

    (Da beim versuchten Umzug auf einen neuen Raspberry einige Bugs auftauchte, diese erstmal beseitigt)

    - 1.0.76b = Parameter "-p -s" Suchbegriff verfeinert siehe Hilfe

    "-p -is" = Internet suche, lese Plugins lokal und INet inkl. Anzeige beider Versionen



    neue Variablen für neues "pishrink.sh"

    Shrink_compress="false" # true= komprimiere image nach dem shrinken mit gzip

    Shrink_advRepair="true" # true= Use advanced filesystem repair option if the normal one fails


    - 1.0.75 = Parameter "-p -s nuki", Inet suche nach Plugin und Anzeige der Version, BugFix

    - Parameter "-ov" = online Version, einlesen von latest Version aus dem Internet, homebridge, npm, node, deConz deConz FW

    - Umstellung: erst Überschrift, Text reading...

    - InterNet Test auf 8.8.8.8 inkl. Abbruch, eingebaut

    1.0.73 = -rs/-rs service service service jetzt möglich

    1.0.72 = bei (-d) aktualisieren deCONZ Firmware? eingebaut, BugFixing

    1.0.71 = HB-Daten Pfad in Variable, dadurch/backup Anpassungen für config-ui-x,

    - bei deConz Sicherung werden (config.json/full_state.json) mit exportiert

    - neuer Parameter "-npm -od (outdate)", BugFix Backup-Dateibereinigumg,

    - Parameter "-p -l" Plugindetails Anzeige eingebaut, pishrink.sh aktualisiert


    1.0.69 = in der "hbridge.cfg" neue Variablen für Parameter

    -hue -i" installiert die Voraussetzungen für das Backup der hue-Einstellungen, kann ein eigener Mount-Point sein

    „-hue -b“ Backup der hue-Einstellungen, es werden mehrere hue unterstützt, es sind bis 30 Sicherungen/Tag möglich

    "backup" sichern von hue- und deCONZ-Einstellungen möglich


    1.0.65 = In der "hbridge.cfg" Date_Format, neue Variablen in der "hbridge.cfg" Datei

    - Date_Format="Jahr" # Datumformat "Tag"=09122019, "Jahr"=20191209, "Monat"=12092019

    - Date_SicName="2" # "0"=ohne Date_Format, "1"=Name_(Date_Format), "2"=(Date_Format)_Name, Format des Namen für die Sicherungsdatei

    1.0.64 = In der "hbridge.cfg" Date_SicName=1 Name_Date.tar.gz, 2 = Date_Name.tar.gz, BugFix, formatDate, Date_Format

    1.0.63 = In der "hbridge.cfg" Restart_Services="" eingeführt, wenn diese leer ist dann werden Instanzen gesucht,

    Restart_Services="reporter deconz homebridge homebridge-hue" diese Services werden beendet/gestartet

    Restart_Services="reporter deconz hbridge+" durch "hbridge+", wird nach weiteren "homebridge*" Instanzen gesucht und diese auch enspr. beendet/gestartet

    HB_hue_sic_Device="" und HB_hue_sic_Pfad="" eingeführt für mount/umount und seperaten backup Point für Hue-Sicherung


    1.0.62 = deCONZ download Quelle angepasst, BugFixing

    1.0.61 = reporter.service first stop / last start

    1.0.60 = deconz_service="" # deconz/deconz-gui/leer wenn Service beendet/gestartet werden soll, Service-Name eintragen

    Wenn diese Variable gesetzt ist, wird diese Instanz mit beendet/gestartet (in Bridge_new und raspiBackup)


    hbridge_new.sh,

    HB_bkp_Deconz_user="046FFFFFFF # Phoscon user für Deconz Config-Backup (Anmeldung aus config.json \"00212EFFFFFFFFFF\": \"046FFFFFFF\" nur dir Ziffern nach :)

    HB_bkp_Deconz_ip="" # ip Adresse des deconz_service, default localhost:80

    Wenn diese Variable gesetzt ist, wird vor dem Bridge-backup die config von deCONZ gesichert in /.local/share/dresden-elektronik/deCONZ/deCONZ.tar.gz


    raspiBackup.sh

    gzImage="0" # 0 = disable, zip/gz = im Anschluss wird die img-Datei gepackt (*.zip/*.img.gz)

    Wenn diese Variable gesetzt ist, wird nach dem erstellen der img-Datei diese gepackt (entweder als gz oder zip)

    entpacken möglich mit: "raspiBackup.sh unpack"


    1.0.69 es können die HUE und deCONZ Einstellungen gesichert werden

    1.0.57 start/stop deCONZ Dienste eingebunden (auch in raspiBackuo.sh 0.4.5), in der "hbridge .cfg" Variable " deconz_service="""

    setzen (leer/deconz/deconz-gui)

    1.0.56 start/stop deCONZ Dienste eingebunden (auch in raspiBackuo.sh 0.4.4), installieren/deinstallieren Homebridge-Dashboard Tool (Übersichtsseite beim Einloggen)

                   (by Nastra & sschuste ), es wird die aktuellen Version aus dem git-hub runtergeladen

    1.0.55 support Install-/ deinstallieren von Homebridge-Dashboard von Nastra Nastra und BugFix (siehe "hbridge_new.sh -?")

    1.0.54 BugFix,mqtt = de-/install MQTT-Broker, -s --r InstanzName = Instanz deinstallieren

    1.0.52a BugFix, "-i AirPlay" installieren Music stream (Radio Webstream) auf AirPlay Lautspercher, auf Basis von forked-daapd, ab 3 Lautsprecher leider Aussetzer und teilw. asynchron

    1.0.52 BugFix, "pi_clean" erweitert

    1.0.51 neu "pi_clean" RasPi von Altlast befreien, vorher eine Sicherung anlegen!!

    1.0.49 optional config-ui-x als standalone Instanz beim erstellen einer neuen Instanz (-s)

    1.0.38 bitte unbedingt erst mit "hbridge_new.sh ?" die neuen Optionen ansehen!!

    kurze Parameter und Optionen jetzt möglich

    Parameter Option

    -u = update -l = list

    -r = remove -i = install

    -i = install -r = remove

    -p = plugin -ld = list detail

    -s = service -c = ctrl

    -d = deconz -s = search

    -rs = restart Service(s)

    -hue = hue (-i/-d/-b/-r)

    -npm = mpm-check -od = outdate

    -mqtt = mqtt

    -ov = online Version

    -h(?) = Hilfe


    z.B.: "hbridge_new.sh -p -l" entspricht "hbridge_new.sh plugin list" listet alle installierten Plugins inkl. Versionsnummer auf


    1.0.31 neue Parameter: "service list", "service start/stop", "service ctrl", "update npm/node" ....

    am besten mal "hbridge_new.sh ?" starten und lesen.

    1.0.28c Parameter "restore" wiederherstellen einer oder alle Dateien aus einer Sicherungs-Datei neueParameter

    1.0.28b Parameter "backup", "backup del" und "backup nodel"

    macht eine Sicherung der homebridge Daten bzw. wenn vorhanden was in der "hbridge_backup.cfg" steht.

    siehe "hbridge_new,sh ?" und "hbridge_backup-example.cfg" im Tools-Packet.

    Die Sicherung kann als cron Job laufen (wiederkehernd), die Anzahl der zu behaltenden, der Ziel-Ort und der Name kann angegeben werden.

    (in der hbridge.cfg)


    1.0.26 enthält die System Überwachungsdienste, logwatch, reporter und fritzbox-reboot von Nastra .

    Diese Dienste können mit dem Parameter "ctrl_service" beim ersten Aufruf installiert und beim zweiten Aufruf gelöscht werden.

    Eine Beschreibung gibt es hier:

    Homebridge-Tool's zum System, Update und Instanzen überwachen mit Telegram


    1.0.24 wird zum konfigurieren und einstellen bestimmter Vorgaben benutzt (für beide Tools).

    Datei: "/home/pi/hbridge_install/hbridge.cfg"

    ab:

    1.0.14 für "backup" einführen der Datei, hbridge_backup.cfg welche angibt was gesichert werden soll, falls nicht vorhanden, Versuch der autom. Erkennug. (siehe hbridge_backup-example.cfg)

    =============================================================================

    hbridge_new.sh:

    Direkter Link zum Tool:

    https://www.dropbox.com/s/u69m…ridge_install.tar.gz?dl=0


    https://www.dropbox.com/s/0mqy…nstall_1.0.35.tar.gz?dl=0


    enthält die Versionen:

    hbridge_new.sh 1.0.82

    raspiBackup.sh 0.4.21

    files/netz_tool.sh 0.41d

    files/WiFi_Check.sh 0.19f

    (Optionen anzeigen, jeweils mit: Programmname -?)

    reporter.sh 0.1.7b


    oder im Terminal eingeben

    Code
    sudo wget https://www.dropbox.com/s/u69m2e1cga1886p/hbridge_install.tar.gz


    Diesen Link mit rechts anklicken und "Link-Adresse kopiern" auswählen.

    Dann im Terminalfenster hinter "sudo wget " einfügen.


    hbridge_install.tar.gz in /home/pi speichern

    Mit "tar -xvzf hbridge_install.tar.gz" entpacken.

    "cd hbridge_install"

    "./hbridge_new.sh parameter" s.u. (oder eingeben "./hb+TAB-Taste+Enter")


    Der erste Start muss mit Pfadangabe erfolgen: "/home/pi/hbridge_install/hbridge_new.sh",

    nach dem ersten start reicht: "hbridge_new.sh" zum starten.


    Als erstes bitte starten mit: "./hbridge_new.sh ?" um sich einen Überblick und die Möglichkeiten zu verschaffen.


    Mit demTool ist es möglich schnell mal auf dem RasPi / Debian X86 die "homebridge" komplett neu zu installieren/aktualisieren.

    In dem Fall ich das Image von: Homebridge Image & Tool - Raspbian Stretch Lite - Raspberry Pi ein.

    1. Image auf die SD Karte ,

    2. starte den RasPi,

    3. erweitere das Filesystem,

    4. kopiere meinen gesicherten "homebridge" Ordner nach /var/ ,

    5. kopiere meine "hbridge_plugin.inst" Datei nach "/home/pi/hbridge_install/" und installiere mit

    6. "hbridge_new.sh plugin" alle Plugins die ich brauche, das war alles.


    Bei einer neustallation werden die zu installierende npm-, Node-, homenridge Version während der Installation abgefragt.


    Mit „tar -xvzf hbridge_install.tar.gz“ kann das Tool-Paket noch einmal entpackt werden. (ist auch im Image enthalten)

    Im Ordner "/home/pi/hbridge_install/" ist eine Demo-Datei "hbridge_plugin-example.inst" und dient als Vorlage

    für einen eigene "hbridge_plugin.inst".


    Wenn man eine Datei mit "nano /home/pi/hbridge_install/hbridge_plugin.inst" nach diesem Muster erstellt,

    (einfach pro Zeile ein gewünschtes Plugin eintragen, ohne "homebridge-". )

    Kann man mit "/home/pi/hbridge_install/hbridge_new.sh plugin" diese Plugins automatisch in einem Rutsch installieren.


    Wer schnell mal die "homebridge" neu installieren will, gibt einfach ein:

    "hbridge_new.sh remove"

    (das vorhandene homebridge inkl. Plugins und nodejs wird entfernt und nach Rückfrage neu installiert.)


    Einfach mal "hbridge_new.sh ?" aufrufen, dann werden alle mögl. Parameter angezeigt.


    Mögliche Parameter sind:

    siehe Spoiler oben


    hier die" hbridge.cfg"

    in dieser Datei werden die benötigten Variablen gesetzt


    ########################################################################################################################

    # Gemeinsame Configdatei #

    # "/home/pi/hbridge_install/hbridge.cfg" #

    ########################################################################################################################


    Version_cfg="v0.0.02"


    ########################################################################################################################

    # Allgemein #

    ########################################################################################################################

    # "no"= keine Überprüfung, "Raspbian" für RaspBerry oder "Debian" für x86 System

    Distri=""


    # "" kein mit loggen, in einer Datei "/var/log/hbridge.log" oder "journal"

    Logfile=""


    # "1"= über Telegram API benachrichtigen, "0"= keine Nachricht senden

    SendTelegram="0"


    # Services die beendet/gestartet werden soll, Service-Name eintragen "reporter deconz-gui homebridge-hue" usw.

    # "deconz-gui mosquitto" wenn diese Service beendet/gestartet werden soll

    # "deconz-gui hbridge+" deconz-gui beenden/starten danach homebridge* Instanzen suchen und beenden/starten

    #Restart_Services="deconz-gui hbridge+"

    Restart_Services=""


    # Datumformat "Tag"=09122019, "Jahr"=20191209, "Monat"=12092019

    Date_Format="Jahr"


    # "0"=ohne Date_Format, "1"=Name_(Date_Format), "2"=(Date_Format)_Name, Format des Namen für die Sicherungsdatei

    Date_SicName="0"



    ########################################################################################################################

    # hbridge_new.sh #

    ########################################################################################################################

    # Vorgabe: "1"=stoppen/starten, "0"=nicht stoppen, aller Dienste

    hb_ServicesRestart="1"


    # hier das externer Sicherungs-Device eintragen ("/dev/sda1", "/dev/sdc1" oder "192.168.6.68:/volume1")

    HB_sic_Device=""


    # Pfad für Sicherungsdatei (wenn leer: "$HOME/hbridge_install/backup/")

    HB_sic_Pfad=""


    # Name der Sicherungsdatei "-01.tar.gz" wird autom. angefügt (wenn leer: "homebridge_Date_Format-01.tar.gz")

    HB_sic_Name=""


    # Anzahl der SicherungsDateien im Sicherungsordner, 2 alte Sicherungen bleiben erhalten +1 (aktuelle Sicherung)

    HB_sic_Anzahl="3"


    # Phoscon user für Deconz Config-Backup (Anmeldung aus config.json "00212EFFFFFFFFFF": "046FFFFFFF" nur die Ziffern nach :)

    HB_bkp_Deconz_user=""


    # ip Adresse des deconz_service, default localhost:80

    HB_bkp_Deconz_ip=""


    # "1"= config.json mit selective Plugin laden, "2"= selective und UI-X standalone für erstellen von Instanzen

    Load_Plugin_selective=""


    # Homebridge Token für Telegram API

    TToken_hbridge_new=""


    # CHAT ID für Telegram bot Chat

    TChat_ID_hbridge_new=""


    # Datei an Telegram senden

    TelegramAnhang=""


    # Photo an Telegram senden

    TelegramPhoto=""


    # IP-Adresse(n) der Hue, "192.168.2.2 192.168.2.5", kann aus der Plugin config.json genommen werden

    HB_hue_ip=""


    # API-Key(s), "xxx yyy", API1 zu IP1, API2 zu IP2 usw., aus der Plugin config.json von "users" der Teil nach dem :"ApiKey"

    HB_hue_api=""


    # hier das externer Sicherungs-Device eintragen ("/dev/sda1", "/dev/sdc1" oder "192.168.6.68:/volume1")

    HB_hue_sic_Device=""


    # Pfad für HUE-Sicherung (wenn leer: "$HOME/hbridge_install/backup/")

    HB_hue_sic_Pfad=""


    # Name der HUE-Sicherung, "hue-sic", (HB_sic_Pfad/HB_hue_sic_Name) "_xxx-01.json" wird angefügt,xxx=letzte Zahl der IP-Adresse

    HB_hue_sic_Name=""



    ########################################################################################################################

    # raspiBackup.sh #

    ########################################################################################################################

    # Das Boot-Device eintragen (Achtung ohne Ziffer, "sda", "sdb", "mmcblk0")

    Boot_Device=""


    # hier das Sicherungs-Device eintragen ("/dev/sda1", "/dev/sdc1" oder "192.168.6.68:/volume1")

    Backup_Device=""


    # Backup Ziel (""= /mnt/USB_Device) oder z.B. "/mnt/sda1" eintragen

    Backup_Pfad=""


    # 3 alte Backups bleiben erhalten +1 (aktuelle Backup)

    Backup_Anzahl="3"


    # "0"= nichts löschen "nodel", "1"= max. AnzBackup-1 Img bleiben auf dem Stick, "2"= alle Img löschen "del"

    Del_Img="1"


    # Anzeige der Uhrzeit vor und nach der Sicherung/Shrinking "1"= an, "0"= aus

    DispSicTime="1"


    # "1"= Batch-Modus an, "0"= Batch-Modus aus

    Run_Batch="0"


    # Dateiname der Sicherungsdatei vorgeben (das Datum, wird autom. angefügt)"MM2_`echo ${KRNL_REL%-*}`"

    image_Name=""


    # "0"=disable, "zip"/"gz"= im Anschluss wird die img-Datei gepackt (*.img.zip/*.img.gz)

    gzImage="0"


    # "1"= eine Kommentar-Datei zum Backup anlegen (Bestätigung mit Enter notwendig!)

    Backup_txt="0"


    # Anzahl der Zeilen für die Kommentar-Datei

    KommentarZeilen="5"


    # "1"= mini Log-Datei zum Backup mit erstellen

    Backup_Log="1"


    # "0"= Image nicht shrinken, "1"= Image shrinken

    Shrink_Image="0"


    # true = kein autom. erweitern des Filesystem nach dem Restore, false = Filesystem autom. erweitern

    Skip_Autoexpand="false"


    # true= komprimiere image nach dem shrinken mit gzip

    Shrink_compress="false"


    # true= Use advanced filesystem repair option if the normal one fails

    Shrink_advRepair="true"


    # Token für Telegram API

    TToken_raspiBackup=$TToken_hbridge_new


    # CHAT ID für Telegram bot Chat

    TChat_ID_raspiBackup=$TChat_ID_hbridge_new



    ########################################################################################################################

    # logwatch.sh #

    ########################################################################################################################

    # Telegram API Token, logwatch senden

    TToken_lwatch=$TToken_hbridge_new


    # Telegram CHAT ID für "bot Chat", logwatch senden

    TChatID_lwatch=$TChat_ID_hbridge_new



    ########################################################################################################################

    # reporter.sh #

    ########################################################################################################################

    # Telegram API Token, report senden

    TToken_reporter=$TToken_hbridge_new


    # Telegram CHAT ID für "bot Chat", report senden

    TChatID_reporter=$TChat_ID_hbridge_new



    ########################################################################################################################

    # fritzbox-reboot.sh #

    ########################################################################################################################

    # User-Name zur Anmeldung an der Fritz-Box

    Fritz_User=""


    # Password zur Anmeldung an der Fritz-Box und Repeater

    Fritz_Passwort=""


    # IP-Adresse der Fritz-Box

    FritzBox_IP=""


    # IP-Adresse der Repeater = "192.168.178.1 192.168.178.2"

    FritzRepeater_IP=""


    # Telegram CHAT ID für "bot Chat", fritzbox senden

    TChatID_fritz=$TChat_ID_hbridge_new


    # Fritz Telegram API Token, fritzbox senden

    TToken_fritz=$TToken_hbridge_new



    ########################################################################################################################

    # Notiz Timerzeiten #

    ########################################################################################################################

    #logwatch.timer: # OnCalendar=Mon-Sun *-*-* 00:00:00

    #raspiBackup.timer: # OnCalendar=Mon-Sun *-*-* 01:00:00

    #fritzbox-reboot.timer: # OnCalendar=Sun *-*-* 02:00:00

    #system-reboot.timer: # OnCalendar=Sun *-*-* 02:30:00



    ########################################################################################################################

    # Beispiele #

    ########################################################################################################################

    # Logfile="journal" # "journal" loggen in /var/log/syslog mit "sudo journalctl -f"

    # Logfile="/var/log/hbridge_new.log" # logge alle Ausgaben in dieser Datei mit

    # TelegramAnhang="/home/pi/findgrep.sh" # Datei an Telegram senden

    # TelegramPhoto="/home/pi/6.jpg" # Photo an Telegram senden

    # Backup_Device="192.168.6.68:/volume1/Backup-HBS" # Sicherungs-Device

    # Backup_Pfad="/home/pi/hbridge_install/Backup-HBS" # Backup Ziel

    # Restart_Services="deconz deconz-gui hbridge+" # deconz und dann homebridge Services vor dem Backup beenden/starten

    #



    Eine Wiederherstellung, ist mit dem Parameter "restore" möglich.

    - erst muss die Sicherung-Datei eingegeben werden, danach die Datei (oder Enter für alle) zum wiederherstellen.


    Mit "hbridge_new.sh remove" wird das installierte "homebridge", node, npm und alle Plugins entfernt,

    (Der Daten-Ordner /var/homebridge bleibt komplett erhalten)

    anschliessend kommt die Frage ob man neu installieren ("install") will (bei Eingabe von "J" oder "Enter").

    Es folgt die Abfrage nach den zu installierenden Versionen von node, npm und homebridge.

    Danach kommt die Frage "Plugins installieren ?" ("plugin"). Falls die Datei "hbridge_plugin.inst" existiert,

    wird diese eingelesen und die enthaltenen Plugins installiert.

    Danach ob man homebridge als "Dienst einrichten ?" ("service") möchte.

    Evtl. ob "Raspberry neu starten ?"

    Zuletzt die Frage "Dienst starten?".

    (jeder Schritt kann einfach mit Enter bestätigt werden, dabei wird das grüne übernommen)


    Wer ein laufendes System auf homebridge "Dienst" umstellen will, macht folgendes:

    "sudo mkdir /var/homebridge"

    (kopieren der bisherigen homebridge des User pi)

    "sudo cp -r /home/pi/.homebridge /var/homebridge"

    "sudo chmod -R 0755 /var/homebridge"

    "hbridge_new.sh service"


    =============================================================================


    raspiBackup.sh:

    (im ToolPacket enthalten)

    einzel Download:

    https://www.dropbox.com/s/p0r11hiteay694u/raspiBackup.sh


    letzte Version ohne separate cfg Datei:

    https://www.dropbox.com/s/j82u925l8g0367i/raspiBackup_ohne-cfg.sh


    speichern und Rechte setzen:

    Code
    sudo chmod +x ./raspiBackup.sh


    Das Tool dient zum sichern der SD-Karte auf einen Backupmedium

    Unterstützt werden zur Zeit Raspbian und Debian X86 Systeme.


    ACHTUNG!! Shrink für NOOBS image wird aktuell nicht unterstützt !!

    NEU ab:

    0.4.22b = start/stop MM2 integriert

    0.4.22 = BugFix, TypoFix, Bug "q" Abfrage

    0.4.21 = MM2 erkannt -> MM2 beenden/starten, BugFix,

    0.4.20d = -z/-gz, -sz Parameter, BugFix, scan nach Parameter DBG

    0.4.19e = DBG u. functions Datei eingebunden (vorbereitung Zukunft), -img BugFix, mount_image, pack_file, unpack_file

    0.4.19c = BugFixing, Cleaning SicFile exist -> rename; clean_file_typ; shrink_Image

    0.4.19b = autom. ermitteln Backup_Device, Typo BugFix, new pishrink.sh, add new Variables (cfg-Datei): Shrink_compress, Shrink_advRepair,

    - Cleaning SicFile exist -> rename; clean_file_typ, shrink_Image

    0.4.16b = BugFix, Bereinigung-Backupmedium, Code cleaning

    0.4.15 = wenn in der Variable „Restart_Services“ ein "hbridge+" am Ende ist, wird nach weiteren "homebridge*" Instanzen gesucht,

    reporter.service first-stop / last-start, ein Datumsformat und Typ wurde integriert

    0.4.11 = BugFix -l, Date_Format, final

    0.4.10 = Variable in "hbridge.cfg", Restart_Services="" , HB-Instanzen werden gesucht,

    Restart_Services="deconz homebridge", diese Dienste beim Backup beenden/starten

    0.4.8c

    Variable gzImage="0" # 0 = disable, zip/gz = im Anschluss wird die img-Datei gepackt (*.zip/*.img.gz)

    Wenn diese Variable gesetzt ist, wird nach dem erstellen der img-Datei diese gepackt (entweder als gz oder zip)

    entpacken möglich mit: "raspiBackup.sh unpack"

    Variable "deconz_service" eingeführt, wenn gesetzt wird diese Instanz mit beendet/gestartet

    0.2.9

    auch ohne cfg-Datei lauffähig,

    0.2.8c

    img mount - ein Backup-Image mounten nach "/mnt/image", dadurch erhält man Dateitzugriff auf den Inhalt.

    img umount - das Backup-Image wieder entladen

    format - USB-Device Partition löschen, anlegen, formatieren (nur exFAT) und Namen vergeben (ab Version 0.2.8b)

    Aufruf: z.B. für das starten aus dem cmdtrigger-Plugin heraus, in der config.json eintragen:

    Code
    "command": "sudo -c pi /home/pi/hbridge_install/raspiBackup.sh cmd"

    evtl. den User pi anpassen.


    Die Sicherungs-Datei (.img) wird so gross wie die SD-Karte ist.

    Bei einer 8GB SD-Karte wird die Datei auch 8GB gross, diese sollte natürlich auch auf den Backupmedium passen.

    Am Anfang wird einmalig gefragt ob der Support für NTFS bzw. exFAT nachinstalliert werden soll, wenn noch nicht installiert ist.

    Mit dem zusätzlichen Parameter "shrink" kann das erstellte Backup geschrumpft werden.

    Dazu wird das Backup kopiert und danach gekürzt. Dafür muss auf dem Backupmedium der Platz für 2x8GB frei sein

    (bei einer 8GB SD-Karte).


    Achtung!!

    Während der Sicherung werden alle "homebridge*" Dienste beendet (nicht im Batchmodus cmd).


    - hbridge_install.tar.gz runter laden und auf RasPi entpacken

    - Backupmedium extern (FAT32 (Datei max. 4GB ), exFAT (Datei max. 512TB) oder NTFS (Datei max. 16TB) formatieren

    und mit dem HB-System verbinden (ca. 10sec warten!)

    - raspiBackup.sh starten und warten

    - wen die Sicherung fertig ist, das Backupmedium entfernt werden


    Der erste Start muss mit Pfadangabe erfolgen: "/home/pi/hbridge_install/raspiBackup.sh"

    nach dem ersten start reicht: "raspiBackup.sh" zum starten.




    Start möglichkeiten:

    - im Terminal (der homebridge Dienst wird beendet):

    cd hbridge_install

    "./raspiBackup.sh" oder

    "./raspiBackup.sh del" (siehe mögl. Parameter)


    Batch-Modus:

    - im CmdTriger (der homebridge Dienst wird NICHT beendet):

    "command": "/home/pi/hbridge_install/raspiBackup.sh cmd" oder

    "command": "/home/pi/hbridge_install/raspiBackup.sh del cmd"

    forum.smartapfel.de/attachment/2986/


    Konfiguriert wird "raspiBackup.sh" in der Datei "/home/pi/hbridge_install/hbridge.cfg" s.o.

    oder ab Version 0.2.9 die Variablen am Anfang der Datei setzen.

    ab #Distri=

    bis #TChat_ID_raspiBackup=

    und "#" am Zeilenanfang entfernen.

    (sonst werden die Standardwerte benutzt!)


    Benutze

    : "/home/pi/hbridge_install/raspiBackup.sh ?"

    mögliche Parameter sind:

    Wenn der Parameter "del" NICHT beim Start des Script angegeben wird.

    Werden alle Backups bis auf die 2 (=Backup_Anzahl-1) neusten gelöscht und das aktuelle Backup kommt hinzu.

    Nach der Sicherung sind dann 3 (default Einstellung=Backup_Anzahl) Backups auf dem Stick.

    Das bedeutet, bei einer 4GB SD-Karte müssen also mind. 3 x 4GB = 12GB auf den USB Stick passen.


    Zum Wiederherstellen wird die Sicherungsdatei auf eine SD-Karte geschrieben,

    die ist möglich mit den Tools:

    - "Win32DiskImager" unter Windows

    - "PiBaker" unter iOS auf einem MAC

    oder ein manuelles Restore ist möglich mit:

    Code
    dd if=/mnt/sda1/MeinBackupName.img of=/dev/mmcblk0 bs=1MB


    evtl. die gepackte Datei erst entpacken mit:

    Code
    raspiBackup.sh unpack

    jetzt kann die *.img Datei auf die SD-Karte geschrieben werden.



    =============================================================================


    netz_tool.sh

    (akt. Version siehe oben)


    Eingabe und sichern der benutzten Homebridge Ports (aller Instanzen)

    Anzeige des Port Status und Anzahl der Connections.

    Suche und Anzeige aller bereits benutzten Ports von allen Instanzen.

    Testen ob alle hombridge Ports up sind, sonst die entsprechende Instanz neu starten.


    siehe Beitrag:

    Homebridge-Tool zur Netzwerk- / Port- Kontrolle


    =============================================================================


    WiFi_Check.sh

    (akt. Version siehe oben)


    Überwachen der WLAN Verbindung vom RaspBerry zum Gateway, wenn keine Verbindung mehr besteht.

    Wird das WLAN Interface vom RaspBerry neu gestartet.


    v0.19e = optional , wenn alle WLAN-Reset nichts bewirkten kann der Raspberry neu gestartet ,

    Parameter -conf = configure Variablen maximale Anzahl reset_Wlan und ob Rasberry danach resettet werden soll

    v0.19 = Variablen:

    reset_WLAN=9 # after 9 WLAN-Reset -> reset_Rasby=1 -> Raspberry restart

    reset_Rasby=0 # =0 no restart, 1= restart Raspberry


    v0.18 = Variable max_Reset=9 # after 9 WLAN-Reset -> Raspberry reboot

    - wenn nach 9 Resets des WLAN der Gateway nicht erreicht werden kann, wird der Raspberry neu gestartet


    siehe Beitrag:

    Homebridge-Tool RaspBerry reconnect WLAN



    =============================================================================


    Viel Spass


    PS:

    - Die Tool's sind getestet, aber dennoch kan ich nicht Fehler ausschliessen

    - Ab Version 0.9.1 von meinem Tool "hbridge_new.sh" und "raspiBackup.sh" existiert ein Symbolischer Link im System (im Image),

    diese werden mit "hbridge_new.sh install" automatisch angelegt.

    (dadurch kann man einfach mit "hbridge_new.sh" und "raspiBackup.sh" in der Konsole das Tool starten, ohne Pfadangabe)


    Aber trotzdem alles OHNE Garantie, Verwendung auf eigene Gefahr !!

    (legt euch vorher eine Sicherung an !!)


    :)

    (habe keinen anderen Hoster gefunden der mir zusagt, wir testen mal ob es klappt)

  • det


    Feine sache dein erweitertes tool. Wenn ich meine hombridge-ordner (mehrere Instanzen) damit sichern will genügt es mit dem Parameter „backup“? Werden dann alle Instanzen automatisch gesichert?


    Und andersrum kann ich dann mit „restore“ wieder alle ordner einspielen?

  • Habe heute auch mal meine Homebridge per rasbackup.sh gesichert.

    Allerdings meckerte er den Speicherplatz an von einem 8 GB USB Stick, obwohl die Micro SD auch nur 8 GB hat.

    Auf einem 16 GB USB Stick gab es dann aber keine Probleme mehr.


    Habe dann spasseshalber mal mein Image auf den 8 GB USB Stick zurückgesichert mit dem Win32Diskimager. Das hat auch tadellos geklappt.

    Jetzt muss nur noch mein Raspi 3 ankommen. :)


    Vielen Dank an det für die tolle Arbeit!

  • 8GB ist nicht gleic 8GB

    wenn der Stick nut ein Bit kleiner ist, kommt es zum Fehler.


    Besser währe ein 32 oder 64 GB Stick.

    Es ist ja gedacht als tägliche Sicherung mit mind. 3x 8GB Imges auf dem Stick.

    In Deinem Fall.

    :)

  • Das stimmt wohl. Aber da der 8 GB Stick grad rum lag, hatte ich mein Glück versucht.

    Mir ging es nur erst einmal darum generell eine Sicherung zu haben.

    Bin noch am überlegen, ob ich im Raspi3 (der hoffentlich bald kommt) weiter mit der 8GB MicroSD arbeite oder mit einer 16GB.


    Wollte mich in erster Linie hier für Deine Arbeit bedanken.

  • Hallo,


    ich habe jetzt nochmal die Scripte alle neu geladen und nochmal probiert ein Backup anzulegen und dieses mit pishrink zu verkleinern....

    ich habe jetzt eine neue 16gb karte als Homebridge, auch mein stick zum sichern ist neu 64gb... dachte es liegt an der SD karte oder dem USB stick...


    Image wurde erstellt, das shrink image ist genauso groß, und auch wieder fehler ... ich geb glaube ich auf... hier nochmal den kompletten ablauf!

    werd jetzt das Image auf jeden Fall mal testen ob es wenigstens funktioniert!


    evtl hat jemand ja noch eine lösung..


    Danke


  • Auf was läuft die homebridge überhaupt?

    sehe gerade: pi@hbridge2 also raspberry


    Wie startest du das Script?

    ls: Zugriff auf /mnt/sda1/*.img nicht möglich: Datei oder Verzeichnis nicht gefunden

    Die Meldung passt nicht zum Rest

    im Ordner: /mnt/sda1/
    vom Device: /dev/mmcblk0


    das ist etwas alt,

    resize2fs 1.42.12 (29-Aug-2014)


    hier meine:


    wenn Du keine Telegram Nachricht möchtest setze:

    SendTgram="0" (hatte ich beim letzten upload vergessen)

    e2fsck: Neuere Version von e2fsck benötigt!

    hast du schonmal dein system aktualisiert?


    ein Bild von meinem Durchlaif folgt noch, es arbeitet gerade.

    :)

  • jetzt fällt mir gerade ein,

    ist das eine NOOBS installation?


    Zitat:

    Wenn Sie versuchen, ein NOOBS-Bild zu verkleinern, wird es wahrscheinlich fehlschlagen. Dies liegt daran, dass sich die NOOBS-Partitionierung signifikant von der von Raspian unterscheidet. Hoffentlich wird PiShrink in naher Zukunft NOOBS unterstützen können.

  • Hallo,


    es ist das image von Dir hier aus dem Forum:( die ganze Hombridge selber läuft übrigens extrem gut...Danke)



    Jessie mit Kernel: 4.4

    RasPi3_homebridge_image_2gb_krnl4.4_03052017.zip

    enthällt:

    Linux hbridge2 4.4.50-v7+ #970 SMP Mon Feb 20 19:18:29 GMT 2017 armv7l GNU/Linux


    - node 7.10.0

    - npm 4.5.0

    - homebridge 0.4.20 (inkl. - hap-nodejs 0.4.25)


    wenn ich das image zurückspiele funktioniert es übrigens auch nicht!..

  • wie ich schon schrieb, am meisten wundert mich das:

    Code
    ls: Zugriff auf /mnt/sda1/*.img nicht möglich: Datei oder Verzeichnis nicht gefunden

    aktualisieren des System:

    "hbridge_new.sh update"

    (inkl. Kernel)

    - reboot

    "hbridge_new.sh remove"

    weiter zu installieren -> ja

    (es wird node, npm, homebridge installier)

    weiter zu plugin installieren -> ja

    (alle plugins neu installieren, wenn die datei ausgefüllt ist, werden alle Plugins autom. installiert)

    und dem Menü folgen bis fertig


    bei mir läuft aktuell:

    node 9.6.1

    npm 5.7.1

    homebridge 0.4.38 (aktuelle Version)

    :)

  • ok werde ich auch noch probieren....


    mit was sollte ich den stick vorher formatieren... deiner ist wie ich sehe mit xFat formatiert.... habe ich mit meinem eigentlich auch gemacht..!

  • Hi,


    nur ne kleine Frage, könnte man die Sicherung auch direkt auf ein NAS oder so machen lassen?

    Das wäre noch praktischer da ich meinen HB Raspi hinter meiner Cinewall im Wohnzimmer stecken habe

    und das ist dann immer ein gefummel, wenn ich da mal ran muss ;)


    CU Kai

  • ist aktuell so nicht vorgesehen.

    Ok, dann schaue ich mal was ich noch für nen passende Stick über habe ... ;)

    Habe schon länger keinen mehr gebraucht, oder ich muss mir mal nen 64er zulegen.

  • cp: der Aufruf von stat für '/home/pi/hbridge_install/files/homebridge.service.Raspbian' ist nicht möglich: Datei oder Verzeichnis nicht gefunden

    wird in Version 1.0.15 behoben.


    hbridge_install/hbridge_new.sh: Zeile 459: hbridge_install/hbridge_new.sh: Datei oder Verzeichnis nicht gefunden

    wie on von welchem Ordner startest Du das Script ?


    post mal bitte, was

    Code
    set | grep HOME

    anzeigt.

    :)

  • Wenn du es aus /home/pi startest, dann beim ersten mal:

    Code
    ./hbridge_install/hbridge_new.sh ....

    der Parameter "install" erstellt u.a. einen System-Link, danch reicht dann:


    Code
    hbridge_new.sh ....

    zum starten.

    :)


    (Danke für den Fehler-Hinnweis.)