Page 1 of 1

Shell Script beim einloggen

Posted: 2004-12-25 00:57
by thomas.km
Guten Tag

ich möchte es hinbekommen das sich ein user auf der Shell einloggen kann, dabei ein befehl ausgeführt wird und der user gleich wieder ausgeloggt wird

user test
passwd:
test:x:674:100::/home/test/test2:/bin/test_cp

das test_cp hat:
#!/bin/bash
exec cp /home/test/test2 /home/test/test2/test3/test.log
exit




Einloggen geht, ausloggen geht, message loggt sagt nichts weiter, aber das file wird nicht kopiert.

hatte auch schon exec $exec cp /home/test/test2 /home/test/test2/test3/test.log

Ich hab da leider keine Ahnung von und habe es nur so gemacht weil mir das halbwegs logisch erschien, aber anscheinend doch nicht :-(

Kann mir jemand helfen?

Re: Shell Script beim einloggen

Posted: 2004-12-25 01:47
by cybermage
vielleicht mal absoluten pfad zum cp angeben.
ansonsten einfach mal den output vom copy in ne datei umleiten und kucken ob gemeckert wird.

Re: Shell Script beim einloggen

Posted: 2004-12-25 02:04
by t0x1c
thomas.km wrote:Guten Tag
Weihnachtliche Grüsse! ;-)
ich möchte es hinbekommen das sich ein user auf der Shell einloggen kann, dabei ein befehl ausgeführt wird und der user gleich wieder ausgeloggt wird

user test
passwd:
test:x:674:100::/home/test/test2:/bin/test_cp

das test_cp hat:
#!/bin/bash
exec cp /home/test/test2 /home/test/test2/test3/test.log
exit
Hallo,
würde sich dazu nicht die ~/.bashrc eignen?
Also einfach

cp /home/test/test2 /home/test/test2/tes...
exit

in die ~/.bashrc schreiben, anschließend die Rechte so setzen, das nur root da was reinschreiben darf..

Mfg.
t0x1c

Re: Shell Script beim einloggen

Posted: 2004-12-25 02:11
by thomas.km
Cybermage wrote:vielleicht mal absoluten pfad zum cp angeben.
ich danke dir, das klappt nun....

ok, das war als Ã?bung gedacht ;-)

Nun wollte ich einen Prozess starten:

test_start
#!/bin/bash
exec ./test&
exit


test ist einfach nur ein prozess den ich als root auf der Konsole ganz normal mit ./test& oder ./test & starten kann.

Aber auch hier wieder, einloggen ausloggen, aber nicht starten.

test liegt im homeverzeichnis und der owner ist test_start so wie in der passwd angegeben ist das test_start das shell script test_start beim einloggen ausführt ;-)

Aber ich denke da ist meine Syntax falsch im Script zum starten von Prozessen?

Re: Shell Script beim einloggen

Posted: 2004-12-25 21:31
by flo
Leg doch dieses Script als Login-Shell für den User fest, dann gibt es da eigentlich kein Entkommen ...

flo.

Re: Shell Script beim einloggen

Posted: 2004-12-25 22:40
by thomas.km
flo wrote:Leg doch dieses Script als Login-Shell für den User fest, dann gibt es da eigentlich kein Entkommen ...

flo.
ja klar, das habe ich ja...


passwd:
test:x:674:100::/home/test/test2:/bin/test_cp


den prozess den ich starten will, ist ein virtueller Game Server (kennt keiner)

Leider ist das kein Daemon....sobald sich die Konsole schließt rauch der Prozess wieder ab......

Muss ich mir wohl was anderes einfallen lassen :-(

Re: Shell Script beim einloggen

Posted: 2004-12-25 23:47
by kuntho
klar, wenn du den user wieder ausloggst, raucht dir der prozess wieder ab. musst du folgendermassen starten:

Code: Select all

nohup prozess &
dann kannst du den user auch wieder ausloggen und der prozess bleibt bestehen.

Re: Shell Script beim einloggen

Posted: 2004-12-25 23:59
by thomas.km
danke, funzt wunderbar.....
vielen dank.