Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Speedtest-Skript von kreyenborg.koeln für Kabel-Gigabit

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Speedtest-Skript von kreyenborg.koeln für Kabel-Gigabit

    This topic has been deleted. Only users with topic management privileges can see it.
    • SKB
      SKB Developer Most Active @Mephisto090 last edited by

      @mephisto090 Dann wird es laufen 🙂

      M 2 Replies Last reply Reply Quote 0
      • M
        Mephisto090 @DJMarc75 last edited by Mephisto090

        @DJMarc75

        root@iobroker:/opt/iobroker# /usr/bin/speedtest --json
        
        {
            "bytes_received": 111995656,
            "bytes_sent": 43466752,
            "client": {
                "country": "DE",
                "ip": "???????",
                "isp": "Vodafone Germany DSL",
                "ispdlavg": "0",
                "isprating": "3.7",
                "ispulavg": "0",
                "lat": "11.111",
                "loggedin": "0",
                "lon": "22.222",
                "rating": "0"
            },
            "download": 89252315.3942659,
            "ping": 26.842,
            "server": {
                "cc": "DE",
                "country": "Germany",
                "d": 5.1528760454098,
                "host": "speedeu.akesacloud.co.za:8080",
                "id": "60714",
                "lat": "52.5167",
                "latency": 26.842,
                "lon": "13.3833",
                "name": "Berlin",
                "sponsor": "Akesa IT - Europe",
                "url": "http://speedeu.akesacloud.co.za:8080/speedtest/upload.php"
            },
            "share": null,
            "timestamp": "2023-10-20T14:47:20.708905Z",
            "upload": 34704998.6338473
        }
        
        root@iobroker:/opt/iobroker# /usr/bin/speedtest -h
        usage: speedtest [-h] [--no-download] [--no-upload] [--single] [--bytes] [--share] [--simple] [--csv] [--csv-delimiter CSV_DELIMITER] [--csv-header] [--json] [--list] [--server SERVER] [--exclude EXCLUDE] [--mini MINI]
                         [--source SOURCE] [--timeout TIMEOUT] [--secure] [--no-pre-allocate] [--version]
        
        Command line interface for testing internet bandwidth using speedtest.net. -------------------------------------------------------------------------- https://github.com/sivel/speedtest-cli
        
        options:
          -h, --help            show this help message and exit
          --no-download         Do not perform download test
          --no-upload           Do not perform upload test
          --single              Only use a single connection instead of multiple. This simulates a typical file transfer.
          --bytes               Display values in bytes instead of bits. Does not affect the image generated by --share, nor output from --json or --csv
          --share               Generate and provide a URL to the speedtest.net share results image, not displayed with --csv
          --simple              Suppress verbose output, only show basic information
          --csv                 Suppress verbose output, only show basic information in CSV format. Speeds listed in bit/s and not affected by --bytes
          --csv-delimiter CSV_DELIMITER
                                Single character delimiter to use in CSV output. Default ","
          --csv-header          Print CSV headers
          --json                Suppress verbose output, only show basic information in JSON format. Speeds listed in bit/s and not affected by --bytes
          --list                Display a list of speedtest.net servers sorted by distance
          --server SERVER       Specify a server ID to test against. Can be supplied multiple times
          --exclude EXCLUDE     Exclude a server from selection. Can be supplied multiple times
          --mini MINI           URL of the Speedtest Mini server
          --source SOURCE       Source IP address to bind to
          --timeout TIMEOUT     HTTP timeout in seconds. Default 10
          --secure              Use HTTPS instead of HTTP when communicating with speedtest.net operated servers
          --no-pre-allocate     Do not pre allocate upload data. Pre allocation is enabled by default to improve upload performance. To support systems with insufficient memory, use this option to avoid a MemoryError
          --version             Show the version number and exit
        
        --version: Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0]
        
        DJMarc75 1 Reply Last reply Reply Quote 0
        • M
          Mephisto090 @SKB last edited by

          @skb leider nicht

          16:49:14.239	info	javascript.0 (951689) Start javascript script.js.common.Speedtest
          16:49:14.243	info	javascript.0 (951689) script.js.common.Speedtest: Speedtest: Erster Start des Skriptes! Datenpunkte werden erstellt!
          16:49:14.244	info	javascript.0 (951689) script.js.common.Speedtest: Speedtest: Datenpunkte erstellt! Erster Speedtest wird in 30 Sekunden ausgeführt!
          16:49:14.246	info	javascript.0 (951689) script.js.common.Speedtest: registered 1 subscription, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
          16:49:44.245	info	javascript.0 (951689) script.js.common.Speedtest: Speedtest mit Server 37316 gestartet! Der Test dauert zwischen 10 - 20 Sekunden!
          16:49:44.457	error	javascript.0 (951689) script.js.common.Speedtest: SyntaxError: Unexpected end of JSON input
          16:49:44.459	error	javascript.0 (951689) at generiere_array (script.js.common.Speedtest:182:18)
          16:49:44.459	error	javascript.0 (951689) at script.js.common.Speedtest:231:28
          16:49:44.570	error	host.iobroker Caught by controller[0]: at generiere_array (script.js.common.Speedtest:205:18)
          16:49:44.570	error	host.iobroker Caught by controller[0]: at script.js.common.Speedtest:254:28
          
          1 Reply Last reply Reply Quote 0
          • M
            Mephisto090 @SKB last edited by Mephisto090

            @skb habe jetzt auch mal das -s durch --server ersetzt

            17:01:04.619	info	javascript.0 (954175) Stop script script.js.common.Speedtest
            17:01:06.582	info	javascript.0 (954175) Start javascript script.js.common.Speedtest
            17:01:06.595	info	javascript.0 (954175) script.js.common.Speedtest: Speedtest: Erster Start des Skriptes! Datenpunkte werden erstellt!
            17:01:06.597	info	javascript.0 (954175) script.js.common.Speedtest: Speedtest: Datenpunkte erstellt! Erster Speedtest wird in 30 Sekunden ausgeführt!
            17:01:06.611	info	javascript.0 (954175) script.js.common.Speedtest: registered 1 subscription, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
            17:01:36.598	info	javascript.0 (954175) script.js.common.Speedtest: Speedtest mit Server 37316 gestartet! Der Test dauert zwischen 10 - 20 Sekunden!
            17:01:36.935	error	javascript.0 (954175) script.js.common.Speedtest: Speedtest konnte nicht ausgeführt werden! Error: Command failed: /usr/bin/speedtest --json --server 37316 Cannot retrieve speedtest configuration ERROR: HTTP Error 403: Forbidden
            

            Jetzt kommt diese Meldung


            Edit: Habe jetzt den Server mit der ID rausgenommen und er führt auch den Speedtest aus. Leider passen wohl die Vars nicht mehr.

            17:07:56.335	error	javascript.0 (954175) script.js.common.Speedtest: TypeError: Cannot read properties of undefined (reading 'externalIp')
            
            SKB 1 Reply Last reply Reply Quote 0
            • DJMarc75
              DJMarc75 @Mephisto090 last edited by

              @mephisto090 sagte in Speedtest-Skript von kreyenborg.koeln für Kabel-Gigabit:

              root@iobroker

              da brauchen wir nicht weitermachen 😉

              Leg Dir einen User mit Sudorechten an.

              M 1 Reply Last reply Reply Quote 0
              • M
                Mephisto090 @DJMarc75 last edited by Mephisto090

                @djmarc75 das ist docker 😉 in diesem container läuft nur ein service und das ist iobroker. ich glaube da ist das egal 😉 außerdem ist der nach außen hin nicht offen. 😉

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

                  @mephisto090 sagte in Speedtest-Skript von kreyenborg.koeln für Kabel-Gigabit:

                  außerdem ist der nach außen hin nicht offen.

                  Das ist ja kein Grund. Angriffe können ja auch von innen heraus erfolgen. Durch heruntergeladenen Code. Und dieser Code läuft mit den Rechten des users. Bei root halt ganz schlecht.
                  Aber bei Docker soll es ja auch irgendwelchen Gründen, die mir bis heute noch niemand plausibel darlegen konnte, angeblich nicht möglich sein eine ordentliche Rechteverwaltung zu haben.

                  1 Reply Last reply Reply Quote 1
                  • SKB
                    SKB Developer Most Active @Mephisto090 last edited by

                    @mephisto090 Die Variablen passen noch. Ich habe gerade die aktuelle Version des Speedtest (Speedtest by Ookla 1.2.0.84) installiert.
                    Hier werden wie erwartet alle Daten gefüllt.

                    1 Reply Last reply Reply Quote 0
                    • M
                      Mephisto090 last edited by Mephisto090

                      @skb So habe mein Fehler gefunden. Irgendwie war das falsche speedtest-cli installiert. Es funktioniert jetzt und habe mal etwas das Skript angepasst. (Gerne kannst du es auf deiner Seite aktualisieren) Ich habe ein Trigger DP als Button hinzugefügt und das Skript den Button auswerten lassen. Des Weiteren ist Max. und Min. Ping dazugekommen sowie Paket Lost für Down- und Upload. Ich habe das Skript noch mit einer der letzten Statusmeldung ergänzt.

                      /*
                       * @copyright 2020 Stephan Kreyenborg <stephan@kreyenborg.koeln>
                       *
                       * @author 2020 Stephan Kreyenborg <stephan@kreyenborg.koeln>
                       *
                       * Dieses Skript dient zur freien Verwendung in ioBroker zur Überprüfung Deiner Internetgeschwindkeit mit Hilfe von Speedtest.
                       * Jegliche Verantwortung liegt beim Benutzer. Das Skript wurde unter Berücksichtigung der bestmöglichen Nutzung
                       * und Performance entwickelt.
                       * Der Entwickler versichert, das keine böswilligen Systemeingriffe im originalen Skript vorhanden sind.
                       *
                       * Sollte das Skript wider Erwarten nicht korrekt funktionieren, so hast Du jederzeit die Möglichkeit, Dich auf
                       * https://www.kreyenborg.koeln
                       * für Unterstützung zu melden. Jedes Skript besitzt seine eigene Kommentarseite, auf der,
                       * nach zeitlicher Möglichkeit des Autors, Hilfe angeboten wird. Ein Anrecht hierauf besteht nicht!
                       * 
                       * Ansprüche gegenüber Dritten bestehen nicht. 
                       * 
                       * Skript Name:        Speedtest
                       * Skript Version:    1.3
                       * Erstell-Datum:    29. November 2021
                       * 
                       */
                      
                      // Datenpunkte neu erstellen
                      var ueberschreiben = false;
                      
                      // Hauptdatenpunkt unterhalb javascript
                      var datenpunkt = "Speedtest.";
                      
                      // Favorisierter Server
                      // Liste: https://www.speedtest.net/speedtest-servers.php
                      var fav_server = 0;
                      
                      // Speedtest Objekte
                      var objekt = ["JSON_Output",
                          "Ergebnisse.PaketLost_Download",
                          "Ergebnisse.PaketLost_Upload",
                          "Ergebnisse.Ping",
                          "Ergebnisse.Ping_Min",
                          "Ergebnisse.Ping_Max",
                          "Ergebnisse.Jitter",
                          "Ergebnisse.Download_MBit",
                          "Ergebnisse.Upload_MBit",
                          "Ergebnisse.Download_MB",
                          "Ergebnisse.Upload_MB",
                          "Ergebnisse.OriginalDownload",
                          "Ergebnisse.OriginalUpload",
                          "ISP",
                          "IP",
                          "Ergebnisse.URL",
                          "Ergebnisse.ID",
                          "Test.Server.ServerID",
                          "Test.Server.ServerIP",
                          "Test.Server.Name",
                          "Test.Server.Stadt",
                          "Test.Server.Land",
                          "Test.Server.Adresse",
                          "Test.Daten.Download",
                          "Test.Daten.Upload",
                          "Test.Daten.OriginalDownload",
                          "Test.Daten.OriginalUpload",
                          "Test.Daten.DauerDownload",
                          "Test.Daten.DauerUpload",
                          "Test.Daten.Letzter_Speedtest",
                          "Trigger",
                          "Status"
                      ];
                      
                      // Beschreibung der Objekte
                      var beschreibung = ["JSON Ausgabe der Konsole",
                          "Paketverlust in %",
                          "Paketverlust in %",
                          "Ping in ms",
                          "Min. Ping in ms",
                          "Max. Ping in ms",
                          "Jitter in ms",
                          "Download Geschwindigkeit in MBit/s",
                          "Upload Geschwindigkeit in MBit/s",
                          "Download Geschwindigkeit in MB/s",
                          "Upload Geschwindigkeit in MB/s",
                          "Download Geschwindigkeit in Byte/s",
                          "Upload Geschwindigkeit in Byte/s",
                          "Internet Service Provider",
                          "externe IP",
                          "Adresse der Ergebnisse",
                          "ID der Ergebnisse",
                          "ID des getesteten Servers",
                          "IP des getesteten Servers",
                          "Anbieter des getesteten Servers",
                          "Stadt des getesteten Servers",
                          "Land des getesteten Servers",
                          "URL des getesteten Servers",
                          "Download Daten in MB",
                          "Upload Daten in MB",
                          "Download Daten in Byte",
                          "Upload Daten in Byte",
                          "Dauer des Download Test",
                          "Dauer des Upload Test",
                          "Letzter Speedtest",
                          "Startet den Speedtest",
                          "Status vom letzten Speedtest"
                      ];
                      
                      // Einheiten der Objekte
                      var einheiten = ["",
                          "%",
                          "%",
                          "ms",
                          "ms",
                          "ms",
                          "ms",
                          "MBit/s",
                          "MBit/s",
                          "MB/s",
                          "MB/s",
                          "Byte/s",
                          "Byte/s",
                          "",
                          "",
                          "",
                          "",
                          "",
                          "",
                          "",
                          "",
                          "",
                          "",
                          "MB",
                          "MB",
                          "Byte",
                          "Byte",
                          "s",
                          "s",
                          "",
                          "",
                          ""
                      ];
                      
                      // Typen der Objekte
                      var typen = ["string",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "string",
                          "string",
                          "string",
                          "string",
                          "number",
                          "string",
                          "string",
                          "string",
                          "string",
                          "string",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "number",
                          "string",
                          "boolean",
                          "string"
                      ];
                      
                      // Rollen der Objekte
                      var rolle = ["json",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "text",
                          "text",
                          "text",
                          "text",
                          "value",
                          "text",
                          "text",
                          "text",
                          "text",
                          "text",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "value",
                          "text",
                          "button",
                          "text"
                      ];
                      
                      // Schreibe Werte des JSON String in ein Array
                      function generiere_array(json_array) {
                          var j = JSON.parse(json_array);
                          var array_werte = [json_array,
                              parseFloat((j.download.elapsed * 100 / j.download.bytes).toFixed(2)),
                              parseFloat((j.upload.elapsed * 100 / j.upload.bytes).toFixed(2)),
                              j.ping.latency,
                              j.ping.low,
                              j.ping.high,
                              j.ping.jitter,
                              parseFloat((j.download.bandwidth / 125000).toFixed(2)),
                              parseFloat((j.upload.bandwidth / 125000).toFixed(2)),
                              parseFloat((j.download.bandwidth / (1024 * 1024)).toFixed(2)),
                              parseFloat((j.upload.bandwidth / (1024 * 1024)).toFixed(2)),
                              j.download.bandwidth,
                              j.upload.bandwidth,
                              j.isp,
                              j.interface.externalIp,
                              j.result.url,
                              j.result.id,
                              j.server.id,
                              j.server.ip,
                              j.server.name,
                              j.server.location,
                              j.server.country,
                              j.server.host,
                              parseFloat((j.download.bytes / (1024 * 1024)).toFixed(2)),
                              parseFloat((j.upload.bytes / (1024 * 1024)).toFixed(2)),
                              j.download.bytes,
                              j.upload.bytes,
                              parseFloat((j.download.elapsed / 1000).toFixed(2)),
                              parseFloat((j.upload.elapsed / 1000).toFixed(2)),
                              hole_datum(),
                              false,
                              "Speedtest wird durchgeführt"
                          ];
                          return array_werte;
                      }
                      
                      function speedtest() {
                          // temporäre Variable für das Array
                          var tmp_json;
                          // Kommando für den Speedtest
                          setStatus("Speedtest wird durchgeführt");
                          var kommando = "/usr/bin/speedtest -f json --accept-license --accept-gdpr";
                          if (fav_server > 0) {
                              kommando = kommando + " -s " + fav_server;
                              log("Speedtest mit Server " + fav_server + " gestartet! Der Test dauert zwischen 10 - 20 Sekunden!");
                          } else {
                              log("Speedtest gestartet! Der Test dauert zwischen 10 - 20 Sekunden!");
                          }
                          exec(kommando,
                              function (error, stdout) {
                                  if (error) {
                                      log('Speedtest konnte nicht ausgeführt werden! ' + error, 'error');
                                      setState(datenpunkt + "Status", "Fehler", true);
                                      setStatus("Speedtest fehlerhaft");
                                      return;
                                  } else {
                                      tmp_json = generiere_array(stdout);
                                      aktualisiere_datenpunkt(tmp_json);
                                      setStatus("Speedtest erfolgreich durchgeführt");
                                      log('Speedtest durchgeführt. Ergebnisse: Download: ' + tmp_json[7] + ' MBits/s | Upload: ' + tmp_json[8] + ' MBits/s | Ping: ' + tmp_json[3] + 'ms');
                                  }
                              });
                      }
                      
                      function setStatus(text) {
                          setState(datenpunkt + "Status", text, true);
                      }
                      
                      function aktualisiere_datenpunkt(werte) {
                          for (let i = 0; i < objekt.length; i++) {
                              setState(datenpunkt + objekt[i], werte[i], true);
                          }
                      }
                      
                      // Erstelle die benötigten Datenpunkte
                      function datenpunkte_erstellen() {
                          for (var i = 0; i < objekt.length; i++) {
                              createState(datenpunkt + objekt[i], "", ueberschreiben, {
                                  name: beschreibung[i],
                                  desc: beschreibung[i],
                                  type: typen[i],
                                  role: rolle[i],
                                  unit: einheiten[i]
                              });
                              setStatus("Datenpunkte erfolgreich erstellt");
                          }
                      
                          // Alle Datenpunkte erstellt. Führe ersten Speedtest aus!
                          log('Speedtest: Datenpunkte erstellt! Erster Speedtest wird in 30 Sekunden ausgeführt!');
                          setTimeout(speedtest, 30000);
                      }
                      
                      // Datum 
                      function hole_datum() {
                          let datum = new Date();
                          let tag = '0' + datum.getDate();
                          let monat = '0' + (datum.getMonth() + 1);
                          let jahr = datum.getFullYear();
                          let stunde = '0' + datum.getHours();
                          let minute = '0' + datum.getMinutes();
                          let sekunde = '0' + datum.getSeconds();
                          return tag.substr(-2) + '.' + monat.substr(-2) + '.' + jahr + ' ' + stunde.substr(-2) + ':' + minute.substr(-2) + ':' + sekunde.substr(-2);
                      }
                      
                      function speedtest_erster_start() {
                          log("Speedtest: Erster Start des Skriptes! Datenpunkte werden erstellt!");
                          // Datenpunkte werden erstellt
                          datenpunkte_erstellen();
                      }
                      
                      // Erster Start und Initialisierung
                      speedtest_erster_start();
                      
                      // Alle 60 Minuten einen Speedtest ausführen
                      schedule('0,30 * * * *', speedtest);
                      
                      
                      // Script ausführen wenn Datenpunkt "Speedtest-Trigger" = true
                      on({ id: "javascript.0.Speedtest.Trigger", change: "any" }, function (obj) {
                          if (obj.state.val===true) {
                              speedtest ();
                          }
                      });
                      
                      P 1 Reply Last reply Reply Quote 1
                      • P
                        PatrickFro @Mephisto090 last edited by

                        Moin,

                        bei mir funktioniert das Script aus welchem Grunde auch immer nicht - bin leider sonst kein Linux-Nutzer-

                        Anzeige im Javascript-Adapter:

                        error	javascript.1 (10238) script.js.common.VIS_2024.Scripte_andere_Seiten.Speedtest: Speedtest konnte nicht ausgeführt werden! Error: Command failed: /usr/bin/speedtest -f json --accept-license --accept-gdpr /bin/sh: 1: /usr/bin/speedtest: not found
                        

                        6778fd9e-4c29-4e75-bf25-0e6c8a0524d7-image.png

                        /etc/speedtest# type -p speedtest
                        /usr/bin/speedtest
                        

                        Gebe ich in der Konsole
                        /usr/bin/speedtest -f json --accept-license --accept-gdpr -s 28602
                        ein, funktioniert der Speedtest.

                        Ich nutze Debian-Linux Bookworm und habe die automatische Installation genutzt:

                        sudo apt-get install curl
                        curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash
                        sudo apt-get install speedtest```
                        Thomas Braun 1 Reply Last reply Reply Quote 0
                        • Thomas Braun
                          Thomas Braun Most Active @PatrickFro last edited by

                          @patrickfro

                          sudo apt update
                          apt policy speedtest*
                          

                          sagt?

                          1 Reply Last reply Reply Quote 0
                          • P
                            PatrickFro last edited by

                            @thomas-braun said in Speedtest-Skript von kreyenborg.koeln für Kabel-Gigabit:

                            apt policy speedtest*

                            Folgendes:

                            root@VM-IoBroker:/etc/speedtest# sudo apt update
                            OK:1 http://security.debian.org/debian-security bookworm-security InRelease
                            OK:2 http://deb.debian.org/debian bookworm InRelease
                            OK:3 http://deb.debian.org/debian bookworm-updates InRelease
                            OK:4 https://deb.nodesource.com/node_18.x nodistro InRelease
                            OK:5 https://packagecloud.io/ookla/speedtest-cli/debian bookworm InRelease
                            Paketlisten werden gelesen… Fertig
                            Abhängigkeitsbaum wird aufgebaut… Fertig
                            Statusinformationen werden eingelesen… Fertig
                            Alle Pakete sind aktuell.
                            root@VM-IoBroker:/etc/speedtest# apt policy speedtest*
                            speedtest:
                              Installiert:           1.2.0.84-1.ea6b6773cf
                              Installationskandidat: 1.2.0.84-1.ea6b6773cf
                              Versionstabelle:
                             *** 1.2.0.84-1.ea6b6773cf 500
                                    500 https://packagecloud.io/ookla/speedtest-cli/debian bookworm/main amd64 Packages
                                    100 /var/lib/dpkg/status
                            speedtest-cli:
                              Installiert:           (keine)
                              Installationskandidat: 2.1.3-2
                              Versionstabelle:
                                 2.1.3-2 500
                                    500 http://deb.debian.org/debian bookworm/main amd64 Packages
                            
                            
                            Thomas Braun 1 Reply Last reply Reply Quote 0
                            • Thomas Braun
                              Thomas Braun Most Active @PatrickFro last edited by

                              @patrickfro sagte in Speedtest-Skript von kreyenborg.koeln für Kabel-Gigabit:

                              root@

                              KEIN root-Login!
                              Meld dich als user an, verdammte Hacke...

                              P 1 Reply Last reply Reply Quote 1
                              • P
                                PatrickFro @Thomas Braun last edited by

                                @thomas-braun Schande über mein Haupt. Ist ne neue Installation und der normale User hat noch keine sudo-Rechte. Daher der Weg. Aber nun wirds klar, root hat wohl kein usr-Verzeichnis.

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

                                  @patrickfro sagte in Speedtest-Skript von kreyenborg.koeln für Kabel-Gigabit:

                                  Ist ne neue Installation und der normale User hat noch keine sudo-Rechte.

                                  Und das ist das erste und letzte, was man als root in einem neuen System tut. Bzw. man installiert sein Debian gleich von vorneherein OHNE root-Passwort.

                                  Aber nun wirds klar, root hat wohl kein usr-Verzeichnis.

                                  usr steht NICHT für user, wenn du das vermuten solltest sondern für UnixSystemRessources. Du meinst vermultich home-Verzeichnisse. Das vom root findet sich unter /root

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

                                    @thomas-braun

                                    ich habe es nun als root deinstalliert

                                    sudo apt-get update
                                    sudo apt-get remove speedtest
                                    

                                    meinem normalen user sudo gegeben, mich als normaler user angemeldet, neu installiert, selber Fehler wie oben.

                                    patrick@VM-IoBroker:~$ sudo apt update
                                    OK:1 http://security.debian.org/debian-security bookworm-security InRelease
                                    OK:2 http://deb.debian.org/debian bookworm InRelease
                                    OK:3 http://deb.debian.org/debian bookworm-updates InRelease
                                    OK:4 https://deb.nodesource.com/node_18.x nodistro InRelease
                                    OK:5 https://packagecloud.io/ookla/speedtest-cli/debian bookworm InRelease
                                    Paketlisten werden gelesen… Fertig
                                    Abhängigkeitsbaum wird aufgebaut… Fertig
                                    Statusinformationen werden eingelesen… Fertig
                                    Alle Pakete sind aktuell.
                                    patrick@VM-IoBroker:~$ apt policy speedtest*
                                    speedtest:
                                      Installiert:           1.2.0.84-1.ea6b6773cf
                                      Installationskandidat: 1.2.0.84-1.ea6b6773cf
                                      Versionstabelle:
                                     *** 1.2.0.84-1.ea6b6773cf 500
                                            500 https://packagecloud.io/ookla/speedtest-cli/debian bookworm/main amd                                                                                                                                                             64 Packages
                                            100 /var/lib/dpkg/status
                                    speedtest-cli:
                                      Installiert:           (keine)
                                      Installationskandidat: 2.1.3-2
                                      Versionstabelle:
                                         2.1.3-2 500
                                            500 http://deb.debian.org/debian bookworm/main amd64 Packages
                                    

                                    Ich sehe in diesem Ergebnis leider auch keine Änderung. Du hast doch sicherlich noch eine Idee, oder?

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

                                      @patrickfro

                                      sudo -u iobroker speedtest -f json --accept-license --accept-gdpr
                                      
                                      P 1 Reply Last reply Reply Quote 0
                                      • P
                                        PatrickFro @Thomas Braun last edited by

                                        @thomas-braun

                                        patrick@VM-IoBroker:~$ sudo -u iobroker speedtest -f json --accept-license --accept-gdpr
                                        {"type":"result","timestamp":"2023-10-22T17:35:33Z","ping":{"jitter":0.318,"latency":1.630,"low":1.274,"high":1.954},"download":{"bandwidth":10028954,"bytes":55169840,"elapsed":5603,"latency":{"iqm":1.419,"low":0.692,"high":207.800,"jitter":18.722}},"upload":{"bandwidth":4651107,"bytes":16764520,"elapsed":3608,"latency":{"iqm":119.987,"low":0.858,"high":317.042,"jitter":40.296}},"packetLoss":0,"isp":"wilhelm.tel","interface":{"internalIp":"...7d8f:6950","name":"ens18","macAddr":"...AE","isVpn":false,"externalIp":"...4950"},"server":{"id":4087,"host":"speedtest.wtnet.de","port":8080,"name":"wilhelm.tel","location":"Norderstedt","country":"Germany","ip":"...3:2"},"result":{"id":"fea91c99-07ee-4ff1-ae4d-8cd14483123","url":"https://www.speedtest.net/result/c/fea91c99-07ee-4ff1-ae4d-8cd144333823","persisted":true}}
                                        
                                        
                                        Thomas Braun 1 Reply Last reply Reply Quote 0
                                        • Thomas Braun
                                          Thomas Braun Most Active @PatrickFro last edited by

                                          @patrickfro

                                          Hast du das Skript vollständig und richtig kopiert?

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

                                            @thomas-braun

                                            Eigentlich schon

                                            patrick@VM-IoBroker:~$ sudo apt-get install curl
                                            [sudo] Passwort für patrick:
                                            Paketlisten werden gelesen… Fertig
                                            Abhängigkeitsbaum wird aufgebaut… Fertig
                                            Statusinformationen werden eingelesen… Fertig
                                            curl ist schon die neueste Version (7.88.1-10+deb12u4).
                                            0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
                                            patrick@VM-IoBroker:~$ curl -s https://packagecloud.io/install/repositories/ookl                                                                                                                                                             a/speedtest-cli/script.deb.sh | sudo bash
                                            Detected operating system as debian/bookworm.
                                            Checking for curl...
                                            Detected curl...
                                            Checking for gpg...
                                            Detected gpg...
                                            Detected apt version as 2.6.1
                                            Running apt-get update... done.
                                            Installing debian-archive-keyring which is needed for installing
                                            apt-transport-https on many Debian systems.
                                            Installing apt-transport-https... done.
                                            Installing /etc/apt/sources.list.d/ookla_speedtest-cli.list...done.
                                            Importing packagecloud gpg key... Packagecloud gpg key imported to /etc/apt/keyr                                                                                                                                                             ings/ookla_speedtest-cli-archive-keyring.gpg
                                            done.
                                            Running apt-get update... done.
                                            
                                            The repository is setup! You can now install packages.
                                            patrick@VM-IoBroker:~$ sudo apt-get install speedtest
                                            Paketlisten werden gelesen… Fertig
                                            Abhängigkeitsbaum wird aufgebaut… Fertig
                                            Statusinformationen werden eingelesen… Fertig
                                            Die folgenden NEUEN Pakete werden installiert:
                                              speedtest
                                            0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
                                            Es müssen noch 0 B von 1.106 kB an Archiven heruntergeladen werden.
                                            Nach dieser Operation werden 2.628 kB Plattenplatz zusätzlich benutzt.
                                            Vormals nicht ausgewähltes Paket speedtest wird gewählt.
                                            (Lese Datenbank ... 167253 Dateien und Verzeichnisse sind derzeit installiert.)
                                            Vorbereitung zum Entpacken von .../speedtest_1.2.0.84-1.ea6b6773cf_amd64.deb ...
                                            Entpacken von speedtest (1.2.0.84-1.ea6b6773cf) ...
                                            speedtest (1.2.0.84-1.ea6b6773cf) wird eingerichtet ...
                                            Trigger für man-db (2.11.2-2) werden verarbeitet ...
                                            

                                            Da ich kein Raspberry hab, konnte ich nicht das komplette Script von Kreyenborg nutzen, sondern musste auf https://www.speedtest.net/de/apps/cli ausweichen.

                                            Thomas Braun 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            33
                                            391
                                            51977
                                            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