staging.inyokaproject.org

Programm vom user mit root-Rechten ausführen

Status: Gelöst | Ubuntu-Version: Ubuntu 10.04 (Lucid Lynx)
Antworten |

okidokibaby

Anmeldungsdatum:
17. November 2011

Beiträge: Zähle...

Hallo Ubuntugemeinde,

ich habe ein kleines Programm (lptprog) mit Quickly geschrieben, womit ich die Parallele Schnittstelle ansteuern kann.

Das Programm muss mit Root-Rechten ausgeführt werden, weil sonst die Schnittstelle nicht angesprochen wird.

Ich möchte jedoch das Programm als user aufrufen und zwar über einen Starter am Panel. Dafür habe ich ein Script geschrieben mit einer Zeile : sudo lptprog und davon einen Starter erzeugt.

Als root kan ich auf den Starter klicken, das Programm startet.

Nun habe ich mit visudo dem user das Recht gegeben, Scripts ohne Password auszuführen: user ALL = NOPASSWD: ALL Damit kann ich als user auch mit dem Starter das Programm starten.

Ich möchte aber dass der user nur dieses eine Script ohne Passwort ausführen darf und nicht alles. Deshalb habe ich in visudo eingegeben: user ALL = NOPASSWD: /home/bin/script

Damit funktioniert es aber nicht! Das Programm startet im Gnome nicht und wenn ich es über das Terminal aufrufe, werde ich nach dem sudo Passwort gefragt.

Was mache ich falsch ?

Daake für Eure Hilfe

P.S. zum Verständnis:

user = der aktuelle User

lptprog = das von mir geschriebene Programm

script = der Script mit dem Befehl sudo lptprog

Script und Programm befinden sich im Ordner /home/bin/

Script und Programm haben als Besetzer den root

Moderiert von primus pilus:

Thema in das richtige Forum verschoben. Bitte beachte die Hinweise („Welche Themen gehören hier her und welche nicht?“) oben in jedem Forum.

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Ist es ein grafisches Programm?

okidokibaby

(Themenstarter)

Anmeldungsdatum:
17. November 2011

Beiträge: Zähle...

Ja, es ist ein grafisches Programm.

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

Eigentlich sollte man dann gksu statt sudo nehmen (siehe dort). Und dann erspart es mir den Hinweis auf "Terminal öffnen" per gnome-terminal -e "sudo befehl" oder so. Aber dein Fehler liegt nun wohl in der Konfigurationsdatei. Am besten postest du sie mal.

okidokibaby

(Themenstarter)

Anmeldungsdatum:
17. November 2011

Beiträge: 12

Welche Konfigurationsdatei ?

Benno-007

Anmeldungsdatum:
28. August 2007

Beiträge: 29240

okidokibaby

(Themenstarter)

Anmeldungsdatum:
17. November 2011

Beiträge: 12

hier meine Konfiguration:

  GNU nano 2.2.2           Datei: /etc/sudoers.tmp                   Verändert  

+# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#

Defaults        env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL) ALL

# Allow members of group sudo to execute any command after they have
# provided their password
# (Note that later entries override this, so you might need to move
# it further down)
%sudo ALL=(ALL) ALL
#
#includedir /etc/sudoers.d

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
 user ALL = NOPASSWD: ALL
#user ALL = NOPASSWD: /home/bin/script auskommentiert wegen ausprobieren

Übrigens: Mit gksu oder gksudo startet das Programm nicht !

okidokibaby

(Themenstarter)

Anmeldungsdatum:
17. November 2011

Beiträge: 12

Habe schlesslich doch die Lösung gefunden: Der Starter muss ebenfalls mit sudo beginnen !

Das wars

Danke

Antworten |