Welcome, Guest. Please login or register.
Did you miss your activation email?

Author Topic: pid von ssh prozess im script abfragen  (Read 2892 times)

Offline dieres

  • User
  • Posts: 758
pid von ssh prozess im script abfragen
« on: 2011/06/26, 20:12:40 »
moin,
habe gerademit Begeisterung rdesktop zum fernsteuern meines Windowsrechners auf der Arbeit entdeckt. Da ich nur einen port für sshd im router forwarden möchte tunnele ich erst mit ssh -L 2222:IP_Windowsrechner:3389, und starte rdesktop mit localhost:2222.
Da es lästig ist immer 2 terminal zu starten und die Bandwürmer für ssh und rdesktop einzugeben möchte ich das per script und klick auf eine Desktopverknüfung erledigen. Das ganze klapptauch schon ganz ordentlich, nur das ich den ssh prozess nicht per script gekillt bekomme, weil ich nicht weiss wie ich dessen pid im script ermittle.

Code: [Select]

#!/bin/sh
ssh -p 7575 -l user -L 2222:ip-windowsrechner:3389 dyndnsname &
#wie pid ermittel?
sleep 7
rdesktop -f -u user -p password -r disk:rdisk=/home/linuxuser -r printer:Printerqueue -r sound:local localhost:2222
# kill -9 pid_von_ssh

das geile daran ist das gleich ein disk zugriff auf das locale home und auch die Benutzung des lokalen Druckers, sowie die soundumleitung möglich ist. Obendrein ist das ganze auch wirklich schnell verglichen mit vnc.
Man braucht auf der remoteseite eigentlich nur einen sshd der durch den router erreichbar ist. Wenn man dann noch den ssh Zugriff per key konfiguriert kann man tatsächlich mit einem Klick den entfernten Windowsdesktop auf den localen Bildschirm zaubern. :D
wenn das mit dem ssh killen klappt könnte man davon einen wikibeitrag zimmern.

Offline towo

  • Global Moderator
  • User
  • *****
  • Posts: 2.528
pid von ssh prozess im script abfragen
« Reply #1 on: 2011/06/26, 20:16:09 »
kill -9 `pidof ssh`

?
Ich gehe nicht zum Karneval, ich verleihe nur manchmal mein Gesicht.

Offline dieres

  • User
  • Posts: 758
pid von ssh prozess im script abfragen
« Reply #2 on: 2011/06/26, 20:44:42 »
Habe per google folgende Lösung gefunden.

Code: [Select]
#!/bin/sh
ssh -p 7575 -l user -L 2222:ip-windowsrechner:3389 -N dyndnsname &
pid=$!
sleep 7
rdesktop -f -u user -p password -r disk:rdisk=/home/linuxuser -r printer:Printerqueue -r sound:local localhost:2222
kill -9 $pid


ist `pidof ssh` eindeutig ? Was ist wenn noch irgendein abgestürzter ssh vagabundiert?

Offline DonKult

  • User
  • Posts: 278
    • http://donkult.wordpress.com
pid von ssh prozess im script abfragen
« Reply #3 on: 2011/06/26, 21:47:05 »
Quote from: "dieres"
ist `pidof ssh` eindeutig ?

Jein. Eindeutig im dem Sinne, dass es dir nur PIDs von Prozesse von ssh zurückliefern wird - allerdings können das durchaus mehrere sein. Dieses kill verhält sich hier also wie ein 'killall ssh'.

Deine gefundene Methode mit dem speichern der PID ist daher besser wenn du mehrere ssh-Sessions offen haben willst…
MfG. DonKult
\"Sprächen die Menschen nur von Dingen, von denen sie etwas verstehen, die Stille wäre unerträglich.\" ~ unbekannter Autor

Offline dieres

  • User
  • Posts: 758
pid von ssh prozess im script abfragen
« Reply #4 on: 2011/06/26, 23:20:28 »
Danke für die Klarstellung.