Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Linux Shell-Skript] WLAN-Wetterstation

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Linux Shell-Skript] WLAN-Wetterstation

    This topic has been deleted. Only users with topic management privileges can see it.
    • Rene55
      Rene55 last edited by

      @SBorg zum Thema 'root': Bei mir sind alle Dateien 'pi:pi'. Ich hab seit gestern auf dem Raspberry das Log mitlaufen. Die Dateien, die das Script jetzt schreibt sind 'root:root'. Ist das so richtig (? @Thomas-Braun)?

      Thomas Braun 1 Reply Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active @Gezi70 last edited by

        @gezi70

        Ich würde vorschlagen:

        cd ~
        mkdir wetterstation
        mv /home/iobroker/wetterstation* /home/pi/wetterstation
        
        G 1 Reply Last reply Reply Quote 0
        • G
          Gezi70 @Thomas Braun last edited by Gezi70

          @thomas-braun Ich habe ein völlig neues Verzeichnis angelegt und neue Dateien eingefügt...

          Thomas Braun 1 Reply Last reply Reply Quote 0
          • Thomas Braun
            Thomas Braun Most Active @Rene55 last edited by

            @rene55 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

            Die Dateien, die das Script jetzt schreibt sind 'root:root'. Ist das so richtig

            Vermutlich nicht. Das skript darf nur Rechte im Kontext des users schreiben der es aufruft. Das kommt noch von dem falschen Besitzer des files.

            1 Reply Last reply Reply Quote 0
            • Thomas Braun
              Thomas Braun Most Active @Gezi70 last edited by

              @gezi70 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

              Ich habe ein völlig neues Verzeichnis angelegt und neue Dateien eingefügt...

              Hört sich schwer nach Desktop-Betrieb an...

              G 1 Reply Last reply Reply Quote 0
              • G
                Gezi70 @Thomas Braun last edited by

                @thomas-braun

                pi@raspberrypi:~ $ mv /home/iobroker/wetterstation* /home/pi/wetterstation
                mv: das Verschieben von '/home/iobroker/wetterstation.conf' nach '/home/pi/wetterstation/wetterstation.conf' ist nicht möglich: Keine Berechtigung
                mv: das Verschieben von '/home/iobroker/wetterstation.sh' nach '/home/pi/wetterstation/wetterstation.sh' ist nicht möglich: Keine Berechtigung
                mv: das Verschieben von '/home/iobroker/wetterstation.sub' nach '/home/pi/wetterstation/wetterstation.sub' ist nicht möglich: Keine Berechtigung
                
                
                Thomas Braun 1 Reply Last reply Reply Quote 0
                • Rene55
                  Rene55 last edited by

                  @Thomas-Braun Kann ich gerade nicht so nachvollziehen.

                  pi@raspberrypi:~/weather $ ls -la
                  total 136
                  drwxr-xr-x 3 pi   pi    4096 Jan  4 00:00 .
                  drwxr-xr-x 4 pi   pi    4096 Jan  2 10:37 ..
                  -rw-r--r-- 1 root root  9377 Jan  3 23:59 20220103_station.log
                  -rw-r--r-- 1 root root  1594 Jan  4 14:38 20220104_station.log
                  drwxr-xr-x 2 pi   pi    4096 Jan  3 15:25 Version:2.10.1
                  -rw-r--r-- 1 pi   pi    6075 Jan  3 15:43 wetterstation.conf
                  -rwxr--r-- 1 pi   pi   15867 Jan  3 15:03 wetterstation.sh
                  -rw-r--r-- 1 pi   pi   65396 Jan  3 15:45 wetterstation.sub
                  -rwxr--r-- 1 pi   pi   16659 Jan  3 15:05 ws_updater.sh
                  
                  

                  Das Script läuft doch als pi.

                  Thomas Braun 1 Reply Last reply Reply Quote 0
                  • Thomas Braun
                    Thomas Braun Most Active @Gezi70 last edited by

                    @gezi70 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                    /home/pi/wetterstation

                    ls -la /home/pi/wetterstation
                    
                    G 2 Replies Last reply Reply Quote 0
                    • G
                      Gezi70 @Thomas Braun last edited by

                      @thomas-braun läuft jetzt, danke

                      1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @Rene55 last edited by

                        @rene55

                        Hast du den Service jetzt neugestartet?

                        Da ich das skript nicht kenne weiß ich auch nicht was da genau läuft bzw. laufen sollte. Muss dir @SBorg wohl sagen.

                        Rene55 1 Reply Last reply Reply Quote 0
                        • Rene55
                          Rene55 @Thomas Braun last edited by Rene55

                          @thomas-braun Ich habs gerade gesehen. Im HTOP wird das Script als root ausgeführt - das erklärt die Ablage der neuen Files als root. Dann muss bei der Erstellung des systemd was falsch sein - nur was?
                          Irgendwo muss ein Knoten sein. Starte ich das Script von Hand läuft es als pi - beim Schreiben des Logfiles gibt es dann 'Permission denied'.

                          SBorg 1 Reply Last reply Reply Quote 0
                          • SBorg
                            SBorg Forum Testing Most Active @Rene55 last edited by

                            @rene55 That's my fault 😞

                            Geändert habe ich es schon lange, aber irgendwie vergessen zu kommunizieren. Der systemd lädt beim booten den Service per default unter "root".
                            Deswegen habe ich im ws_updater den Service so anlegen lassen:

                            [Unit]
                            	Description=Service für ioBroker Wetterstation
                            	
                            [Service]
                                    User=$(whoami)
                                    Group=$(whoami)
                            	ExecStart=${DIR}/wetterstation.sh
                            
                            [Install]
                            	WantedBy=multi-user.target
                            

                            whoami ("wer_bin_ich") wird dabei durch den aktuell angemeldeten Usernamen ersetzt.
                            Muss ich wohl hier einen Mini-Patch bereitstellen der es patcht, oder ihr (betrifft alle, außer diejenigen die den Service mittels ws_updater anlegen ließen) editiert es selbst hinein:

                            sudo nano /etc/systemd/system/wetterstation.service
                            Dann unter "Service" die beiden Zeilen

                            User=
                            Group=
                            

                            ergänzen und mit eurem Loginnamen befüllen und speichern.
                            Service restarten: systemctl restart wetterstation

                            Dann läuft es im User-Kontext.
                            Eben noch geändert: siehe WiKi (fast ganz unten)

                            Rene55 1 Reply Last reply Reply Quote 2
                            • Rene55
                              Rene55 @SBorg last edited by

                              @sborg Super. Gefixt, Script läuft als 'pi' und schreibt auch Logs als 'pi'. 👍 Mercy

                              1 Reply Last reply Reply Quote 0
                              • A
                                Andre105 last edited by

                                Mit was für ein Editor öffne ich das ?

                                Das war´s auch schon mit der Konfiguration des Skriptes.
                                
                                Anlegen der Datenobjekte im ioBroker: Wir öffnen wetterstation.js aus dem Paket mit einem Texteditor, kopieren uns den gesamten Inhalt in die Zwischenablage und wechseln zum ioBroker. Dort wählen wir "Skripte" und legen per Klick auf das "+" ein neues Javascript vom Typ "Javascript" an. Speicherort (unter common) und Bezeichnung sind frei wählbar. In dieses leere Skript fügen wir nun den Inhalt der Zwischenablage ein. Falls eine andere Instanz des Javascript-Adapters oder eine andere Datenobjektstruktur benutzt wird, muss noch let DP="javascript.0.Wetterstation." angepasst (identische Einstellung wie in der wetterstation.conf unter PRE_DP) werden. Beachtet unbedingt den Punkt hinter "Wetterstation"! Falls das Gateway und/oder Zusatzsensoren (DP40/50/60/70/100/200/250/300 bzw. deren WHxxx-Derivate) benutzt werden muss deren Anzahl nun noch eingetragen werden.
                                
                                1 Reply Last reply Reply Quote 0
                                • Thomas Braun
                                  Thomas Braun Most Active last edited by

                                  @andre105

                                  nano
                                  ist vermutlich der einfachste Editor auf Kommandozeile.

                                  A 1 Reply Last reply Reply Quote 0
                                  • A
                                    Andre105 @Thomas Braun last edited by

                                    @thomas-braun sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                    @andre105

                                    nano
                                    ist vermutlich der einfachste Editor auf Kommandozeile.

                                    Dann müsstw ich die Skriptdatei (wetterstation.js)auch in den Ordner verschieben?

                                    Thomas Braun 1 Reply Last reply Reply Quote 0
                                    • Thomas Braun
                                      Thomas Braun Most Active @Andre105 last edited by

                                      @andre105 Irgendein Verzeichnis im /home des users. Der Pfad dorthin wird ja in der service-Datei angegeben.

                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        Andre105 last edited by

                                        Habe den Skript angelegt,gestartet und wieder gestoppt.
                                        19220a34-0ec8-42b5-889e-39a1f16db07c-image.png

                                        Jetzt in Putty den Befehl ausgefürt.

                                        andre105@iobroker:~/wetter$ ./wetterstation.sh --debug
                                        wetterstation: ERROR #000 - Config-Version mismatch!
                                        
                                        benutzt: Settings        benötigt wird: V2.10.0
                                        andre105@iobroker:~/wetter$
                                        

                                        Was ist das für ein Fehler?

                                        SBorg 1 Reply Last reply Reply Quote 0
                                        • SBorg
                                          SBorg Forum Testing Most Active @Andre105 last edited by

                                          @andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                          benutzt: Settings benötigt wird: V2.10.0

                                          Du hast offenbar die 1. Zeile der wetterstation.conf etwas verwurstelt. Die darf keinesfalls verändert werden, da hierüber geprüft wird ob die Versionen der Dateien zueinander passen.
                                          In deinem Wetter-Verzeichnis: head -n 1 wetterstation.conf

                                          Dann muss das dabei herauskommen (Format und Leerzeichen sind wichtig) :

                                          ### Settings V2.10.0 -----------------------------------------------------------
                                          
                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            Andre105 @SBorg last edited by Andre105

                                            @sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                            @andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                            benutzt: Settings benötigt wird: V2.10.0

                                            Du hast offenbar die 1. Zeile der wetterstation.conf etwas verwurstelt. Die darf keinesfalls verändert werden, da hierüber geprüft wird ob die Versionen der Dateien zueinander passen.
                                            In deinem Wetter-Verzeichnis: head -n 1 wetterstation.conf

                                            Dann muss das dabei herauskommen (Format und Leerzeichen sind wichtig) :

                                            ### Settings V2.10.0 -----------------------------------------------------------
                                            

                                            Ja stimmt.

                                            Jetzt kam dieses bei raus.

                                             WLAN-Wetterstation V2.10.1 - (c)2019-2021 by SBorg
                                             Config-Version: V2.10.0
                                             Sub-Version   : V2.10.1
                                            
                                             'bc' installiert: [✓]
                                             'jq' installiert: [✓]
                                            
                                            [sudo] Passwort für andre105:
                                             ┌────────────────────────────────────────────────────────────┐
                                             │                                                            │
                                             │  "netcat" ist nicht in der benötigten Version installiert! │
                                             │                                                            │
                                             │    Soll er nun installiert werden? [J/N]: j                │
                                             │                                                            │
                                             └────────────────────────────────────────────────────────────┘
                                            
                                            Paketlisten werden gelesen… Fertig
                                            Abhängigkeitsbaum wird aufgebaut… Fertig
                                            Statusinformationen werden eingelesen… Fertig
                                            Die folgenden NEUEN Pakete werden installiert:
                                              netcat-openbsd
                                            0 aktualisiert, 1 neu installiert, 0 zu entfernen und 14 nicht aktualisiert.
                                            Es müssen 41,1 kB an Archiven heruntergeladen werden.
                                            Nach dieser Operation werden 114 kB Plattenplatz zusätzlich benutzt.
                                            Holen:1 http://ftp.de.debian.org/debian bullseye/main amd64 netcat-openbsd amd64 1.217-3 [41,1 kB]
                                            Es wurden 41,1 kB in 0 s geholt (104 kB/s).
                                            Vormals nicht ausgewähltes Paket netcat-openbsd wird gewählt.
                                            (Lese Datenbank ... 43532 Dateien und Verzeichnisse sind derzeit installiert.)
                                            Vorbereitung zum Entpacken von .../netcat-openbsd_1.217-3_amd64.deb ...
                                            Entpacken von netcat-openbsd (1.217-3) ...
                                            netcat-openbsd (1.217-3) wird eingerichtet ...
                                            update-alternatives: /bin/nc.openbsd wird verwendet, um /bin/nc (nc) im automatischen Modus bereitzustellen
                                            Trigger für man-db (2.9.4-2) werden verarbeitet ...
                                            
                                            
                                            Connection to 192.168.178.64 8087 port [tcp/*] succeeded!
                                            
                                            
                                            
                                             WLAN-Wetterstation V2.10.1 - (c)2019-2021 by SBorg
                                             Config-Version: V2.10.0
                                             Sub-Version   : V2.10.1
                                            
                                             'bc' installiert: [✓]
                                             'jq' installiert: [✓]
                                            
                                             'nc' in der Openbsd-Variante installiert:  [✓]
                                             'netcat' in Openbsd-Variante aktiv, alles korrekt [✓]
                                            
                                            
                                            Connection to 192.168.178.64 8087 port [tcp/*] succeeded!
                                            
                                            
                                            Messwerteblock:
                                            
                                            
                                            Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokol                 l)!
                                            
                                            Temperatur Innen        :  °C
                                            Temperatur Aussen       :  °C
                                            Taupunkt                :  °C
                                            Gefühlte Temperatur     :  °C
                                            Luftfeuchte Innen       :  %
                                            Luftfeuchte Aussen      :  %
                                            Windgeschwindkeit       :  km/h
                                            Windböengeschwindkeit   :  km/h
                                            max. Windböe            :  km/h
                                            Windrichtung            :  °
                                            Windrichtung            :
                                            Luftdruck absolut       :  hPa
                                            Luftdruck relativ       :  hPa
                                            Regenrate               :  mm/h
                                            Regenstatus             :
                                            Regen seit Regenbeginn  :  mm
                                            Regen Stunde            :  mm
                                            Regen Tag               :  mm
                                            Regen Woche             :  mm
                                            Regen Monat             :  mm
                                            Regen Jahr              :  mm
                                            Regen Gesamt            :  mm
                                            Sonnenstrahlung         :  W/m²
                                            UV-Index                :
                                            Zeitstempel             :
                                            Firmware                :
                                            Batteriestand:          :
                                            Gateway-Modell          :
                                            
                                            Zusatzsensoren:
                                            
                                            
                                            
                                            Datenstring für ioBroker:
                                            
                                            
                                            
                                            DATA von Wetterstation:
                                            
                                            
                                            
                                            Debug VAR:
                                            Installationsverzeichnis: /home/andre105/wetter
                                            IPP: 192.168.178.64:8087        WS_PORT: 6969           WS_POLL: 30             PRE_DP: javascript.0.We                 tterstation
                                            WEB: HTTP               WS_PROT: Ecowitt        DP40/50/60/70/100/200/250/300: 0 | 0 | 0 | 0 | 0 | 0 |                  0 | 0
                                            WH31: 0
                                            Script-Version: V2.10.1 Config-Version: V2.10.0 Sub-Version: V2.10.1
                                            
                                            Kommunikationsfehler!
                                            
                                            andre105@iobroker:~/wetter$
                                            
                                            
                                            SBorg 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            141
                                            5399
                                            2871125
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo