[solved] Programm mit sudo|gksu als anderer User ausführen, ohne Passwort
Hallo Wolf,
Wolf Wiegand <wolf@kondancemilch.de> wrote:
>Frank Dietrich wrote:
>> ich möchte gern ein Programm mittels sudo|gksu, ohne
>> Passwortabfrage, als User user2 ausführen.
>> Wie bekomme ich die Passwortabfrage weg?
>Ich habe das nach einigem Herumprobieren jetzt so hinbekommen, das
>dürfte aber wohl noch eleganter gehen. Trick ist, das Ganze in zwei
>Skripte aufzuteilen:
Temporäre Dateien vermeide ich gern, soweit möglich. Nach einigem
überlegen habe ich eine Lösung gefunden, die mit nur einem Skript und
ohne temporäre Datei auskommt.
# /etc/sudoers
frank notbock = (user2) NOPASSWD: /opt/firefox2/start_fx2.ksh
$ ls -l /opt/firefox2/start_fx2.ksh
-rwxr-x--- 1 frank user2 534 2007-10-09 00:12 /opt/firefox2/start_fx2.ksh
# Datei /opt/firefox2/start_fx2.ksh
---- begin ------------------------------------
#!/bin/ksh
USR=`/usr/bin/whoami`
SCRIPT="`/bin/pwd`/`/usr/bin/basename $0`"
case $USR in
frank)
XAUTH=`/usr/bin/X11/xauth nlist $DISPLAY`
/usr/bin/sudo -H -u user2 $SCRIPT "$XAUTH"
;;
user2)
XAUTHORITY=/home/user2/.Xauthority
export XAUTHORITY
echo "$1" | /usr/bin/X11/xauth nmerge -
/opt/firefox2/firefox
;;
*)
echo "sorry, wrong user"
;;
esac
---- end --------------------------------------
Gruß
Frank
--
Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs, and the Universe trying
to produce bigger and better idiots. So far, the Universe is winning.
Reply to: