Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Warum nutzt IOBroker ACLs?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Warum nutzt IOBroker ACLs?

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

      Heute habe ich innerhalb von zwei Tagen den zweiten Nutzer von raspiBackup der Probleme hat ein Backup von einem IOBroker Image mit raspiBackup auf eine NFS3 gemountete Backuppartition einer Synology zu erstellen. Die Ursache liegt darin dass der IOBroker ACLs nutzt die leider von Synology nicht unterstuetzt werden und rsync mit einer entsprechenden Fehlermeldung abbricht.

      Man kann die Option -A von rsync weglassen die dafuer sorgt dass ACLs gesichert werden. Ein Nutzer hat auf diese Art ein Backup erstellt, dann wieder restored ohne ACLs und keine Probleme soweit mit dem restorten IOBroker festgestellt.

      Was ist der Grund warum IOBroker ACLs nutzt und was passiert wenn man wie eben beschrieben keine ACLs ins Backup sichert? Ist dann irgendeine Funktionalitaet von IOBroker broken und wenn ja welche?

      Ich nutze kein IOBroker aber dadurch dass immer wieder Nutzer von IOBroker raspiBackup nutzen und an der fehlenden Unterstuetzung von ACLs bei Synology verzweifeln wuerde ich gerne wissen was ich den armen IOBroker Nutzern fuer eine Loesungsmoeglichkeit nennen soll wie sie ihr IOBrokersystem mit raspiBackup sichern koennen.

      apollon77 Dutchman 2 Replies Last reply Reply Quote 0
      • apollon77
        apollon77 @framp last edited by

        @framp welche Acls sind denn problematisch und was ist raspiBackup?

        Iobroker nutzt meines Wissens nach ganz normale Linux Rechte.

        Warum um nutzen die User nicht ganz normal das offizielle iobroker Backup Bzw backitup zum sichern und restoren?

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

          @apollon77 @framp

          echad@chet:~ $ ls -la /opt/iobroker/
          total 708
          drwxrwxr-x+   6 iobroker iobroker   4096 May  6 18:45 .
          drwxr-xr-x    4 root     root       4096 Apr 23 00:53 ..
          drwxrwxr-x+   2 iobroker iobroker   4096 Apr 25 22:21 backups
          -rwxrwxrwx+   1 iobroker iobroker   2109 May  6 18:45 INSTALLER_INFO.txt
          lrwxrwxrwx    1 iobroker iobroker     22 May  6 18:45 iob -> /opt/iobroker/iobroker
          -rwxr-xr-x+   1 iobroker iobroker    309 May  6 18:45 iobroker
          drwxrwxr-x+  12 iobroker iobroker   4096 May 17 06:10 iobroker-data
          drwxrwxr-x+   2 iobroker iobroker   4096 May 17 02:57 log
          drwxrwxr-x+ 675 iobroker iobroker  32768 May 17 00:30 node_modules
          -rw-rwxr--+   1 iobroker iobroker    155 May  6 18:43 .npmrc
          -rw-rwxr--+   1 iobroker iobroker   1254 May 17 00:30 package.json
          -rw-rwxr--+   1 iobroker iobroker 639347 May 17 00:30 package-lock.json
          -rw-rwxr--+   1 iobroker iobroker   5693 Feb  6 15:27 reinstall.js
          echad@chet:~ $ getfacl /opt/iobroker/INSTALLER_INFO.txt
          getfacl: Removing leading '/' from absolute path names
          # file: opt/iobroker/INSTALLER_INFO.txt
          # owner: iobroker
          # group: iobroker
          user::rwx
          group::rwx
          group:iobroker:rwx
          mask::rwx
          other::rwx
          
          echad@chet:~ $
          

          Da sind schon ACLs gesetzt. Ich weiß aber nicht warum. 😄

          Warum hat denn die Synology überhaupt Probleme damit? Das dürfte doch mit ext4 als Dateisystem (und aktiviertem ACL) eigentlich gar kein Problem geben.

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

            @thomas-braun sagte in Warum nutzt IOBroker ACLs?:

            Ich weiß aber nicht warum.

            Das war wenn ich mich recht erinnere, um sicher zu gehen, dass beim Erstellen von Ordnern und Unterordnern und Dateien darin, etc. die richtigen Berechtigungen mitkommen. Sowohl automatisch als auch manuell auf der Konsole.

            apollon77 framp 2 Replies Last reply Reply Quote 0
            • apollon77
              apollon77 @AlCalzone last edited by

              @alcalzone Exakt aus dem grund (sagt auch meine Erinnerung). Am Ende etwas was nötig ist damit der iobroker als Runtime user geht aber der User mit echten Usern und ggf root auf der Shell rumturnen kann und am Ende alles zusammen irgendwie tut

              AM Ende sollte doch ein "Backup ohne ACL" und "iob fix" nach dem restore das problem vllt lösen?

              1 Reply Last reply Reply Quote 0
              • Dutchman
                Dutchman Developer Most Active Administrators @framp last edited by Dutchman

                @framp

                Ich würde empfehlen, um die Fehler zu vermeiden, die Option Weck zu lassen aber Allgemein den Usern immer darauf hinweisen das nach einem restore „iob fix“ ausgeführt werden sollte um eventuelle fehlende ACL‘s zu setzen und einfach auch in die ioBroker Installation zu verifizieren 🤔

                Gründe warum eine ACL gesetzt ist wurde ja bereits von den Kollegen erklärt (und entspricht auch meiner Erinnerung)

                Sicherstellen das der ioBroker User (und damit proces) immer Zugang auf alle ioBroker relevanten Elemente hat

                1 Reply Last reply Reply Quote -1
                • framp
                  framp @AlCalzone last edited by framp

                  @alcalzone said in Warum nutzt IOBroker ACLs?:

                  Das war wenn ich mich recht erinnere, um sicher zu gehen, dass beim Erstellen von Ordnern und Unterordnern und Dateien darin, etc. die richtigen Berechtigungen mitkommen. Sowohl automatisch als auch manuell auf der Konsole.

                  Ich muss gestehen dass ich mich mit ACLs nicht gut auskenne und sie immer nur als Problemverursacher kenne bei rsync NFS Sicherung auf eine Synology oder QNAP.

                  Auch verstehe ich nicht warum man dazu bei IOBroker ACLs nutzt. Das geht bestimmt auch mit normalen Linuxberechtigungen ohne ACLs.

                  Wer wissen will was raspiBackup ist kann im Netz danach suchen. Es gibt genügend Seiten die beschreiben was das Tool kann und wie man es benutzt.

                  Der Hinweis nach dem Restore noch ein IOBrokertool laufen zu lassen um die fehlenden ACLs wieder anzulegen klingt für mich gut. Das werde ich auf meiner Webseite beim Thema raspiBackup, Synology und QNAP dokumentieren. Allerdings haben die IOBroker Nutzer bei Tests auch herausgefunden dass ACLs offensichtlich nicht notwendig sind. Deshalb meine Frage dazu hier. Kann man die Entwickler von IOBroker dazu direkt Mal fragen? Wenn ja, wie? Ich habe kein Problem die Frage in Englisch zu stellen wenn es notwendig ist.

                  Jey Cee apollon77 2 Replies Last reply Reply Quote 0
                  • Jey Cee
                    Jey Cee Developer @framp last edited by

                    @framp sagte in Warum nutzt IOBroker ACLs?:

                    Kann man die Entwickler von IOBroker dazu direkt Mal fragen? Wenn ja, wie?

                    Hast du bereits. Bis auf einen hier im Thema haben dir nur Entwickler geantwortet 😉

                    Das du keine Konkretere Antwort bekommen hast weshalb ACLs genutzt werden, liegt sicher daran das die Aufgrund einer Fehlermeldung von Usern hinzugefügt wurden. Und das vermutlich schon vor mehr als 2 Jahren.
                    Das heist die ACLs sind nicht in jedem Fall Notwendig, werden aber halt in bestimmten Situationen oder auf bestimmten Systemen benötigt.

                    1 Reply Last reply Reply Quote 1
                    • apollon77
                      apollon77 @framp last edited by apollon77

                      @framp sagte in Warum nutzt IOBroker ACLs?:

                      Das geht bestimmt auch mit normalen Linuxberechtigungen ohne ACLs.

                      Kann man die Entwickler von IOBroker dazu direkt Mal fragen? Wenn ja, wie?

                      Naja sagen wir mal so ... Meinereiner und @AlCalzone sind zwei der Core-Devs die sich u.a. "nach bestem Wissen und gewissen" für Installer und Fixer verantwortlich zeigen und damit hast Du oben alle Infos.

                      Wenn es gerade drin ist, auch wenn ich als "Nicht 100%iger Linux Profi" ggf. nicht die exakten Gründe erklären kann, bin ich mir sicher das es nötig war aufgrund der oben genannten Hintergründe. Da wir aber alle keine Linux Profis sind lassen wir uns sehr gern das Gegenteil beweisen.
                      Der Code ist offen im GitHub und damit ist sehr transparent was wie getan wird.

                      Aber der relevante Code-Teil und die Ausgaben im Fehlerfall dazu beschreiben an sich recht gut wozu es nötig ist/war aus dem aktuellen Kenntnisstand: Primär https://github.com/ioBroker/ioBroker/blob/master/installer_library.sh#L776-L785

                      Nötig war der ganze Spass auch (wenn ich meinen dunklen Erinnerungen traue) weil npm bestimmte Dinge auf bestimmte Art und weise tut und das teilweise mega meehhh ist ... und user gern so arbeiten wie Sie es gewohnt sind.

                      Wenn uns einer mit "Ahnung von Linux" (der sicherstellt das es dann auch mit FreeBSD, macos und unter den anderen Linux Derivaten wie Debian, Rasbian, Ubuntu und so läuft) eines besseren belehrt ist das als PR sehr willkommen. So lange gilt in meinen Augen: "zehntausendfach bewährt" ... und ich persönlich sehe aktuell keinen Bedarf aus meiner Sicht diese Baustelle der "experimentellen natur" (nodejs 12,14,16,18, npm 5.7+, 6 , 7, 8 ) auf zu machen - hoffe das ist nachvollziehbar 🙂

                      Verbesserungen sind aber natürlich immer gern gesehen, dafür sind wir ein Community-getriebenes Open-Source Projekt.

                      Ingo

                      framp 1 Reply Last reply Reply Quote 1
                      • framp
                        framp @apollon77 last edited by framp

                        @apollon77 said in Warum nutzt IOBroker ACLs?:

                        Naja sagen wir mal so ... Meinereiner und @AlCalzone sind zwei der Core-Devs die sich u.a. "nach bestem Wissen und gewissen" für Installer und Fixer verantwortlich zeigen und damit hast Du oben alle Infos.

                        Alles klar. Vielen Dank fuer die Info. Ich bin wie gesagt ein absoluter Noob bzgl IOBroker. Da ich wie gesagt immer wieder von IOBroker Nutzern git Issues bzw Kommentare auf meiner Webseite zu dem Thema erhalte wollte ich einfach mal verstehen warum ACLs genutzt werden.

                        @apollon77 said in Warum nutzt IOBroker ACLs?:

                        Aber der relevante Code-Teil und die Ausgaben im Fehlerfall dazu beschreiben an sich recht gut wozu es nötig ist/war aus dem aktuellen Kenntnisstand: Primär https://github.com/ioBroker/ioBroker/blob/master/installer_library.sh#L776-L785

                        Leider steht da nicht exakt warum setfacl notwendig ist 😞

                        @apollon77 said in Warum nutzt IOBroker ACLs?:

                        Nötig war der ganze Spass auch (wenn ich meinen dunklen Erinnerungen traue) weil npm bestimmte Dinge auf bestimmte Art und weise tut und das teilweise mega meehhh ist ... und user gern so arbeiten wie Sie es gewohnt sind.

                        @apollon77 said in Warum nutzt IOBroker ACLs?:

                        und ich persönlich sehe aktuell keinen Bedarf aus meiner Sicht diese Baustelle der "experimentellen natur" (nodejs 12,14,16,18, npm 5.7+, 6 , 7, 8 ) auf zu machen

                        Ich will hier die Entscheidung ACLs zu nutzen nicht in Frage stellen. Ich dachte nur es gibt eine fuer mich "einfache" Antwort als nicht ACL Kenner 😀

                        @apollon77 said in Warum nutzt IOBroker ACLs?:

                        Verbesserungen sind aber natürlich immer gern gesehen, dafür sind wir ein Community-getriebenes Open-Source Projekt.

                        Ich bin gerne dabei bei OSS Projekten Beitraege zu leisten - aber das macht nur Sinn wenn ich ein IOBroker Nutzer waere.

                        @dutchman said in Warum nutzt IOBroker ACLs?:

                        aber Allgemein den Usern immer darauf hinweisen das nach einem restore „iob fix“ ausgeführt werden sollte um eventuelle fehlende ACL‘s zu setzen und einfach auch in die ioBroker Installation zu verifizieren

                        Das werde ich machen und auch noch auf diesen Thread verlinken.

                        Vielen Dank fuer Eure Tipps und Hinweise. Da ich IO Broker Nutzer auf diesen Thread von meiner Webseite hinweisen werde kann es sein dass diese zukuenftig noch weitere Kommentare erstellen. Allerdings denke ich dass der Hinweis von @Dutchman ausreichend sein sollte 😀

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

                          @framp

                          Leider steht da nicht exakt warum setfacl notwendig ist 😞

                          As said meine Erinnerung sagt:

                          Iobroker wird als User iobroker ausgeführt. Daher muss so wie npm gestrickt ist und funktioniert alles sauber dem iob User gehören.

                          Wenn man jetzt aber npm Befehle als zb pi User ausführt entsteht ein bunter User owner mix. Scheinbar ist npm dann aber leider egal irgendwie wie Gruppen und so gestrickt sind die sowas abfangen sollten und dann knallt es bei npm Installationen von Adaptern mit wilden permission issues. Das mit acl war der einzige Weg den wir gefunden haben mit dem das klappt.

                          Npm ist bei bestimmten Dingen eine bitch und kochen da ihr süppchen 😞

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

                            Ps: acl sind drin seit dem großen rewrite am 20.1.2019

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

                              @apollon77 sagte in Warum nutzt IOBroker ACLs?:

                              Wenn man jetzt aber npm Befehle als zb pi User ausführt entsteht ein bunter User owner mix.

                              Noch schlimmer: mit sudo oder als root 😉

                              Die ACLs waren der einzige (uns bekannte) Weg sicher zu stellen, dass egal was unbedarfte User da auf der Kommandozeile anstellen oder wie alt die Videotutorials 🙄 sind, denen sie folgen, dass ioBroker trotzdem normal funktionieren kann.

                              mcm1957 framp 2 Replies Last reply Reply Quote 4
                              • mcm1957
                                mcm1957 @AlCalzone last edited by

                                Hi

                                Da ich beide Seiten ein wenig kenne will ich mich hier trotz Urlaub und damit Einschränkung auf Handyzugriff zu Wort melden.

                                RaspiBackup ist ein tolles Projekt mit dem man den gesammten pi einfach backuppen kann. (Und auch wieder restaurieren). Iob backup sehe ich als paralelles tool weil iob backup mir bei einem crash (soweit ich weiss) nicht das gesammte rspian incl. Setup des raspi restaurieren kann. Natürlich ist rein für die iob daten iob backup erste wahl. Aber ich hab am pi noch andere dinge laufen die mir rasoiBackup mitsichert. Dank rsync erfolgt das sehr platzsparend am remote nas.

                                Leider versteht synology keine acls. Das ist v synology so confirmed.

                                Ich lösche mittlerweile alle acls vorab raus. Bisher hab ich damit keine probleme feststellen können. Die option beim rsync kannte ich bis jetzt nicht, werd mir das in bezug auf raspiBackup ansehen.

                                Was die acls bei iob sollen wollte ich auch schon fragen. Der Grund wurde hier ja nun erläutert. Im prinzip sollte es auch ohne acls gehen. S bit und group rechte bieten da auch möglichkeiten. Aber ich versteh dass es 1000 Möglichkeiten gibt dann die fileprotections abzuschiessen.

                                Ich würde hier eher bei raspi Backup ansetzen. Wenn rsync mit -A ausreicht acls zu ignorieren dann könnte man das dort als standard setzen. Das mann bei einem full restore noch dinge nacharbeiten muss sollte jedem klar sein. Ev kann man höchstens überlegen den iob fixer automatisch bei problemen zu starten - also beim start von iob mal nen scan mit find auf falsche owner bzw protections machen und wenn was gefunden wird den fixer laufen lassen. Aber das ist wieder systemabhängig und unter windows andrrs als unter linux. Ergo kann ich nicht sagen ob das denkbar ist.

                                McM

                                framp 1 Reply Last reply Reply Quote 1
                                • framp
                                  framp @mcm1957 last edited by

                                  @mcm57 said in Warum nutzt IOBroker ACLs?:

                                  Ich würde hier eher bei raspi Backup ansetzen. Wenn rsync mit -A ausreicht acls zu ignorieren dann könnte man das dort als standard setzen.

                                  Ich habe auch laenger damit gehadert ob nun die rsync Optione -A Standard ist oder nicht. Letztendlich habe ich es doch mit aufgenommen denn raspiBackup soll ein Backup welches eine identische Kopie des aktuellen System ist erstellen und dazu gehoeren auch ACLs. Solange eine lokale Backuppartition oder auch eine nfs3 gemountete Backuppartition (leider nicht bei Synology/QNAP) genutzt wird werden auch ACLs gesichert.

                                  ich denke ich werde eine weitere Webseite bei mir erstellen wo Tipps wie man mit bestimmten Anwendungen mit raspiBackup umgehen soll beschrieben sind. IOBroker ist nicht das einzige Tool was ACLs nutzt und bei Synology und QNAP Probleme macht.

                                  Ich habe wie gesagt keine Ahnung von IOBroker. Was ich jetzt mittlerweile gelernt habe ist dass es wohl Sinn macht die -A Option zu entfernen dass keine ACLs gesichert werden und nach dem Restore noch ein Postprocessingstep durchgefuehrt werden sollte um die ACLs wieder zu setzen. Was sollte ich da genau schreiben? Waere nett wenn ich einen Vorschlag dazu von Euch IOBroker Kennern bekommen wuerde was ich bei mir zum IOBroker dokumentieren sollte.

                                  Da in der neuesten Release 0.6.7 auch Restoreplugins unterstuetzt sind koennte man auch ein Restoreplugin fuer IOBroker schreiben welches den o.g. Postprocessingstep automatisch ausfuehrt ☺

                                  apollon77 1 Reply Last reply Reply Quote 0
                                  • framp
                                    framp @AlCalzone last edited by

                                    @alcalzone said in Warum nutzt IOBroker ACLs?:

                                    Die ACLs waren der einzige (uns bekannte) Weg sicher zu stellen, dass egal was unbedarfte User da auf der Kommandozeile anstellen oder wie alt die Videotutorials sind, denen sie folgen, dass ioBroker trotzdem normal funktionieren kann.

                                    Ich kann mit Euch fuehlen. Wenn man auf andere Tools und deren Befindlichkeiten Ruecksicht nehmen muss ist man froh wenn man das geschafft hat. Darum will ich auch in keiner Weise an den ACLs ruetteln. Ich dachte nur ich koennte von Euch etwas ueber ACLs lernen ☺

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

                                      @framp

                                      Kennst du den Artikel von stka? 😄

                                      https://www.informatik-aktuell.de/betrieb/betriebssysteme/rechte-im-dateisystem-mehr-als-nur-rwx.html

                                      framp 1 Reply Last reply Reply Quote 2
                                      • framp
                                        framp @Thomas Braun last edited by

                                        @thomas-braun said in Warum nutzt IOBroker ACLs?:

                                        Kennst du den Artikel von stka?

                                        Stefan kenne ich - aber nicht diesen Artikel. Sehr interessant ist dass man ACLs in einer Datei sichern und wieder restoren kann wenn das Dateisystem keine ACLs unterstuetzt. Das waere z.B. ein Workaround den ich in raspiBackup einbauen koennte. Beim Backup wird eine ACL Sicherungsdatei im Backup erstellt und beim Restore wieder restored. Ich werde mir das mal genauer ansehen.

                                        1 Reply Last reply Reply Quote 2
                                        • apollon77
                                          apollon77 @framp last edited by

                                          @framp Also effektv sollte der ioBroker fixer (ausgeführt mittels "iob fix") das richteh und der muss nach restore und vor restart ausgeführt werden. Wäre auch das was das Plugin machen müsste.

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

                                            @apollon77 Ok. Dann werde ich das so dokumentieren. Wenn ich dann rausgefunden habe wie man ACLs allgemein mit raspiBackup sichern kann auch wenn das Zielbackupsystem das nicht unterstuetzt und in einem der naechsten Releases implementiert habe nehme ich das wieder raus.

                                            Je nachdem wie lange das dauert und wieviel Zeit ich habe schreibe ich vielleicht bis dahin auch noch ein Restoreplugin. Das ist nur eine Zeile Code. Ist iob bei IOBroker im Path verfuegbar oder muss man das als bestimmter User oder sonstwie speziell aufrufen?

                                            Thomas Braun apollon77 2 Replies Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

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

                                            734
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            26
                                            1847
                                            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