ubuntuusers.de

Script mit sudo ohne Passwort-Abfrage

Status: Gelöst | Ubuntu-Version: Ubuntu 9.10 (Karmic Koala)
Antworten |

Bobbel77

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

Moin,

ich habe mir ein kleines Script geschrieben, um den USB-Stick an meinem Router auszuhängen:

umount_fritzbox.sh:

sudo umount -l //192.168.178.1/storagemedia-0-1

Ich suche jetzt nach einer Möglichkeit, dieses Script auszuführen, ohne im Terminal das Passwort eingeben zu müssen. Allerdings auch ohne sudo für den Benutzer komplett passwortfrei zu schalten.

Grüße Frank

Chrissss Team-Icon

Anmeldungsdatum:
31. August 2005

Beiträge: 37971

Wie mountest du denn diese Freigabe?

Bobbel77

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

Über das entsprechende Script:

mount_fritzbox.sh:

sudo mount -t cifs -o username=root,password=geheim //192.168.178.1/storagemedia-0-1 /media/FritzBox/

Für dieses gilt natürlich dann die gleiche Frage.

1984

Avatar von 1984

Anmeldungsdatum:
2. März 2008

Beiträge: 545

Hey hey,

"sudo" kannst du ueber die Datei /etc/sudoers konfigurieren. Wie das geht gibt's im Wiki (Hier) zu lesen. Dort kannst du ja bei einzelnen Skripten einstellen, dass kein pw noetig ist. Ist es das was du suchst? Wenn's dann noch Fragen zum genauen Bearbeiten der Datei gibt, dann melde dich nochmal bevor du dir deine /etc/sudoers zerstoerst 😉

Grueße ☺

adun Team-Icon

Avatar von adun

Anmeldungsdatum:
29. März 2005

Beiträge: 8606

Um das Mounten für alle Mitglieder der Gruppe admin ohne Passwort zu erlauben könntest du

%admin ALL = NOPASSWD: /bin/mount -t cifs -o username=root,password=geheim //192.168.178.1/storagemedia-0-1 /media/FritzBox/

in die sudoers mittels sudo visudo eintragen.

Bobbel77

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

1984 schrieb:

Hey hey,

"sudo" kannst du ueber die Datei /etc/sudoers konfigurieren. Wie das geht gibt's im Wiki (Hier) zu lesen. Dort kannst du ja bei einzelnen Skripten einstellen, dass kein pw noetig ist. Ist es das was du suchst? Wenn's dann noch Fragen zum genauen Bearbeiten der Datei gibt, dann melde dich nochmal bevor du dir deine /etc/sudoers zerstoerst 😉

Grueße ☺

Das war auch mein erster Gedanke. Also habe ich folgenden Eintrag in sudoers gemacht:

# bobbel darf fritzbox aushängen
bobbel	ALL=NOPASSWD: /home/bobbel/Scripte/umount_fritzbox.sh

Allerdings interessiert das niemanden. Ich gehe mal davon aus, daß man damit nur angibt, daß der user Scripte ohne PW-Abfrage ausführen darf, die ihm nicht gehören und nicht daß die PW-Abfrage für sudo innerhalb dieses Scriptes unterbunden wird.

Um mal anzugeben, wozu ich das überhaupt benötige: ich möchte bei WICD die Möglichkeit des Scriptings nutzen: d.h. post-connect-script zum Einhängen und pre-disconnect-script zum Aushängen.

Bobbel77

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

adun schrieb:

Um das Mounten für alle Mitglieder der Gruppe admin ohne Passwort zu erlauben könntest du

%admin ALL = NOPASSWD: /bin/mount -t cifs -o username=root,password=geheim //192.168.178.1/storagemedia-0-1 /media/FritzBox/

in die sudoers mittels sudo visudo eintragen.

Da bekomme ich leider folgende Fehlermeldung nach Aufrufen des Scriptes oder manueller Eingabe des Befehls:

>>> /etc/sudoers: syntax error near line 29 <<<
sudo: parse error in /etc/sudoers near line 29
sudo: no valid sudoers sources found, quitting

Chrissss Team-Icon

Anmeldungsdatum:
31. August 2005

Beiträge: 37971

und warum nicht einfach...

$ mount -t cifs -o username=root,password=geheim //192.168.178.1/storagemedia-0-1 /media/FritzBox/
$ umount /media/FritzBox/

... Zum mounten eines Freigabe sind doch nicht zweingend Root-Rechte nötig, oder?

Bobbel77

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

Chrissss schrieb:

... Zum mounten eines Freigabe sind doch nicht zweingend Root-Rechte nötig, oder?

dazu sagt mein Terminal:

mount: Nur „root“ kann dies tun

Chrissss Team-Icon

Anmeldungsdatum:
31. August 2005

Beiträge: 37971

Laut man (8) mount.cifs geht folgendes... Via

sudo chown $USER.$USER /media/FritzBox/
sudo chmod +s /sbin/mount.cifs

... ordnest du /media/FritzBox/ deinem Benutzer zu und setzt das setuid-Bit für /sbin/mount.cifs. Dann solltest du via...

$ mount -t cifs -o username=root,password=geheim //192.168.178.1/storagemedia-0-1 /media/FritzBox/

...das Ding ohne Root-Rechte mounten können.

Bobbel77

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

Aber umount braucht doch zwingend root-Rechte oder täusche ich mich da?

Chrissss Team-Icon

Anmeldungsdatum:
31. August 2005

Beiträge: 37971

Bobbel77 schrieb:

Aber umount braucht doch zwingend root-Rechte oder täusche ich mich da?

Ich denke nicht, nur wenn das Ding mit Root-Rechten gemountet wurde.

Bobbel77

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

Leider sagt mir mein Terminal auch nach dem Ändern der Rechte, daß nur root mount ausführen darf.

adun Team-Icon

Avatar von adun

Anmeldungsdatum:
29. März 2005

Beiträge: 8606

Bobbel77 schrieb:

Da bekomme ich leider folgende Fehlermeldung nach Aufrufen des Scriptes oder manueller Eingabe des Befehls:

Kleiner Fehler, große Wirkung. Sry.

%admin ALL = NOPASSWD: /bin/mount -t cifs -o username=root\,password=geheim //192.168.178.1/storagemedia-0-1 /media/FritzBox/

Bobbel77

(Themenstarter)

Anmeldungsdatum:
17. März 2009

Beiträge: 71

Wohnort: Berlin

Wunderbar, ich habe folgende Zeilen in die sudoers eingefügt:

%admin ALL = NOPASSWD: /bin/mount -t cifs -o username=root\,password=/7x.8a //192.168.178.1/storagemedia-0-1 /media/FritzBox/

%admin ALL = NOPASSWD: /bin/umount -l /media/FritzBox/

und ich kann jetzt die Scripte, die genau diese Befehle enthalten, ohne Passwortabfrage ausführen.

Leider weigert sich WICD aber die Scripte auszuführen, aber dazu gibt es dann morgen einen neuen Thread. 😉

Ich danke Euch.

Grüße Frank

Antworten |