Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Wichtige Hinweise bei neueren npm-Versionen und sudo

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    Wichtige Hinweise bei neueren npm-Versionen und sudo

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

      Es kursieren überall alte Anleitungen zur Installation und Update von Adaptern, die mit neueren npm-Versionen zu Problem führen können. Speziell bei Kombination von sudo mit npm-Kommandos tritt dabei folgender Fehler (oder Varianten davon) auf:

      Error: EACCES: permission denied, scandir '/root/.npm/_logs'
      

      Daher bitte bei manuellen Installationen folgende Regeln beachten:

      1. Wann immer es zu vermeiden geht, kein sudo vor npm-Befehle setzen.

      2. Wenn es doch unbedingt nötig ist, unbedingt die Option -H angeben. --unsafe-perm vermeidet außerdem Probleme bei Installationsskripten. Also so

      sudo -H npm [Rest des Befehls] --unsafe-perm
      

      3. Ist man als root angemeldet (z.B. weil es keinen nicht-root-User gibt), empfiehlt sich bei der Adapter-Installation die Option --unsafe-perm anzugeben. Also

      npm install [Adaptername] --unsafe-perm
      

      4. Wurde zu früherem Zeitpunkt Regel 1 oder 2 missachtet, dann kann der ioBroker-Fixer Abhilfe schaffen:

      iobroker fix
      

      5. Für die iobroker-Befehle ist übrigens auch kein sudo nötig.

      hanss 1 Reply Last reply Reply Quote 7
      • MathiasJ
        MathiasJ last edited by Negalein

        Ich möchte auch gleich mal was los werden:

        nachdem man IOboker istalliert hat, muß man bei Ubuntu server 18.04 server

        noch npm i --production --unsafe-perm eingeben, damit die IObroker-Installation läuft.

        Gruß,

        Mathias

        1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 last edited by

          Das ist so nicht ganz korrekt. Wie hast Du es denn installiert? NIcht nach der NEUEN Installationsmethode mit dem Shell-Skript … sondern Du hast es normal nach "altem Weg" installiert. Dann bekommst Du am Ende eine Ausgabe das Du genau dies tun musst.

          ABER NUR DANN!!!

          1 Reply Last reply Reply Quote 0
          • MathiasJ
            MathiasJ last edited by

            ich möchte jetzt nicht mit Dir streiten, aber warum existiert dann der alte Weg noch?

            bzw wo finde ich den neuen?

            gruß,

            Mathias

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators last edited by

              http://www.iobroker.net/docu/?page_id=8323&lang=de

              1 Reply Last reply Reply Quote 0
              • apollon77
                apollon77 last edited by

                @MathiasJ:

                ich möchte jetzt nicht mit Dir streiten, aber warum existiert dann der alte Weg noch?

                bzw wo finde ich den neuen?

                gruß,

                Mathias `
                Weil der neue Weg über ein vom iobroker Server geladenes Shell Skript vertrauen voraussetzt User gibt die das vllt nicht wolle. Weiterhin funktioniert das nur auf Linux. Windows Nutzer müssen es anders machen bis wir eine powershell Lösung haben.

                Also: es hat seine Gründe!!

                Gesendet vom Handy …

                1 Reply Last reply Reply Quote 0
                • MathiasJ
                  MathiasJ last edited by

                  @Homoran

                  Danke! Habe es soeben gespeichert.

                  aber die alte Version geht unter Linux immer noch?

                  Oder muß ich Iobroker wieder neu aufsetzen?

                  Gruß,

                  Mathias

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    Was meinst du mit "alte Version"

                    Wen du den in der Anleitung unten dokumentierten alten Weg der Installation meinst, geht der natürlich noch.

                    Unter Berücksichtigung der weiteren Hinweise bezüglich root und sudo sowie autostart.

                    ` > Ansonsten steht der “alte” Weg auch noch zur Verfügung. Dafür bitte den unten stehen Abschnitt “Installation ioBroker” ignorieren und den darauf folgenden Abschnitt “Installation ioBroker (alter Weg / optional)” nutzen.

                    Allerdings muss man dann die Ausgaben der Installation genau beachten, da man im Anschluss die eigentliche Installation selber manuell starten muss. Danach müssen dann noch 3 weitere Befehle manuell eingegeben werden, um die Autostart-Funktion von ioBroker sicher zu stellen `

                    Gruß

                    Rainer

                    1 Reply Last reply Reply Quote 0
                    • MathiasJ
                      MathiasJ last edited by

                      danke Rainer,

                      ich habe nicht gewußt, dass es nun einen neuen Weg gibt. deshalb habe ich komplett den alten genutzt.

                      http://www.iobroker.net/docu/?page_id=8 … g_optional

                      Der neue Weg steht bei meiner Liste nun ganz oben, für weitere Installationen.

                      Nun habe ich 2 Instanzen, die gar nicht mehr so recht wollen.

                      ich habe das in den richtigen Foren gepostet.

                      Gruß,

                      Mathias

                      1 Reply Last reply Reply Quote 0
                      • AlCalzone
                        AlCalzone Developer last edited by

                        @MathiasJ:

                        ich habe nicht gewußt, dass es nun einen neuen Weg gibt. deshalb habe ich komplett den alten genutzt.

                        http://www.iobroker.net/docu/?page_id=8 … g_optional `

                        Der alte, den du da verlinkt hast, funktioniert auch. Schließlich benutzt das Installer-Skript diesen unter der Haube.

                        Man muss nur genau lesen:
                        > Bitte auf die Ausgaben der Installation achten. Die endgültige Installation muss manuell gestartet werden – die dazu notwendigen Schritte werden auf dem Bildschirm ausgegeben.
                        Und eine dieser Ausgaben bezieht sich auf den Befehl, den du oben erwähnt hast.

                        1 Reply Last reply Reply Quote -1
                        • BBTown
                          BBTown last edited by

                          Wenn ich gemäß der Anleitung zum Update auf v.8 folgendes eingebe:

                          curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
                          
                          ````dann erhalte ich folgende Fehlermeldung
                          

                          sudo: Fehler in /etc/sudo.conf, Zeile 0, während Plugin »sudoers_policy« geladen wurde
                          sudo: /usr/lib/sudo/sudoers.so darf nur vom Besitzer beschreibbar sein
                          sudo: Schwerwiegender Fehler, Plugins konnten nicht geladen werden

                          
                          Ich habe eine Installation auf Docker Basis und bin dort immer als root unterwegs.
                          
                          Jemand eine Idee?
                          1 Reply Last reply Reply Quote 0
                          • G
                            Georgius last edited by

                            Meiner Meinung nach brauchst Du kein sudo wenn du eh Root bist.

                            1 Reply Last reply Reply Quote 0
                            • BBTown
                              BBTown last edited by

                              ja, aber wie lautet dann der richtige Befehl?

                              1 Reply Last reply Reply Quote 0
                              • AlCalzone
                                AlCalzone Developer last edited by

                                @BBTown:

                                ja, aber wie lautet dann der richtige Befehl? `
                                Schau dir deinen Befehl mal an, such das "sudo" und lass es weg 😉

                                1 Reply Last reply Reply Quote 0
                                • BBTown
                                  BBTown last edited by

                                  hahaha …. ja, so weit war ich auch schon 8-)

                                  curl -sL https://deb.nodesource.com/setup_8.x | -E bash - 
                                  

                                  Antwort:

                                  bash: -E: Kommando nicht gefunden.  
                                  

                                  daher ja meine Frage ob jemand den korrekten Befehl nennen kann … 😉

                                  1 Reply Last reply Reply Quote 0
                                  • BBTown
                                    BBTown last edited by

                                    curl -sL https://deb.nodesource.com/setup_8.x | bash - 
                                    

                                    das scheint zu passen …

                                    1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 last edited by

                                      -E gehört zu sudo.

                                      Aus der https://github.com/nodesource/distributions/blob/master/README.md:

                                      # Using Debian, as root
                                      curl -sL https://deb.nodesource.com/setup_8.x | bash -
                                      apt-get install -y nodejs
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • BBTown
                                        BBTown last edited by

                                        ja, danke dir

                                        da macht sich mal wieder bemerkbar, wie wenig Linux know-how ich habe und dass ein Normalsterblicher sich immer wieder mit der Syntax schwer tut.

                                        1 Reply Last reply Reply Quote 0
                                        • AlCalzone
                                          AlCalzone Developer last edited by

                                          Sorry, das hätte ich natürlich auch erwähnen können 😄

                                          1 Reply Last reply Reply Quote 0
                                          • J
                                            jambo last edited by

                                            Ich bekomme die Fehlermeldung leider beim Autostart (beim manuellen Starten über die Konsole tritt der Fehler nicht auf):

                                            Error:	2018-12-21 00:06:14.553	error	at Timer.listOnTimeout (timers.js:290:5)
                                            Error:	2018-12-21 00:06:14.553	error	at tryOnTimeout (timers.js:323:5)
                                            Error:	2018-12-21 00:06:14.553	error	at ontimeout (timers.js:498:11)
                                            Error:	2018-12-21 00:06:14.553	error	at Timeout.saveConfig [as _onTimeout] (/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/objectsInMemServer.js:1897:16)
                                            Error:	2018-12-21 00:06:14.553	error	at Object.fs.writeFileSync (fs.js:1299:33)
                                            Error:	2018-12-21 00:06:14.553	error	at Object.fs.openSync (fs.js:646:18)
                                            Error:	2018-12-21 00:06:14.553	error	EACCES: permission denied, open '/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/../../../../iobroker-data/objects.json.bak'
                                            uncaught	2018-12-21 00:06:14.551	error	exception: EACCES: permission denied, open '/opt/iobroker/node_modules/iobroker.js-controller/lib/objects/../../../../iobroker-data/objects.json.bak'
                                            
                                            

                                            Ich habe das System extra noch mal neu aufgesetzt, der Fehler besteht aber immer noch. Installiert ist ioBroker in einer Debian-VM unter Proxmox. Beim Installieren habe ich folgende Schritte durchgeführt:

                                            1. ioBroker exakt nach dem neuen Weg installiert: http://www.iobroker.net/docu/?page_id=8323&lang=de

                                            2. Auf meinem alten Raspi via Backitup-Adapter ein Komplett-Backup erstellt. Auf dem Raspi tritt das Problem übrigens nicht auf.

                                            3. Backup wie in der Anleitung zum Backitup-Adapter beschrieben auf dem neuen System erfolgreich eingespielt.

                                            4. ioBroker gestartet.

                                            ioBroker selbst läuft bei manuellem Start absolut problemlos, nur der Autostart will nicht. "sudo chown -R $(whoami) ~/.npm" hat leider auch nicht geholfen.

                                            Hat jemand noch eine Idee?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            949
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            eacces install npm sudo
                                            14
                                            53
                                            33747
                                            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