Heidiho,
ich möchte, dass mein Passwortänderungs-CGI ein su $user ausführt und
sozusagen das $passwd eingibt, dass es auch vom Webinerface kriegt. Ich
versuche dazu folgendes auszuführen:
Python:
>>> os.system('echo '+passwd+'| su '+user+' -c "was_langes"')
bzw. kurz in Bash:
$ echo $passwd|su $user -c "was langes"
Aber zu "was_langes" (auch so ein Konstrukt mit passwd drin) kommt das
ganze gar nicht erst. Es gibt folgende Meldung:
su: must be run from a terminal
Bei smbpasswd gibts die Option -s, durch die das Programm aufs Terminal
verzichtet und von stdin liest. Bei su (und wohl auch passwd)
dummerweise nicht. Per ssh/telnet localhost tritt das Problem genau so
auf. Weiß jemand Rat?
Für alle Ideen dankbar,
Fabian