Skript mit exec aber als sudo ausführen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
pinguino
Beiträge: 147
Registriert: 23.01.2007 23:11:46

Skript mit exec aber als sudo ausführen

Beitrag von pinguino » 24.10.2010 09:25:59

Hallo,

wenn ich im Gnome unter "Sitzungen" folgendes Skript ausführe, dann funktioniert alles, wie es sein soll:

Code: Alles auswählen

#!/bin/bash

sleep 20s

ping -c2 10.150.40.241

if [ $? -ne 0 ]
then
zenity --info --title="Thunderbird" --text "Keine Verbindung              "
exit
else
exec /home/user/thunderbird/thunderbird&
sleep 5s
exec /home/user/firefox/firefox&
sleep 5s
exec /home/user/sunbird/sunbird&
fi
Möchte ich das Skript erweitern, wie z.B mit:

Code: Alles auswählen

...

sudo truecrypt -t -k /home/user/privat/diverses/keyfile_1 -p "" --protect-hidden=no /home/user/privat/diverses/container_1 /media/truecrypt1
dann funktioniert den "Truecrypt" Befehl nicht mehr. Obwohl in der /etc/sudoers einen Eintrag für Truecrypt existiert.

Wenn ich aus NUR einem Skript mehrere Programme ( Gnome "Sitzungen" ) starten möchte, dann muß ich in dem Fall mit den Befehl "exec" arbeiten. Ansonsten funktioniert das nicht.

Wie könnte ich Truecrypt im Skript ausführen, so daß user als root den Befehl ausführt und vor allem, daß das im Skript funktioniert?
Danke
Gruß

Pinguino

>>Nota bene<<

Benutzeravatar
pinguino
Beiträge: 147
Registriert: 23.01.2007 23:11:46

Re: Skript mit exec aber als sudo ausführen

Beitrag von pinguino » 24.10.2010 10:43:25

so, ich habe jetzt die Lösung gefunden; ohne exec geht auch:

Code: Alles auswählen

#!/bin/bash

sleep 20s

ping -c2 10.150.40.241

if [ $? -ne 0 ]
then
zenity --info --title="Thunderbird" --text "Keine Verbindung              "
exit
else
/home/user/thunderbird/thunderbird &
sleep 5s
/home/user/firefox/firefox &
sleep 5s
exec /home/user/sunbird/sunbird &
fi

sudo truecrypt -t -k /home/user/privat/diverses/keyfile_1 -p "" --protect-hidden=no /home/user/privat/diverses/container_1 /media/truecrypt1 &


Der "Cello" fehlte :THX:
Gruß

Pinguino

>>Nota bene<<

Antworten