Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Anpassen /etc/sudoers.d/iobroker in Docker

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Anpassen /etc/sudoers.d/iobroker in Docker

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

      Liebe Community,

      ich habe meinen Iobroker per Docker Compose containerisiert, was auch echt super läuft. Bei der Erstellung des Containers, habe ich über die Variable "PACKAGES" etherwake (für WOL) als zusätzliches Tool installiert. Daraufhin habe ich dem JavaScript Adapter "enable command exec" aktiviert.
      In meinem Script rufe ich unter anderem folgendes auf:

      exec('sudo etherwake -i eth0 XX:XX:XX:XX:XX:XX');
      

      Wenn ich mich per

      docker exec -ti iobroker /bin/bash
      

      auf den Container aufwähle kann ich den etherwake Befehl absetzen und er startet per Wake on Lan den angegebenen PC.
      Innerhalb des Scriptes reagiert er aber nicht darauf, weshalb ich davon ausgehe, dass hier ein Berechtigungsproblem vorliegt, da Iobroker ja nicht als root läuft.
      Um hier Abhilfe zu schaffen gibt es ja die Datei

      /etc/sudoers.d/iobroker
      

      welche man anpassen kann, um die Rechte wie folgt zu erweitern:

      iobroker ALL=(ALL) NOPASSWD: /usr/sbin/etherwake
      

      Sobald ich dies eintrage, funktioniert es auch per Iobroker JavaScript.
      Nun zu dem eigentlichen Problem:
      Da es sich hier um einen Container handelt, ist die "/etc/sudoers.d/iobroker" ja flüchtig und liegt nicht auf dem Container Volume.
      Hier muss ich es also irgendwie schaffen die Docker Compose Yaml so anzupassen, dass er beim Starten die "/etc/sudoers.d/iobroker" erweitert, nachdem das Installationsscript diese erstellt hat.

      Habt ihr hier vielleicht Ideen?

      Vielen Dank vorab!

      Gruß
      Modjo

      1 Reply Last reply Reply Quote 0
      • S
        simplyclever last edited by

        Bin nicht sicher, ob das in Deinem gewünschten Anwendungsfall hilft, aber Du könntest mal den Linux Control Adapter ausprobieren.
        Mittels dieses Adapters kann man Linux Commands an den Host schicken. In den Settings kann man auch "sudo" aktivieren.

        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

        866
        Online

        31.6k
        Users

        79.4k
        Topics

        1.3m
        Posts

        2
        2
        203
        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