Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. Javascript EACCES-Fehler (erledigt)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Javascript EACCES-Fehler (erledigt)

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

      Systemdata Bitte Ausfüllen
      Hardwaresystem: Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz
      Arbeitsspeicher: 64GB
      Festplattenart: SSD 256 + ssd 64GB - Raid 6 24 TB
      Betriebssystem: 4.9.0-14-amd64 #1 SMP Debian 4.9.246-2 (2020-12-17) x86_64 GNU/Linux
      Node-Version: 12.22.1
      Nodejs-Version: 12.22.1
      NPM-Version: 6.14.12
      Installationsart: Manuell (Docker-Image)
      Image genutzt: Ja
      Ort/Name der Imagedatei: https://github.com/buanet/ioBroker.docker

      Ich musste wegen Wartungsarbeiten meinen Server neustarten.
      Nach dem Neustart bekam ich von Javascript-Adapter folgende Meldungen (nur bei diesen 4 Skripten, alle anderen wurden korrekt geladen ) :

      2021-07-03 15:55:19.280 - error: javascript.0 (651) Cannot write file /home/iobroker/common/Wetterstation_CreateDP.js: Error: EACCES: permission denied, open '/home/iobroker/common/Wetterstation_CreateDP.js'
      2021-07-03 15:55:19.281 - error: javascript.0 (651) Cannot write file /home/iobroker/common/wetter/vorhersage_MD.js: Error: EACCES: permission denied, open '/home/iobroker/common/wetter/vorhersage_MD.js'
      2021-07-03 15:55:19.282 - error: javascript.0 (651) Cannot write file /home/iobroker/common/Heizung/Heizung_Uhr.js: Error: EACCES: permission denied, open '/home/iobroker/common/Heizung/Heizung_Uhr.js'
      2021-07-03 15:55:19.282 - error: javascript.0 (651) Cannot write file /home/iobroker/common/Heizung/Heizung_chkOil.js: Error: EACCES: permission denied, open '/home/iobroker/common/Heizung/Heizung_chkOil.js'
      

      Ich habe darauf hin alle Skripte exportiert und neu importiert.
      Resultat war, das alle Skripte die Meldung zeigten.
      Ursache war, dass

      /home/iobroker 
      

      (und alle Unterverzeichnisse) Besitzer/Gruppe root:root gehörte(n).

      Ein

      curl -sL https://iobroker.net/fix.sh | bash -
      

      brachte auch keine Abhilfe... (Natürlich nach Beendigung des Iobroker).

      Ich habe das Problem durch ein

      chown -R iobroker:iobroker /home/iobroker
      

      gelöst.

      1. Frage:
        Passt das jetzt so oder verursacht das noch andere Probleme?

      2. Frage:
        Wie kann sowas passieren?

      Grüße und schon mal Danke
      Boronsbruder

      J Thomas Braun 2 Replies Last reply Reply Quote 0
      • J
        Jan1 @Boronsbruder last edited by Jan1

        @boronsbruder sagte in Javascript EACCES-Fehler:

        /home/iobroker

        Ist das ne Docker Eigenart oder warum liegt das nicht unter /opt/iobroker?

        Würde auch erklären warum Du den Besitzer erst auf iobroker ändern musst da das so wohl nicht normal ist und dann auch gleich Deine Frage beantworten würde 😉

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

          @boronsbruder
          Das spricht dafür, dass du da als root rumhampelst oder von vorne herein die Installation falsch vorgenommen wurde.

          Nie als root anmelden!

          1 Reply Last reply Reply Quote 0
          • Boronsbruder
            Boronsbruder @Jan1 last edited by Boronsbruder

            @jan1
            der iobroker liegt und unter

            /opt/iobroker
            

            nur die Javascripte des Javascript-Editor sind dort gespeichert.

            @Thomas-Braun

            Nope, ich hab dort nirgendwo rumgehampelt....

            Import und Export über den Javascript-Adapter
            Und die Installation war ein fertiger Container, der jetzt schon einige Jahre (mit einigen Updates) ohne Probleme lief...

            Und anfangs hatten ja nur 4 meiner rund 50 Skripte, das Berechtigungsproblem...

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

              @boronsbruder Das kann nicht sein, wenn du da mit sudo / als Standarduser arbeiten würdest. Dann wäre das eine Privilege escalation.
              Die Adapter laufen unter dem User iobroker, können also nie root:root als owner haben.

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

                @thomas-braun
                Lest ihr die Post überhaupt?

                Der IOBROKER und seine Adapter liegt auch nicht in /home/iobroker

                In dem Verzeichnis, das in der Fehlermeldung genannt wird, liegen nur die Skripte des Javascript-Adapters, also die, die man mittels dieses Adapters erstellt...

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

                  @boronsbruder Und die durch den Adapter erstellten Skripte können niemals dem root gehören, wenn es richtig aufgesetzt wäre. Denn der Prozess läuft im Regelfall mit dem User 'iobroker', er kann also nichts produzieren, was dann root gehören würde

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

                    @thomas-braun
                    Und genau, das ist das, was mich ja stutzig macht

                    top - 21:14:56 up  4:20,  0 users,  load average: 0,60, 0,57, 0,61
                    Tasks:  34 total,   1 running,  33 sleeping,   0 stopped,   0 zombie
                    %Cpu(s):  1,0 us,  3,1 sy,  0,0 ni, 95,1 id,  0,5 wa,  0,0 hi,  0,3 si,  0,0 st
                    MiB Mem :  64324,1 total,    448,8 free,   2793,7 used,  61081,6 buff/cache
                    MiB Swap:   7685,0 total,   7664,6 free,     20,4 used.  60763,6 avail Mem 
                    
                      PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                                                                                                                                                            
                      769 iobroker  20   0  624956  51412  15552 S   1,0   0,1   0:38.83 node                                                                                                                                                                                               
                     2257 iobroker  20   0  628292  52940  15872 S   0,7   0,1   0:25.09 node                                                                                                                                                                                               
                    32022 iobroker  20   0  916160 135024  18580 S   0,7   0,2   1:41.25 node                                                                                                                                                                                               
                       86 iobroker  20   0  928216 137692  16272 S   0,3   0,2   2:43.90 node                                                                                                                                                                                               
                      184 iobroker  20   0  619420  40124  15216 S   0,3   0,1   0:06.55 node                                                                                                                                                                                               
                      251 iobroker  20   0  907820  52560  16300 S   0,3   0,1   0:08.05 node                                                                                                                                                                                               
                      297 iobroker  20   0  922992  68116  16160 S   0,3   0,1   2:39.13 node                                                                                                                                                                                               
                     1843 iobroker  20   0  614976  37776  15216 S   0,3   0,1   0:06.40 node                                                                                                                                                                                               
                     3110 iobroker  20   0  716812  59744  15320 S   0,3   0,1   0:11.90 node                                                                                                                                                                                               
                     7570 root      20   0   11284   3344   2908 R   0,3   0,0   0:00.06 top                                                                                                                                                                                                                                                                                                                                                   
                    

                    Laut "top" laufen, die Adapter auch korrekterweise unter dem User iobroker...
                    Ja, hier bin ich als root eingeloggt!

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

                      @boronsbruder Du hampelst ja doch als root rum
                      Denn top läuft als aufrufender User, du hast den also als root aufgerufen.
                      Da brauchen wir jetzt gar nicht weiter diskutieren, man meldet sich einfach NIE als root an.

                      Dann kommt es auch nicht zu falschen Besitzern der Dateien.

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

                        @thomas-braun
                        dann logg dich mal mit Portainer in die Console eines Containers ein, dann kommst automatisch als root rein...
                        und für den "top" hab ich das nicht umgestellt...

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

                          @boronsbruder Ich hab so'n Kram hier nicht laufen. Aber auch in Containern kann man sauber mit den Rechten arbeiten.

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

                            @thomas-braun
                            Also nochmal:
                            Ich hatte mich nicht als root in den Container eingeloggt und irgendwelche Änderungen durchführt.
                            Ich habe nur den Server auf dem der Docker Container läuft neu gestartet.

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

                              @boronsbruder

                              Frage:
                              Wie kann sowas passieren?

                              Antwort:
                              Wenn mit dem falschen User hantiert wird.

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              843
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              3
                              13
                              307
                              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