Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [offen] root Rechte für exec()

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[offen] root Rechte für exec()

Scheduled Pinned Locked Moved Skripten / Logik
javascript
55 Posts 10 Posters 11.4k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ? Offline
    ? Offline
    A Former User
    wrote on last edited by
    #26

    Hallo Ruhr70,

    du verwendest EXEC damit führst Du ja Befehle auf der OS Ebene aus…..

    Deswegen kannst Du Expect innerhalb der IOB Skript Umgebung verwenden.

    Achtung Expect muss unter Umständen nachinstalliert werden (z.B Debian).

    Der Hintergrund ist einfach... mittels Expect rufst Du OS Befehle auf welche z.B ein Password brauchen, expect kapselt diese Programme und erlaubt dann

    z.B das Passwort via Skript zu senden, was im Umfeld einer Bash nicht funktionieren würde.

    Noch mehr verwirrt?

    Equilora

    1 Reply Last reply
    0
    • ruhr70R Offline
      ruhr70R Offline
      ruhr70
      wrote on last edited by
      #27

      @equilora:

      Noch mehr verwirrt?

      Equilora `

      Nein. Das habe ich verstanden :-)

      Danke für die Erläuterung!

      Wie verwendest Du denn Deine Zeile im Skript?

      Mit den Anführungszeichen und Hochkommas passt das nicht so im Skript. Deine Kommando öffnet dann eine Root Shell. Wie kommt dann das gewünschte Kommando von mir zum Zuge!

      Danke noch einmal für die Erklärung!

      Gesendet von iPad mit Tapatalk

      Adapter: Fritzbox, Unify Circuit
      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

      1 Reply Last reply
      0
      • ? Offline
        ? Offline
        A Former User
        wrote on last edited by
        #28

        Hallo Ruhr70,

        entschuldige die holperige Konversation wir hatten einen heftigen Sturm hier und ich musste erstmal die Pferde ruhig bekommen und hier hat es grad ein Baum die Stromleitung geknickt….

        Mein Beispiel ist ein wenig holperig weil basierend auf Perl...

        my $suCaller = 'expect -c "set timeout 20; spawn -noecho su - ' . $tarUser . '; expect "Password:"; send "' . $tarPassword . '\r"; interact;"';

        Mittels exec rufst Du expect -c "set timeout ....

        ist warten das expect geladen wurde

        -nonecho ist eine Option welche Rückmeldungen unterdrückt,

        die $dingsda sind Parameter welche als Variablen vorliegen, welche ich dann einfach abrufe....

        Im Grunde muss das ganze nur in Java Script Notation verpackt werden.....

        Ich such mir mal ein paar Fälle wo root zwingend notwendig ist ohne gleich das gesamte System herunterfahren zu müssen, bin wie die Anderen

        auch noch beruflich tätig... please stay tuned.

        Equilora

        1 Reply Last reply
        0
        • ruhr70R Offline
          ruhr70R Offline
          ruhr70
          wrote on last edited by
          #29

          Oh je, der Sturm hat Dich ja ganz schön erwischt.

          Ich danke Dir jedenfalls für die ausführlichen Erklärungen und Deine Geduld!

          Adapter: Fritzbox, Unify Circuit
          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

          1 Reply Last reply
          0
          • ? Offline
            ? Offline
            A Former User
            wrote on last edited by
            #30

            Hi Ruhr70,

            man(n) baut für Katastrophen vor… :)

            @ruhr70:

            Oh je, der Sturm hat Dich ja ganz schön erwischt.

            Ich danke Dir jedenfalls für die ausführlichen Erklärungen und Deine Geduld! `

            Ich kann das erstmal nur als Prototyp bauen. Das Password für Root muss ich aus diesem Grund erstmal deklarieren als Variable und fest einbinden, da wohl kaum jemand hier seine Passwörter rotiert, jede paar Stunden diese ändert, und über einen Web Service abruft und nach Gebrauch, Rückgabe, Erledigung einer Aufgabe wieder rotiert. :)…... Bluefox killt mich ohnehin da ich Exec verwende :)

            Wo am Ende das Password hinterlegt wird, das darfst Du selbst festlegen.....

            In Linux sind einige Aufgaben nur mit Root Rechten ausführbar... z.b Port 80 einstellen.... alle Ports unter 1024 geht nur mit Root, auf eine Hardwareschnitte zugreifen zur Laufzeit geht auch nur mit Root Rechten usw usw....

            Expect ist StdIn and StdOut - Shit in and Shit Out.. bei Dir also Ubuntu.... hab mit grad ein Image gebaut...

            Equilora

            1 Reply Last reply
            0
            • ruhr70R Offline
              ruhr70R Offline
              ruhr70
              wrote on last edited by
              #31

              @equilora:

              In Linux sind einige Aufgaben nur mit Root Rechten ausführbar… z.b Port 80 einstellen.... alle Ports unter 1024 geht nur mit Root, auf eine Hardwareschnitte zugreifen zur Laufzeit geht auch nur mit Root Rechten usw usw....

              Expect ist StdIn and StdOut - Shit in and Shit Out.. bei Dir also Ubuntu.... hab mit grad ein Image gebaut...

              Equilora `

              Machst Du das eigentlich beruflich oder warum bist Du da so tief drin?

              Adapter: Fritzbox, Unify Circuit
              Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

              1 Reply Last reply
              0
              • lost in translationL Offline
                lost in translationL Offline
                lost in translation
                wrote on last edited by
                #32

                Ist das mittlerweile gelöst?
                Ich würde ebenfalls in einem exec gerne sudo machen auf einen anderen user, damit scp funktioniert.

                ciao
                frank

                AlCalzoneA 1 Reply Last reply
                0
                • lost in translationL lost in translation

                  Ist das mittlerweile gelöst?
                  Ich würde ebenfalls in einem exec gerne sudo machen auf einen anderen user, damit scp funktioniert.

                  ciao
                  frank

                  AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  wrote on last edited by
                  #33

                  @lost-in-translation Wenn du eine halbwegs aktuelle Installation hast, musst du dem User iobroker erlauben, sich als der andere User anzumelden.

                  Dazu legst du am besten in /etc/sudoers.d eine Datei ab, z.B. iobroker-scp oder so. Darin definierst du, dass iobroker ein bestimmtes Kommando als ein anderer User ausführen darf. Ich nenne diesen User hier mal frank:

                  iobroker  ALL=(frank) NOPASSWD: /pfad/zu/scp
                  

                  Den vollständigen Pfad zur scp binary findest du per which scp.

                  Zum Erstellen der Datei am besten visudo verwenden, weil da gleich eine Prüfung auf Syntaxfehler ausgeführt wird, die im schlimmsten Fall zu nicht-Funktionieren von sudo führen. Mehr Details hier:
                  https://kofler.info/sudo-ohne-passwort/

                  Ich empfehle, sonst nichts zu ändern. Die Berechtigungen sind extra so gewählt, dass das System möglichst sicher im Umgang mit root-Rechten ist.

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  1 Reply Last reply
                  1
                  • A Offline
                    A Offline
                    aleks-83
                    wrote on last edited by
                    #34

                    Hallo,

                    ich habe auch (wieder) ein Problem mit den Rechten meiner Installation.
                    Es lief ca. 6 Monate, und jetzt seit 2 Monaten läuft es nicht mehr.
                    Ob es mit einem Update zusammenhängt oder andere Ursachen hat kann ich jetzt nicht mehr sagen.
                    Mir ist es erst jetzt aufgefallen.

                    Wenn jemand bei mir klingelt kopiere ich Snapshots der Kamera auf ein NAS.
                    mit dem Befehl

                    cp -r /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/Set1/ /mnt/DS112/FOTO/Besucherfotos/2019/2019.08.06_14.19.11/
                    

                    Dieser wird wohl auch immer noch abgesetzt, aber nicht mehr korrekt umgesetzt. Denn die Fotos liegen zwar im iobroker, aber nicht auf dem NAS. (Die letzten wurden eben vor 2 Monaten raus kopiert)
                    Wenn ich den Befehl im putty eingebe (angemeldet als root), funktioniert es.
                    In der sudoers.d habe ich folgende Anpassung gemacht:

                    iobroker        ALL=(ALL) NOPASSWD: /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/
                    

                    Das scheint aber nicht auszureichen. Es funktioniert trotzdem nicht.

                    Was kann ich noch tun?

                    = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                    = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                    Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                    Glasfaser 400

                    AlCalzoneA 1 Reply Last reply
                    0
                    • SBorgS Offline
                      SBorgS Offline
                      SBorg
                      Forum Testing Most Active
                      wrote on last edited by
                      #35

                      Hat denn der User "iobroker" überhaupt Schreibrechte auf deinem NAS?

                      LG SBorg ( SBorg auf GitHub)
                      Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                      1 Reply Last reply
                      0
                      • A aleks-83

                        Hallo,

                        ich habe auch (wieder) ein Problem mit den Rechten meiner Installation.
                        Es lief ca. 6 Monate, und jetzt seit 2 Monaten läuft es nicht mehr.
                        Ob es mit einem Update zusammenhängt oder andere Ursachen hat kann ich jetzt nicht mehr sagen.
                        Mir ist es erst jetzt aufgefallen.

                        Wenn jemand bei mir klingelt kopiere ich Snapshots der Kamera auf ein NAS.
                        mit dem Befehl

                        cp -r /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/Set1/ /mnt/DS112/FOTO/Besucherfotos/2019/2019.08.06_14.19.11/
                        

                        Dieser wird wohl auch immer noch abgesetzt, aber nicht mehr korrekt umgesetzt. Denn die Fotos liegen zwar im iobroker, aber nicht auf dem NAS. (Die letzten wurden eben vor 2 Monaten raus kopiert)
                        Wenn ich den Befehl im putty eingebe (angemeldet als root), funktioniert es.
                        In der sudoers.d habe ich folgende Anpassung gemacht:

                        iobroker        ALL=(ALL) NOPASSWD: /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/
                        

                        Das scheint aber nicht auszureichen. Es funktioniert trotzdem nicht.

                        Was kann ich noch tun?

                        AlCalzoneA Offline
                        AlCalzoneA Offline
                        AlCalzone
                        Developer
                        wrote on last edited by
                        #36

                        @aleks-83 sagte in [offen] root Rechte für exec():

                        In der sudoers.d habe ich folgende Anpassung gemacht:
                        iobroker ALL=(ALL) NOPASSWD: /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/

                        In der sudoers.d musst du Befehle angeben, nicht Ordnerpfade. Überprüfe mal, was @SBorg gefragt hat. iobroker bzw. ein User mit der gleichen UID benötigt Schreibzugriff aufs NAS.

                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                        1 Reply Last reply
                        0
                        • A Offline
                          A Offline
                          aleks-83
                          wrote on last edited by aleks-83
                          #37

                          Der user "iobroker" ist im WebInterface der Synology mit Schreibrechten in dem Verzeichnis angelegt.
                          ist dieser user dann nur für das WebInterface oder ist ein kompletter "Linux-User"?

                          in der /etc/passwd steht der user folgendermaßen drin.
                          Hat es damit überhaupt was zu tun? :upside_down_face:

                          iobroker:x:1028:100:iobroker:/var/services/homes/iobroker:/bin/sh
                          

                          Wenn ich mich als root per putty am iobroker anmelde und den cp Befehl ausführe geht es ja.
                          Über welchen user läuft das denn dann am NAS?

                          Als "iobroker" kann ich mich per putty nicht am iobroker anmelden. Das Fenster schließt immer sofort wieder wenn ich das pw eingegeben habe. Ist das normal?

                          = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                          = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                          Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                          Glasfaser 400

                          AlCalzoneA 1 Reply Last reply
                          0
                          • A aleks-83

                            Der user "iobroker" ist im WebInterface der Synology mit Schreibrechten in dem Verzeichnis angelegt.
                            ist dieser user dann nur für das WebInterface oder ist ein kompletter "Linux-User"?

                            in der /etc/passwd steht der user folgendermaßen drin.
                            Hat es damit überhaupt was zu tun? :upside_down_face:

                            iobroker:x:1028:100:iobroker:/var/services/homes/iobroker:/bin/sh
                            

                            Wenn ich mich als root per putty am iobroker anmelde und den cp Befehl ausführe geht es ja.
                            Über welchen user läuft das denn dann am NAS?

                            Als "iobroker" kann ich mich per putty nicht am iobroker anmelden. Das Fenster schließt immer sofort wieder wenn ich das pw eingegeben habe. Ist das normal?

                            AlCalzoneA Offline
                            AlCalzoneA Offline
                            AlCalzone
                            Developer
                            wrote on last edited by
                            #38

                            @aleks-83 sagte in [offen] root Rechte für exec():

                            Als "iobroker" kann ich mich per putty nicht am iobroker anmelden. Das Fenster schließt immer sofort wieder wenn ich das pw eingegeben habe. Ist das normal?

                            Der User iobroker hat keine Anmeldeshell, das ist normal. Du brauchst auf dem NAS einen User, der die gleiche UID hat wie der User iobroker mit dem ioBroker ausgeführt wird - zu ermitteln mit id -u iobroker. Dieser User benötigt Schreibrechte.
                            Skripte etc werden nämlich als User iobroker ausgeführt und haben damit nur dessen Berechtigungen.

                            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                            1 Reply Last reply
                            0
                            • A Offline
                              A Offline
                              aleks-83
                              wrote on last edited by
                              #39

                              OK, danke.

                              Die UIDs sind auf beiden Seiten gleich (1028)

                              = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                              = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                              Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                              Glasfaser 400

                              1 Reply Last reply
                              0
                              • SBorgS Offline
                                SBorgS Offline
                                SBorg
                                Forum Testing Most Active
                                wrote on last edited by
                                #40

                                Versuche doch mal was er da als Fehler ausgibt:

                                sudo -u iobroker cp -r /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/Set1/ /mnt/DS112/FOTO/Besucherfotos/2019/2019.08.06_14.19.11/
                                

                                LG SBorg ( SBorg auf GitHub)
                                Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                                1 Reply Last reply
                                0
                                • A Offline
                                  A Offline
                                  aleks-83
                                  wrote on last edited by
                                  #41
                                  root@ioBroker:~# sudo -u iobroker cp -r /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/Set1/ /mnt/DS112/FOTO/Besucherfotos/2019/
                                  cp: auf '/mnt/DS112/FOTO/Besucherfotos/2019/' konnte nicht zugegriffen werden: Keine Berechtigung
                                  

                                  Die Rechte im gemounteten Verzeichnis sehen so aus:

                                  root@ioBroker:~# ls -ldh /mnt/DS112/FOTO/Besucherfotos/
                                  drwx------ 9 nobody users 4,0K Jun 19 09:16 /mnt/DS112/FOTO/Besucherfotos/
                                  

                                  = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                                  = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                                  Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                                  Glasfaser 400

                                  SBorgS 1 Reply Last reply
                                  0
                                  • A aleks-83
                                    root@ioBroker:~# sudo -u iobroker cp -r /opt/iobroker/iobroker-data/files/vis.0/main/snapshots/Set1/ /mnt/DS112/FOTO/Besucherfotos/2019/
                                    cp: auf '/mnt/DS112/FOTO/Besucherfotos/2019/' konnte nicht zugegriffen werden: Keine Berechtigung
                                    

                                    Die Rechte im gemounteten Verzeichnis sehen so aus:

                                    root@ioBroker:~# ls -ldh /mnt/DS112/FOTO/Besucherfotos/
                                    drwx------ 9 nobody users 4,0K Jun 19 09:16 /mnt/DS112/FOTO/Besucherfotos/
                                    
                                    SBorgS Offline
                                    SBorgS Offline
                                    SBorg
                                    Forum Testing Most Active
                                    wrote on last edited by
                                    #42

                                    @aleks-83 sagte in [offen] root Rechte für exec():

                                    Keine Berechtigung

                                    Jo, ist wohl ziemlich eindeutig :)
                                    Das Verzeichnis hat auch nur "rwx", also kann nur "nobody" schreiben/lesen/ausführen. Da stimmt etwas mit den Einstellungen der Berechtigungen (User und/oder [Unter-]Verzeichnis) deines NAS nicht.

                                    LG SBorg ( SBorg auf GitHub)
                                    Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                                    1 Reply Last reply
                                    0
                                    • A Offline
                                      A Offline
                                      aleks-83
                                      wrote on last edited by aleks-83
                                      #43

                                      Offenbar...

                                      Der user iobroker auf dem NAS hat iwie keinen Zugriff mehr auf die Ordnerebene

                                      iobroker@DS112Plus:~$ ls -ldh /DS112/FOTO/Besucherfotos/
                                      ls: cannot access /DS112/FOTO/Besucherfotos/: No such file or directory
                                      iobroker@DS112Plus:~$ cd /DS112/
                                      -sh: cd: /DS112/: No such file or directory
                                      iobroker@DS112Plus:~$ dir
                                      total 20
                                      drwxr-xr-x  5 iobroker users 4096 Aug  7 08:20 .
                                      drwxrwxrwx 10 root     root  4096 Jul 29 16:06 ..
                                      drwxr-xr-x  3 iobroker users 4096 Aug  7 08:20 CloudStation
                                      drwx------  2 iobroker users 4096 May 16 00:00 .Maildir
                                      drwxr-xr-x  2 iobroker users 4096 Mar 15 13:17 www
                                      iobroker@DS112Plus:~$
                                      
                                      

                                      habe es mal per FTP getestet. Per iobroker angemeldet habe ich Zugriff bis auf die Ebene /DS112/FOTO/Besucherfotos/ tiefer rein darf ich aber nicht.

                                      = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                                      = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                                      Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                                      Glasfaser 400

                                      1 Reply Last reply
                                      0
                                      • A Offline
                                        A Offline
                                        aleks-83
                                        wrote on last edited by aleks-83
                                        #44

                                        Ich bin bisher nicht weiter gekommen.
                                        Hat noch jemand eine Idee?

                                        Per FTP als user "iobroker" komme ich bis ins Verzeichnis /DS112/FOTO/Besucherfotos/ in das 2019 komme ich dann nicht mehr. Ich bekomme ich die Meldung

                                        Permission denied.
                                        Error code: 3
                                        Error message from server: Permission denied
                                        

                                        Wenn ich per SSH versuche in die Verzeichnisse zu schauen erhalte ich schon bei Besucherfotos die Meldung:

                                        iobroker@DS112Plus:/volume1/DS112/FOTO$ cd Besucherfotos/
                                        -sh: cd: Besucherfotos/: Permission denied
                                        

                                        = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                                        = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                                        Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                                        Glasfaser 400

                                        AlCalzoneA 1 Reply Last reply
                                        0
                                        • A aleks-83

                                          Ich bin bisher nicht weiter gekommen.
                                          Hat noch jemand eine Idee?

                                          Per FTP als user "iobroker" komme ich bis ins Verzeichnis /DS112/FOTO/Besucherfotos/ in das 2019 komme ich dann nicht mehr. Ich bekomme ich die Meldung

                                          Permission denied.
                                          Error code: 3
                                          Error message from server: Permission denied
                                          

                                          Wenn ich per SSH versuche in die Verzeichnisse zu schauen erhalte ich schon bei Besucherfotos die Meldung:

                                          iobroker@DS112Plus:/volume1/DS112/FOTO$ cd Besucherfotos/
                                          -sh: cd: Besucherfotos/: Permission denied
                                          
                                          AlCalzoneA Offline
                                          AlCalzoneA Offline
                                          AlCalzone
                                          Developer
                                          wrote on last edited by
                                          #45

                                          @aleks-83 sagte in [offen] root Rechte für exec():

                                          Permission denied

                                          Was sagt ls -la in diesem Ordner?

                                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                          A 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          599

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe