Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test ioBroker Fixer mit JSONL-Compression

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

Test ioBroker Fixer mit JSONL-Compression

Geplant Angeheftet Gesperrt Verschoben Tester
84 Beiträge 15 Kommentatoren 7.8k Aufrufe 15 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • GaspodeG Offline
    GaspodeG Offline
    Gaspode
    schrieb am zuletzt editiert von
    #37

    @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

    Der Fixer ist jetzt auch unter Windows verfügbar! Wäre cool wenn ich da ggf auch Tester finden ...

    Also, wie schon im anderen Thread geschrieben, bekomme auch ich unter Windows den schon bekannten Fehler:

    F:\ioBrokerTest>npx @iobroker/fix
    Need to install the following packages:
      @iobroker/fix@4.2.1
    Ok to proceed? (y) y
    "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
    

    Wenn ich jetzt das Package nicht per npx ausführe, sondern installiere

    F:\ioBrokerTest>npm install @iobroker/fix
    

    Und dann das Script direkt starte:

    F:\ioBrokerTest>node node_modules\@iobroker\fix\lib-npx\install.js fix
    

    Läuft der Fixer erstmal los(!?), meldet am Ende aber einen Fehler:

    Windows installation starting... (fixing = true)
    NPM version: 8.19.3
    Write "iobroker start" to start the ioBroker
    npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
    
    up to date, audited 524 packages in 9s
    
    36 packages are looking for funding
      run `npm fund` for details
    
    20 vulnerabilities (2 low, 16 moderate, 2 high)
    
    To address issues that do not require attention, run:
      npm audit fix
    
    To address all issues (including breaking changes), run:
      npm audit fix --force
    
    Run `npm audit` for details.
    
    =============================
    Running Admin shell
    =============================
    ioBroker wird beendet.
    ioBroker wurde erfolgreich beendet.
    
    ioBroker service is already installed.
    
    =============================
    Running Admin shell
    =============================
    ioBroker wird gestartet.
    ioBroker wurde erfolgreich gestartet.
    
    ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
    To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
    NPM version: 8.19.3
    No path given, using F:\ioBrokerTest\iobroker-data
    Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
    Cannot compress states.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\states.jsonl"!
        at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
        at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
        at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:78:17)
    Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
    Cannot compress objects.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\objects.jsonl"!
        at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
        at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
        at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:93:17)
    No relevant JSONL files found to compress, skip
    

    Hilft das irgendwie weiter?

    apollon77A 1 Antwort Letzte Antwort
    0
    • GaspodeG Gaspode

      @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

      Der Fixer ist jetzt auch unter Windows verfügbar! Wäre cool wenn ich da ggf auch Tester finden ...

      Also, wie schon im anderen Thread geschrieben, bekomme auch ich unter Windows den schon bekannten Fehler:

      F:\ioBrokerTest>npx @iobroker/fix
      Need to install the following packages:
        @iobroker/fix@4.2.1
      Ok to proceed? (y) y
      "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
      

      Wenn ich jetzt das Package nicht per npx ausführe, sondern installiere

      F:\ioBrokerTest>npm install @iobroker/fix
      

      Und dann das Script direkt starte:

      F:\ioBrokerTest>node node_modules\@iobroker\fix\lib-npx\install.js fix
      

      Läuft der Fixer erstmal los(!?), meldet am Ende aber einen Fehler:

      Windows installation starting... (fixing = true)
      NPM version: 8.19.3
      Write "iobroker start" to start the ioBroker
      npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
      
      up to date, audited 524 packages in 9s
      
      36 packages are looking for funding
        run `npm fund` for details
      
      20 vulnerabilities (2 low, 16 moderate, 2 high)
      
      To address issues that do not require attention, run:
        npm audit fix
      
      To address all issues (including breaking changes), run:
        npm audit fix --force
      
      Run `npm audit` for details.
      
      =============================
      Running Admin shell
      =============================
      ioBroker wird beendet.
      ioBroker wurde erfolgreich beendet.
      
      ioBroker service is already installed.
      
      =============================
      Running Admin shell
      =============================
      ioBroker wird gestartet.
      ioBroker wurde erfolgreich gestartet.
      
      ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
      To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
      NPM version: 8.19.3
      No path given, using F:\ioBrokerTest\iobroker-data
      Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
      Cannot compress states.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\states.jsonl"!
          at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
          at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
          at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:78:17)
      Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
      Cannot compress objects.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\objects.jsonl"!
          at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
          at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
          at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:93:17)
      No relevant JSONL files found to compress, skip
      

      Hilft das irgendwie weiter?

      apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #38

      @gaspode iobroker gestoppt vorher? Cannot lock db heißt das die dB offen ist. Fixer darf nur laufen wenn gestoppt ist.

      Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun :-(

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      GaspodeG 1 Antwort Letzte Antwort
      0
      • apollon77A apollon77

        @gaspode iobroker gestoppt vorher? Cannot lock db heißt das die dB offen ist. Fixer darf nur laufen wenn gestoppt ist.

        Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun :-(

        GaspodeG Offline
        GaspodeG Offline
        Gaspode
        schrieb am zuletzt editiert von
        #39

        @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

        iobroker gestoppt vorher?

        Ja, ioBroker vorher mit iobroker stop gestoppt. Allerdings scheint er, wenn ich das Log richtig verstehe, unmittelbar vor der Komprimierung wieder gestartet zu werden (Zeile 29ff):

        ...
        =============================
        Running Admin shell
        =============================
        ioBroker wird gestartet.
        ioBroker wurde erfolgreich gestartet.
        ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
        To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
        NPM version: 8.19.3
        No path given, using F:\ioBrokerTest\iobroker-data
        Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
        ...
        

        @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

        Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun

        Ich hatte das ja nur "zu Fuß" gemacht, weil ich hoffte, so die Stelle zu finden, wo etwas schief läuft. Hätte nicht erwartet, dass der Fixer dann startet.

        Der npx Aufruf mit --verbose liefert übrigens das hier:

        F:\ioBrokerTest>iobroker status
        iobroker is not running on this host.
        
        Objects type: jsonl
        States  type: jsonl
        
        F:\ioBrokerTest>npx --verbose @iobroker/fix
        npm verb cli C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js
        npm info using npm@8.19.3
        npm info using node@v16.19.0
        npm timing npm:load:whichnode Completed in 0ms
        npm timing config:load:defaults Completed in 2ms
        npm timing config:load:file:C:\Program Files\nodejs\node_modules\npm\npmrc Completed in 10ms
        npm timing config:load:builtin Completed in 11ms
        npm timing config:load:cli Completed in 2ms
        npm timing config:load:env Completed in 1ms
        npm timing config:load:file:F:\ioBrokerTest\.npmrc Completed in 1ms
        npm timing config:load:project Completed in 3ms
        npm timing config:load:file:C:\Users\OnkelAdmin\.npmrc Completed in 1ms
        npm timing config:load:user Completed in 1ms
        npm timing config:load:file:C:\Users\OnkelAdmin\AppData\Roaming\npm\etc\npmrc Completed in 0ms
        npm timing config:load:global Completed in 0ms
        npm timing config:load:validate Completed in 1ms
        npm timing config:load:credentials Completed in 1ms
        npm timing config:load:setEnvs Completed in 1ms
        npm timing config:load Completed in 25ms
        npm timing npm:load:configload Completed in 26ms
        npm timing npm:load:mkdirpcache Completed in 1ms
        npm timing npm:load:mkdirplogs Completed in 1ms
        npm verb title npm exec @iobroker/fix
        npm verb argv "exec" "--loglevel" "verbose" "--" "@iobroker/fix"
        npm timing npm:load:setTitle Completed in 2ms
        npm timing config:load:flatten Completed in 5ms
        npm timing npm:load:display Completed in 20ms
        npm verb logfile logs-max:10 dir:C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs
        npm verb logfile C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs\2023-01-14T08_15_41_665Z-debug-0.log
        npm timing npm:load:logFile Completed in 12ms
        npm timing npm:load:timers Completed in 0ms
        npm timing npm:load:configScope Completed in 0ms
        npm timing npm:load Completed in 67ms
        npm timing arborist:ctor Completed in 1ms
        npm verb shrinkwrap failed to load node_modules/.package-lock.json out of date, updated: node_modules/iobroker.js-controller
        "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
        npm timing command:exec Completed in 938ms
        npm verb exit 255
        npm timing npm Completed in 1307ms
        npm verb code 255
        

        Hilf das evtl. weiter?

        apollon77A 1 Antwort Letzte Antwort
        0
        • GaspodeG Gaspode

          @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

          iobroker gestoppt vorher?

          Ja, ioBroker vorher mit iobroker stop gestoppt. Allerdings scheint er, wenn ich das Log richtig verstehe, unmittelbar vor der Komprimierung wieder gestartet zu werden (Zeile 29ff):

          ...
          =============================
          Running Admin shell
          =============================
          ioBroker wird gestartet.
          ioBroker wurde erfolgreich gestartet.
          ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
          To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
          NPM version: 8.19.3
          No path given, using F:\ioBrokerTest\iobroker-data
          Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
          ...
          

          @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

          Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun

          Ich hatte das ja nur "zu Fuß" gemacht, weil ich hoffte, so die Stelle zu finden, wo etwas schief läuft. Hätte nicht erwartet, dass der Fixer dann startet.

          Der npx Aufruf mit --verbose liefert übrigens das hier:

          F:\ioBrokerTest>iobroker status
          iobroker is not running on this host.
          
          Objects type: jsonl
          States  type: jsonl
          
          F:\ioBrokerTest>npx --verbose @iobroker/fix
          npm verb cli C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js
          npm info using npm@8.19.3
          npm info using node@v16.19.0
          npm timing npm:load:whichnode Completed in 0ms
          npm timing config:load:defaults Completed in 2ms
          npm timing config:load:file:C:\Program Files\nodejs\node_modules\npm\npmrc Completed in 10ms
          npm timing config:load:builtin Completed in 11ms
          npm timing config:load:cli Completed in 2ms
          npm timing config:load:env Completed in 1ms
          npm timing config:load:file:F:\ioBrokerTest\.npmrc Completed in 1ms
          npm timing config:load:project Completed in 3ms
          npm timing config:load:file:C:\Users\OnkelAdmin\.npmrc Completed in 1ms
          npm timing config:load:user Completed in 1ms
          npm timing config:load:file:C:\Users\OnkelAdmin\AppData\Roaming\npm\etc\npmrc Completed in 0ms
          npm timing config:load:global Completed in 0ms
          npm timing config:load:validate Completed in 1ms
          npm timing config:load:credentials Completed in 1ms
          npm timing config:load:setEnvs Completed in 1ms
          npm timing config:load Completed in 25ms
          npm timing npm:load:configload Completed in 26ms
          npm timing npm:load:mkdirpcache Completed in 1ms
          npm timing npm:load:mkdirplogs Completed in 1ms
          npm verb title npm exec @iobroker/fix
          npm verb argv "exec" "--loglevel" "verbose" "--" "@iobroker/fix"
          npm timing npm:load:setTitle Completed in 2ms
          npm timing config:load:flatten Completed in 5ms
          npm timing npm:load:display Completed in 20ms
          npm verb logfile logs-max:10 dir:C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs
          npm verb logfile C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs\2023-01-14T08_15_41_665Z-debug-0.log
          npm timing npm:load:logFile Completed in 12ms
          npm timing npm:load:timers Completed in 0ms
          npm timing npm:load:configScope Completed in 0ms
          npm timing npm:load Completed in 67ms
          npm timing arborist:ctor Completed in 1ms
          npm verb shrinkwrap failed to load node_modules/.package-lock.json out of date, updated: node_modules/iobroker.js-controller
          "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
          npm timing command:exec Completed in 938ms
          npm verb exit 255
          npm timing npm Completed in 1307ms
          npm verb code 255
          

          Hilf das evtl. weiter?

          apollon77A Offline
          apollon77A Offline
          apollon77
          schrieb am zuletzt editiert von
          #40

          @gaspode ok das mit dem Start ist gut zu wissen. Dann schiebe ich den fixer weiter nach vorn im Code. Das logfile gibt sonst leider nix her was helfen würde außer das dieser Fehler vom exec des fix kommt. Aber waasrruuuuuuuuuuuummm :-(

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          GaspodeG 1 Antwort Letzte Antwort
          0
          • apollon77A apollon77

            @gaspode ok das mit dem Start ist gut zu wissen. Dann schiebe ich den fixer weiter nach vorn im Code. Das logfile gibt sonst leider nix her was helfen würde außer das dieser Fehler vom exec des fix kommt. Aber waasrruuuuuuuuuuuummm :-(

            GaspodeG Offline
            GaspodeG Offline
            Gaspode
            schrieb am zuletzt editiert von Gaspode
            #41

            @apollon77
            Falls du vorab was zum lokal testen hast, kann ich das gerne erledigen.

            Zeile 42 (kann das Zufall sein, 42? :D ) ist nicht verdächtig? Kommt jedes Mal.

            1 Antwort Letzte Antwort
            0
            • apollon77A apollon77

              Hey All,

              ich habe heute mal etwas anderes zum testen.

              Es gibt aktuell ein Problem das JSONL Files manchmal zu große werden. Ein die Tage kommender js-controller 4.0.24 wird die Ursache beheben, aber wir wissen nicht wie viele User betroffen sind.

              Das Problem tritt meistens bei der objects.jsonl Datei auf, wenn JSONL genutzt wird und sich selten Objekte ändern. Dann kann es durchaus zu 1 GB großen Dateien kommen.
              Um sicherzustellen das es beim Update des js-controller dann zu keinen Probleme kommt weil Files zu groß geworden sind haben wir entschieden den Fixer zu erweitern das dieser die Datenbank-Files komprimiert. Vielen Dank an @Thomas-Braun für die Unterstützung beim Bash-en :-)

              Das würde ich gern mit Euch kurz testen bevor wir es offiziell ausrollen, weil es dann aufgrund von npm Versionen ggf doch kleine Unterschiede geben kann.

              Was ist zu tun?

              Zuerst Bitte ioBroker auf dem Host stoppen iob stop.

              Wer es genau wissen will macht jetzt und später nach der Optimierung ein ls -la /opt/iobroker/iobroker-data/*.jsonl um zu sehen wie die Filegrößen waren und ob die Komprimierung funktioniert hat.

              Dann den Test-Fixer über folgendes Kommando ausführen.

              curl -sLf https://raw.githubusercontent.com/ioBroker/ioBroker/dbcompress/fix_installation.sh | bash -
              

              Wenn alles klappt gibt es einen neuen Schritt 3/4 namens "Database maintenance".

              Wenn JSONL als Datenbank genutzt wird dann sieht es ungefähr so aus wenn alles durch ist:

              Bildschirm­foto 2022-11-19 um 21.48.52.png

              Wenn keine JSONL genutzt wird zB so:

              Bildschirm­foto 2022-11-19 um 21.49.41.png

              Wenn npm 5 oder 6 noch auf dem System ist kann es sein das zusätzlich noch 1-2 Zeilen mehr ausgegeben werden. Aber generell muss es das gleiche sein.

              Welches Ergebnis ist interessant

              Primär ob es getan hat bzw ob der Fixer ohne komische Zusatz-Fehlermeldungen getan hat was er soll ... und idealerweise, wenn JSONL in Benutzung ist, ob die Kompression getan hat.

              Rückmeldungen gern (am besten mit npm -v Ausgabe - also NPM Version) hier im Thread.

              Danke für Eure Unterstützung!

              Ingo

              qqolliQ Offline
              qqolliQ Offline
              qqolli
              schrieb am zuletzt editiert von
              #42

              @apollon77
              Anbei meine Ergebnis (npm: 8.19.3), keine Probleme, Kompression erfolgreich:

              olli@ioBroker:~$ iob stop
              olli@ioBroker:~$ ls -la /opt/iobroker/iobroker-data/*.jsonl 
              -rw-rw-r--+ 1 iobroker iobroker 27528654 Jan 14 09:12 /opt/iobroker/iobroker-data/objects.jsonl
              -rw-rw-r--+ 1 iobroker iobroker 11819686 Jan 14 09:12 /opt/iobroker/iobroker-data/states.jsonl
              olli@ioBroker:~$ curl -sLf https://raw.githubusercontent.com/ioBroker/ioBroker/dbcompress/fix_installation.sh | bash -
              library: loaded
              Library version=2022-12-09
              
              ==========================================================================
              
                  Welcome to the ioBroker installation fixer!
                  Script version: 2022-11-19
                  
                  You might need to enter your password a couple of times.
              
              ==========================================================================
              
              
              ==========================================================================
                  Installing prerequisites (1/4)
              ==========================================================================
              
              [sudo] password for olli: 
              Get:1 http://security.debian.org bullseye-security InRelease [48.4 kB]
              Hit:2 http://ftp.debian.org/debian bullseye InRelease                                                                    
              Get:3 http://ftp.debian.org/debian bullseye-updates InRelease [44.1 kB]                                                   
              Hit:4 https://deb.nodesource.com/node_16.x bullseye InRelease                                  
              Get:5 http://security.debian.org bullseye-security/main amd64 Packages [214 kB]
              Get:6 http://security.debian.org bullseye-security/main Translation-en [139 kB]
              Fetched 445 kB in 0s (1154 kB/s)                          
              Reading package lists... Done
              Installed gcc-c++
              
              ==========================================================================
                  Checking ioBroker user and directory permissions (2/4)
              ==========================================================================
              
              Created /etc/sudoers.d/iobroker
              Fixing directory permissions...
              
              ==========================================================================
                  Database maintenance (3/4)
              ==========================================================================
              
              Checking for uncompressed JSONL databases... This might take a while!
              
              Compressing /opt/iobroker/iobroker-data/states.jsonl
              Compressing /opt/iobroker/iobroker-data/objects.jsonl
              Compressed 2 JSONL files. Done
              
              ==========================================================================
                  Checking autostart (4/4)
              ==========================================================================
              
              Enabling autostart...
              Autostart enabled!
              
              ==========================================================================
              
                  Your installation was fixed successfully
                  Run iobroker start to start ioBroker again!
              
              ==========================================================================
              
              olli@ioBroker:~$ ls -la /opt/iobroker/iobroker-data/*.jsonl
              -rw-rw-r--+ 1 iobroker iobroker 16939782 Jan 14 09:13 /opt/iobroker/iobroker-data/objects.jsonl
              -rw-rw-r--+ 1 iobroker iobroker  2833129 Jan 14 09:13 /opt/iobroker/iobroker-data/states.jsonl
              olli@ioBroker:~$
              
              1 Antwort Letzte Antwort
              0
              • GaspodeG Offline
                GaspodeG Offline
                Gaspode
                schrieb am zuletzt editiert von Gaspode
                #43

                @apollon77
                Nochmal zu Windows:
                Hab die Ursache gefunden, aber verstehen tu ich es nicht so richtig:
                Der Fehler

                "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                

                kommt aus dem Batch File iobroker.bat, das im ioBroker Verzeichnis liegt (ruft man iobroker.bat ohne Parameter auf, kommt genau dieser Fehler).
                Aus irgendeinem Grund wird bei

                npx @iobroker/fix
                

                iobroker.bat ausgeführt. Warum hab ich noch nicht rausbekommen.

                Folgendes startet den Fixer auch unter Windows:

                F:\ioBrokerTest>del iobroker.bat
                
                F:\ioBrokerTest>npx @iobroker/fix
                
                Windows installation starting... (fixing = true)
                NPM version: 9.3.0
                Write "iobroker start" to start the ioBroker
                npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
                
                up to date, audited 524 packages in 6s
                
                36 packages are looking for funding
                  run `npm fund` for details
                
                20 vulnerabilities (15 moderate, 5 high)
                
                To address issues that do not require attention, run:
                  npm audit fix
                
                To address all issues (including breaking changes), run:
                  npm audit fix --force
                
                Run `npm audit` for details.
                
                =============================
                Running Admin shell
                =============================
                ioBroker wird beendet.
                ioBroker wurde erfolgreich beendet.
                
                ioBroker service is already installed.
                
                =============================
                Running Admin shell
                =============================
                ioBroker wird gestartet.
                ioBroker wurde erfolgreich gestartet.
                
                ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                NPM version: 9.3.0
                No path given, using F:\ioBrokerTest\iobroker-data
                Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                Cannot compress states.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\states.jsonl"!
                    at JsonlDB.open (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                    at async compressDB (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                    at async main (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:78:17)
                Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
                Cannot compress objects.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\objects.jsonl"!
                    at JsonlDB.open (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                    at async compressDB (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                    at async main (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:93:17)
                No relevant JSONL files found to compress, skip
                

                Mit dem von oben bekanntem Problem, dass ioBroker vor der Komprimierung gestartet wird. Aber das weißt du ja schon.
                Witzig: Der Fixer legt das gelöschte File iobroker.bat gleich wieder an, man macht sich durch das Löschen also nix kaputt. :D

                Edit: Für die Fehlermeldung in iobroker.bat und iob.bat hab ich PRs angelegt. Das hilft bei diesem Problem zwar nicht weiter, aber wenn man es schon mal weiß ...

                1 Antwort Letzte Antwort
                0
                • apollon77A Offline
                  apollon77A Offline
                  apollon77
                  schrieb am zuletzt editiert von
                  #44

                  neues Paket released ... jetzt ist der fixer weiter am Anfang vor dem Service kram

                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                  mcm1957M 1 Antwort Letzte Antwort
                  0
                  • apollon77A apollon77

                    neues Paket released ... jetzt ist der fixer weiter am Anfang vor dem Service kram

                    mcm1957M Online
                    mcm1957M Online
                    mcm1957
                    schrieb am zuletzt editiert von
                    #45

                    @apollon77

                    Ich hab jetzt auch versucht den Fixer unter Windows zu testen. Leider total ohne Erfolg :-(

                    Aber eins nach dem anderen:

                    System: Windows 10 22H2
                    Iobroker installiert via Installer 2022 unter c:\iobroker

                    Versuch unter normalem User:

                    C:\ioBroker>iobroker status
                    iobroker is not running on this host.
                    
                    
                    Objects type: jsonl
                    States  type: jsonl
                    
                    C:\ioBroker>iobroker fix
                    "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                    
                    C:\ioBroker>
                    

                    Komisch ist, dass iobroker status deutlich dauert (10 Sekunden)

                    Dasselbe unter Admin (Eingabeaufforderung mit Admin Rechten gestartet)

                    C:\ioBroker>npx @iobroker/fix
                    "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                    
                    C:\ioBroker>iobroker status
                    iobroker is not running on this host.
                    
                    
                    Objects type: jsonl
                    States  type: jsonl
                    
                    C:\ioBroker>npx @iobroker/fix
                    "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                    
                    

                    Lösche ich nun iobroker.bat und versuche es mit dem normalen user nochmals kommt:

                    
                    C:\ioBroker>del iobroker.bat
                    
                    C:\ioBroker>npx @iobroker/fix
                    
                    [main 2023-01-14T20:19:09.893Z] update#setState idle
                    [main 2023-01-14T20:19:10.943Z] Starting extension host with pid 5872 (fork() took 11 ms).
                    [main 2023-01-14T20:19:18.994Z] Waiting for extension host with pid 5872 to exit.
                    [main 2023-01-14T20:19:19.014Z] Extension host with pid 5872 exited with code: 0, signal: null.
                    
                    C:\ioBroker>
                    

                    Wobei nach dem Aufruf visual studio code startet (!) und mir einen Source des js-controllers anzeigt !?!?
                    12886f1b-821b-4fc3-b347-b87bde941cad-image.png

                    Keine Ahnung warum das so ist und wo ich das ev. in Code abdrehen könnte.

                    Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                    Support Repositoryverwaltung.

                    Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                    LESEN - gute Forenbeitrage

                    mcm1957M 2 Antworten Letzte Antwort
                    0
                    • mcm1957M mcm1957

                      @apollon77

                      Ich hab jetzt auch versucht den Fixer unter Windows zu testen. Leider total ohne Erfolg :-(

                      Aber eins nach dem anderen:

                      System: Windows 10 22H2
                      Iobroker installiert via Installer 2022 unter c:\iobroker

                      Versuch unter normalem User:

                      C:\ioBroker>iobroker status
                      iobroker is not running on this host.
                      
                      
                      Objects type: jsonl
                      States  type: jsonl
                      
                      C:\ioBroker>iobroker fix
                      "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                      
                      C:\ioBroker>
                      

                      Komisch ist, dass iobroker status deutlich dauert (10 Sekunden)

                      Dasselbe unter Admin (Eingabeaufforderung mit Admin Rechten gestartet)

                      C:\ioBroker>npx @iobroker/fix
                      "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                      
                      C:\ioBroker>iobroker status
                      iobroker is not running on this host.
                      
                      
                      Objects type: jsonl
                      States  type: jsonl
                      
                      C:\ioBroker>npx @iobroker/fix
                      "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                      
                      

                      Lösche ich nun iobroker.bat und versuche es mit dem normalen user nochmals kommt:

                      
                      C:\ioBroker>del iobroker.bat
                      
                      C:\ioBroker>npx @iobroker/fix
                      
                      [main 2023-01-14T20:19:09.893Z] update#setState idle
                      [main 2023-01-14T20:19:10.943Z] Starting extension host with pid 5872 (fork() took 11 ms).
                      [main 2023-01-14T20:19:18.994Z] Waiting for extension host with pid 5872 to exit.
                      [main 2023-01-14T20:19:19.014Z] Extension host with pid 5872 exited with code: 0, signal: null.
                      
                      C:\ioBroker>
                      

                      Wobei nach dem Aufruf visual studio code startet (!) und mir einen Source des js-controllers anzeigt !?!?
                      12886f1b-821b-4fc3-b347-b87bde941cad-image.png

                      Keine Ahnung warum das so ist und wo ich das ev. in Code abdrehen könnte.

                      mcm1957M Online
                      mcm1957M Online
                      mcm1957
                      schrieb am zuletzt editiert von
                      #46

                      Bezüglich

                      "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.

                      hab ich eine Hypothese die ich aber nicht verifizieren konnte. In iobroker.bat steht

                      @echo off
                      if %1==fix (
                          npx @iobroker/fix
                      )
                      

                      Ih habe nun an einer STelle bei der Tante Google gefunden, dass es Programme gibt, die in einem Batch file das @ als Eingabeumleitung interpretieren und den Input dann vom angegebenen File lesen. Ich hab aber nix dazu gefunden, wie man das @ sicher escapen könnte und / oder ob das für npx überhaupt zutrifft. Versuche npx mit einem explizitem -p auftzurufen sind gescheitert - wahrscheinlich wegen mangeknder Kenntnis von npm bzw. der Info welche command das Package eigentlich erwartet.

                      Link: https://stackoverflow.com/questions/21074863/what-is-the-at-sign-in-a-batch-file-and-what-does-it-do

                      Not only does the "at" symbol placed in the beginning hide the command, it can, for some commands, also be used to append command arguments stored in a text file. The syntax is exe @commands.txt. armclang.exe for example supports this option.#```

                      Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                      Support Repositoryverwaltung.

                      Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                      LESEN - gute Forenbeitrage

                      1 Antwort Letzte Antwort
                      0
                      • mcm1957M mcm1957

                        @apollon77

                        Ich hab jetzt auch versucht den Fixer unter Windows zu testen. Leider total ohne Erfolg :-(

                        Aber eins nach dem anderen:

                        System: Windows 10 22H2
                        Iobroker installiert via Installer 2022 unter c:\iobroker

                        Versuch unter normalem User:

                        C:\ioBroker>iobroker status
                        iobroker is not running on this host.
                        
                        
                        Objects type: jsonl
                        States  type: jsonl
                        
                        C:\ioBroker>iobroker fix
                        "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                        
                        C:\ioBroker>
                        

                        Komisch ist, dass iobroker status deutlich dauert (10 Sekunden)

                        Dasselbe unter Admin (Eingabeaufforderung mit Admin Rechten gestartet)

                        C:\ioBroker>npx @iobroker/fix
                        "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                        
                        C:\ioBroker>iobroker status
                        iobroker is not running on this host.
                        
                        
                        Objects type: jsonl
                        States  type: jsonl
                        
                        C:\ioBroker>npx @iobroker/fix
                        "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                        
                        

                        Lösche ich nun iobroker.bat und versuche es mit dem normalen user nochmals kommt:

                        
                        C:\ioBroker>del iobroker.bat
                        
                        C:\ioBroker>npx @iobroker/fix
                        
                        [main 2023-01-14T20:19:09.893Z] update#setState idle
                        [main 2023-01-14T20:19:10.943Z] Starting extension host with pid 5872 (fork() took 11 ms).
                        [main 2023-01-14T20:19:18.994Z] Waiting for extension host with pid 5872 to exit.
                        [main 2023-01-14T20:19:19.014Z] Extension host with pid 5872 exited with code: 0, signal: null.
                        
                        C:\ioBroker>
                        

                        Wobei nach dem Aufruf visual studio code startet (!) und mir einen Source des js-controllers anzeigt !?!?
                        12886f1b-821b-4fc3-b347-b87bde941cad-image.png

                        Keine Ahnung warum das so ist und wo ich das ev. in Code abdrehen könnte.

                        mcm1957M Online
                        mcm1957M Online
                        mcm1957
                        schrieb am zuletzt editiert von
                        #47

                        OK

                        Den Extension Hist kann man da abdrehen:

                        72ccd27c-d504-452c-9b99-e757688585fa-image.png

                        Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                        Support Repositoryverwaltung.

                        Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                        LESEN - gute Forenbeitrage

                        mcm1957M 1 Antwort Letzte Antwort
                        0
                        • mcm1957M mcm1957

                          OK

                          Den Extension Hist kann man da abdrehen:

                          72ccd27c-d504-452c-9b99-e757688585fa-image.png

                          mcm1957M Online
                          mcm1957M Online
                          mcm1957
                          schrieb am zuletzt editiert von
                          #48

                          @apollon77

                          Soda - Ergebnisse mit abgeschaltetem VS Code Host:

                          C:\ioBroker>iobroker status
                          iobroker is running on this host.
                          
                          
                          Objects type: jsonl
                          States  type: jsonl
                          
                          C:\ioBroker>iobroker fix
                          "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                          
                          C:\ioBroker>npx @iobroker/fix
                          "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                          
                          C:\ioBroker>
                          

                          Lösche ich nun iobroker.bat so läuft der fixer durch. Leider wird am Ende der Screen gelöscht sodass man nur den nachfolgenden Screenshot sieht:

                          63baa19d-a77d-4c05-b979-c874d81954b7-image.png

                          Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                          Support Repositoryverwaltung.

                          Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                          LESEN - gute Forenbeitrage

                          mcm1957M 1 Antwort Letzte Antwort
                          0
                          • mcm1957M mcm1957

                            @apollon77

                            Soda - Ergebnisse mit abgeschaltetem VS Code Host:

                            C:\ioBroker>iobroker status
                            iobroker is running on this host.
                            
                            
                            Objects type: jsonl
                            States  type: jsonl
                            
                            C:\ioBroker>iobroker fix
                            "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                            
                            C:\ioBroker>npx @iobroker/fix
                            "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                            
                            C:\ioBroker>
                            

                            Lösche ich nun iobroker.bat so läuft der fixer durch. Leider wird am Ende der Screen gelöscht sodass man nur den nachfolgenden Screenshot sieht:

                            63baa19d-a77d-4c05-b979-c874d81954b7-image.png

                            mcm1957M Online
                            mcm1957M Online
                            mcm1957
                            schrieb am zuletzt editiert von mcm1957
                            #49

                            Was ich nun noch eingegrenzt habe:

                            npx @iobroker/fix ruft das Script iobroker.bat nochmals ohne Paramater auf.
                            Ich vermute mal, dass das daran liegt, dass @iobroker/fix bin:iobroker eingetragen hat und die Searchlist von npx das current working directory als erstes Verzeichnis einschließt.

                            Wenn man ioBroker manuell ohne Paramter aufruft bekommt man denselben Fehler:

                            C:\ioBroker>ioBroker
                            ioBroker
                            "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                            
                            C:\ioBroker>
                            

                            OK

                            Die Fehlermeldung kommt, da %1==fix ohne Parametereingabe ungültig wird ( ==fix ). Wenn man aber hier [%1]==[fix] schreibt ist zwar der cmd Fehler weg - dafür faäält das Script aber in die letzte Zeile durch und gibt nur den iobroker help text aus.

                            Irgendwie muss "man" dem npx klar machen, dass es nicht iobroker im lokalen Verzeich nis ausführen soll sondern den Befehl im package ...

                            Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                            Support Repositoryverwaltung.

                            Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                            LESEN - gute Forenbeitrage

                            1 Antwort Letzte Antwort
                            0
                            • apollon77A Offline
                              apollon77A Offline
                              apollon77
                              schrieb am zuletzt editiert von
                              #50

                              @mcm57 Der change in den bar Files ist früher heute schon live gegangen im installer ... und @Gaspode hatte bereits rausgefunden das der Fehler wohl an der iobroker.bar liegt die - why ever - beim Ausführen des npm Befehls ausgeführt wird. Warum und wie man das umgeheen kann (oder die iobroker.bar anpassen das man sden Fall erkennt?) wäre der nächste Schritt

                              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                              mcm1957M 1 Antwort Letzte Antwort
                              1
                              • apollon77A apollon77

                                @mcm57 Der change in den bar Files ist früher heute schon live gegangen im installer ... und @Gaspode hatte bereits rausgefunden das der Fehler wohl an der iobroker.bar liegt die - why ever - beim Ausführen des npm Befehls ausgeführt wird. Warum und wie man das umgeheen kann (oder die iobroker.bar anpassen das man sden Fall erkennt?) wäre der nächste Schritt

                                mcm1957M Online
                                mcm1957M Online
                                mcm1957
                                schrieb am zuletzt editiert von
                                #51

                                @apollon77

                                Yep - das such ich ja.

                                npx starte offensichtlich IMMER den Befehl der als erstes im PATH gefunden wird. Der ist hier iobroker. Wenn man im Package.json den Befehl nicht iobroker sondern z.B. iobroker-fix nennen würde, sollte es gehen. Ich weiß aber nicht wie ich das testen könnte.

                                --ignore-existing bei npx hätte das auch lösen können:

                                --ignore-existing - If this flag is set, npx will not look in $PATH, or in the current package's node_modules/.bin for an existing version before deciding whether to install. Binaries in those paths will still be available for execution, but will be shadowed by any packages requested by this install.
                                

                                Nur wurde der qualifier eleminiert :-(

                                Hier gibts eine Erläuterung zu dem Problem:
                                https://superuser.com/questions/1623020/npx-capacitor-cli-resolving-to-c-windows-rstcli-exe

                                ERGO:
                                Wenn es trivial möglich ist (ohne sideeffects) wäre es einen Versuch wert

                                  "main": "./lib-npx/install.js",
                                  "bin": {
                                    "iobroker": "./lib-npx/install.js"
                                  },
                                

                                durch z.B.

                                  "main": "./lib-npx/install.js",
                                  "bin": {
                                    "iobroker-fix": "./lib-npx/install.js"
                                  },
                                

                                oder iobroker-install ...

                                zu ersetzen. Schätze nur, dass das Auswirkungen auf die normale Installation haben könnte falls der Command wo explizit verlangt wird. Wenn immer nur npx verwendet wird, sollte es egal sein da npx immer das erste command verwendet (wenn ich es richtig gelesen habe) und solange es nur eines gibt ...

                                McM

                                Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                                Support Repositoryverwaltung.

                                Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                                LESEN - gute Forenbeitrage

                                apollon77A 1 Antwort Letzte Antwort
                                0
                                • GaspodeG Offline
                                  GaspodeG Offline
                                  Gaspode
                                  schrieb am zuletzt editiert von
                                  #52

                                  Hi,
                                  mal abgesehen von dem immer noch rätselhaftem Verhalten, dass iobroker.bat beim Aufruf des Fixers aufgerufen wird, sieht der Fixer selbst jetzt soweit ich das beurteilen kann gut aus:

                                  F:\ioBrokerTest>npx @iobroker/fix@latest
                                  
                                  Windows installation starting... (fixing = true)
                                  NPM version: 9.3.0
                                  No path given, using F:\ioBrokerTest\iobroker-data
                                  Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                                  Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
                                  Compressed 2 JSONL files. Done
                                  NPM version: 9.3.0
                                  Write "iobroker start" to start the ioBroker
                                  npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
                                  
                                  up to date, audited 524 packages in 7s
                                  
                                  36 packages are looking for funding
                                    run `npm fund` for details
                                  
                                  20 vulnerabilities (15 moderate, 5 high)
                                  
                                  To address issues that do not require attention, run:
                                    npm audit fix
                                  
                                  To address all issues (including breaking changes), run:
                                    npm audit fix --force
                                  
                                  Run `npm audit` for details.
                                  
                                  =============================
                                  Running Admin shell
                                  =============================
                                  ioBroker service is already installed.
                                  
                                  =============================
                                  Running Admin shell
                                  =============================
                                  ioBroker wird gestartet.
                                  ioBroker wurde erfolgreich gestartet.
                                  
                                  ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                                  To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                                  
                                  mcm1957M 1 Antwort Letzte Antwort
                                  0
                                  • GaspodeG Gaspode

                                    Hi,
                                    mal abgesehen von dem immer noch rätselhaftem Verhalten, dass iobroker.bat beim Aufruf des Fixers aufgerufen wird, sieht der Fixer selbst jetzt soweit ich das beurteilen kann gut aus:

                                    F:\ioBrokerTest>npx @iobroker/fix@latest
                                    
                                    Windows installation starting... (fixing = true)
                                    NPM version: 9.3.0
                                    No path given, using F:\ioBrokerTest\iobroker-data
                                    Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                                    Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
                                    Compressed 2 JSONL files. Done
                                    NPM version: 9.3.0
                                    Write "iobroker start" to start the ioBroker
                                    npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
                                    
                                    up to date, audited 524 packages in 7s
                                    
                                    36 packages are looking for funding
                                      run `npm fund` for details
                                    
                                    20 vulnerabilities (15 moderate, 5 high)
                                    
                                    To address issues that do not require attention, run:
                                      npm audit fix
                                    
                                    To address all issues (including breaking changes), run:
                                      npm audit fix --force
                                    
                                    Run `npm audit` for details.
                                    
                                    =============================
                                    Running Admin shell
                                    =============================
                                    ioBroker service is already installed.
                                    
                                    =============================
                                    Running Admin shell
                                    =============================
                                    ioBroker wird gestartet.
                                    ioBroker wurde erfolgreich gestartet.
                                    
                                    ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                                    To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                                    
                                    mcm1957M Online
                                    mcm1957M Online
                                    mcm1957
                                    schrieb am zuletzt editiert von mcm1957
                                    #53

                                    @gaspode
                                    Na ja - so rätselhaft ist das (für mich) nicht
                                    npx führt den Befehl aus den es im bin Abschnitt der package.json findet.
                                    Und dort steht bin: iobroker ... drinnen.
                                    Und im PATH ist halt iobroker.bat vor dem js script

                                    Schau dir mal den Link in meinem letzten Post an.


                                    Zusatzfrage:
                                    Wie erhältst du den Screenoutput? Bei mir löst irgendwas ein Clear Screen aus sodass ich am Ende nur die Zeieln 36 bis 40 deines Outputs sehe...

                                    Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                                    Support Repositoryverwaltung.

                                    Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                                    LESEN - gute Forenbeitrage

                                    GaspodeG 2 Antworten Letzte Antwort
                                    0
                                    • mcm1957M mcm1957

                                      @gaspode
                                      Na ja - so rätselhaft ist das (für mich) nicht
                                      npx führt den Befehl aus den es im bin Abschnitt der package.json findet.
                                      Und dort steht bin: iobroker ... drinnen.
                                      Und im PATH ist halt iobroker.bat vor dem js script

                                      Schau dir mal den Link in meinem letzten Post an.


                                      Zusatzfrage:
                                      Wie erhältst du den Screenoutput? Bei mir löst irgendwas ein Clear Screen aus sodass ich am Ende nur die Zeieln 36 bis 40 deines Outputs sehe...

                                      GaspodeG Offline
                                      GaspodeG Offline
                                      Gaspode
                                      schrieb am zuletzt editiert von
                                      #54

                                      @mcm57
                                      Unserer Posts haben sich überschnitten.

                                      1 Antwort Letzte Antwort
                                      0
                                      • mcm1957M mcm1957

                                        @apollon77

                                        Yep - das such ich ja.

                                        npx starte offensichtlich IMMER den Befehl der als erstes im PATH gefunden wird. Der ist hier iobroker. Wenn man im Package.json den Befehl nicht iobroker sondern z.B. iobroker-fix nennen würde, sollte es gehen. Ich weiß aber nicht wie ich das testen könnte.

                                        --ignore-existing bei npx hätte das auch lösen können:

                                        --ignore-existing - If this flag is set, npx will not look in $PATH, or in the current package's node_modules/.bin for an existing version before deciding whether to install. Binaries in those paths will still be available for execution, but will be shadowed by any packages requested by this install.
                                        

                                        Nur wurde der qualifier eleminiert :-(

                                        Hier gibts eine Erläuterung zu dem Problem:
                                        https://superuser.com/questions/1623020/npx-capacitor-cli-resolving-to-c-windows-rstcli-exe

                                        ERGO:
                                        Wenn es trivial möglich ist (ohne sideeffects) wäre es einen Versuch wert

                                          "main": "./lib-npx/install.js",
                                          "bin": {
                                            "iobroker": "./lib-npx/install.js"
                                          },
                                        

                                        durch z.B.

                                          "main": "./lib-npx/install.js",
                                          "bin": {
                                            "iobroker-fix": "./lib-npx/install.js"
                                          },
                                        

                                        oder iobroker-install ...

                                        zu ersetzen. Schätze nur, dass das Auswirkungen auf die normale Installation haben könnte falls der Command wo explizit verlangt wird. Wenn immer nur npx verwendet wird, sollte es egal sein da npx immer das erste command verwendet (wenn ich es richtig gelesen habe) und solange es nur eines gibt ...

                                        McM

                                        apollon77A Offline
                                        apollon77A Offline
                                        apollon77
                                        schrieb am zuletzt editiert von apollon77
                                        #55

                                        @mcm57 Ja das ist ja mal ne geile Erkenntnis ... Naja klar kann man es umbenennen ... dann sieht nur der befehl nicht so schön aus :-) ich überlege mal ... aber dennoch ... WTF npm ....

                                        Vielen Dank @mcm57 und @Gaspode so fix wie in den letzten zwei Tagen sind wir vorher nicht vorangekommen!!

                                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                        1 Antwort Letzte Antwort
                                        1
                                        • apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          schrieb am zuletzt editiert von apollon77
                                          #56

                                          PS: In nehme an ein "npx @iobroker/fix@latest" tut das gleiche korrekt wenn die iobroker.bat da ist?

                                          Es ist nur interessant das es bei Linux nicht passiert :-(

                                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                          GaspodeG mcm1957M 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          666

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe