extcommands.xml und Rechte - bearbeiten und vergabe

edited March 24 in Repetier-Server
Hallo
Ich bin gerade dabei meinen Drucker etwas zu upgraden. Neues Board - Neuer Pi - Neues Image
Und wieder mal komme ich an dieser Stelle nicht weiter.
Die extcommands.xml und Ihre Rechte.

Mega nervig und schon einmal das Image zerschossen. Prima

Ich würde gerne mal um eine genau Erörterung / Aufklärung / Anleitung zu diesem Thema bitten.
Da auch immer wieder viele Leute damit Probleme haben.

Es soll auch diesmal Allgemein um das Thema gehen. Nicht Speziell um mein Problem.
-------
Ich möchte in der Weboberfläche gerne einen Button hinzufügen und diesen dann auch funktionsfähig bekommen.
Es soll ein Script ausgeführt werden. 
Per Shell funktioniert das Script schon. Aber halt nicht über den neuen Button.

Vermutlich fehlen die Rechte.
Wie geht man in diesem Fall genau vor?
Auch um es mal richtig zu verstehen.

Feedback wäre nett.

Edit:
Als Beispiel. Ich erstelle mir eine Scriptdatei. z.B. "test.sh" Diese soll per Weboberfläche (Neuer Button) irgendetwas ausführen.
Den Button kann man ja relativ simpel mittels <name>Test Button</name> erstellen. Dieser soll jetzt die Scriptdatei "test.sh" ausführen. Die Scriptdatei wurde per Terminal erstellt oder SSH hochgeladen. Diese gehört jetzt erst einmal dem Benutzer "pi"
Die Weboberfläche gehört aber dem Benutzer "repetierserver"... Deswegen kann das Script nicht ausgeführt werden.
Ist das so richtig erklärt oder habe ich jetzt quatsch geschrieben? und an dieser Stelle kommen die meisten nicht weiter oder vielleicht auch nur ich nicht.

PS.: Auf jeden Fall muss ich auch mal ein Lob dalassen. Das Repetier Server Pi Image ist schon echt Mega Plug&Play geworden.
Gruß

Comments

  • Ja scripte werden als user repetierserver ausgeführt. Als test ab es klappen kann in der Oberfläche
    sudo -i
    sudo -u repetierserver Befehl

    ausführen, dann sieht man wo das Problem ist. Am besten das Skript im vorgesehen Ordner /var/lib/Repetier-Server/scripts speichern und ausführbar machen (chmod a+rx Dateiname). Wenn es also root ausgefuuhrt werden muss, auch noch das Script in die sudoer Liste eintragen wie im Handbuch beschrieben.
  • Ich check das einfach nicht mit den Berechtigungen.
    Ich habe jetzt die Datei "test.sh" in den Ordner /var/lib/Repetier-Server/scripts verschoben und dieser Datei vollen Zugriff gegeben per chmod.
    Dann Versuch per sudo -u repetierserver /var/lib/Repetier-Server/scripts/test.sh --> Passwortabfrage :s

    Also jetzt Thema sudoer Liste ... 
    Alles versucht. Nichts Sinnvolles bei herausgekommen. Dort klemmt es vermutlich.

  • z.b. im Verzeichnis /etc/sudoers.d in der Datei folgenden Eintrag hinzufügen
    repetierserver ALL=NOPASSWD: /var/lib/Repetier-Server/scripts/test.sh

    Ich nehme an test.sh hat rechte a und x gesetzt (chmod 755 Dateiname) und erste Zeile ist
    #!/bin/bash

    Dann sollte es klappen. Wichtig: In der Datei dann kein sudo verwenden sonst kommt die passwortabfrage evtl. von da, aber sie wird ja schon als root ausgeführt.
Sign In or Register to comment.