3 votos

Bash script con permanente ssh conexión

Yo uso un script en bash que se ejecuta

/usr/bin/ssh -f -N -T -L8888:127.0.0.1:3306 serveradmin@34.324.234.23

Sin embargo, cuando ejecuto el script de bash, espera.. veo la conexión pero viene la secuencia de comandos no salir.. es como que está esperando el proceso de SSH para terminar, porque cuando yo manualmente matar el script de bash que termina así.

Alguna idea de cómo resolver esto?

ACTUALIZACIÓN: He croned este script.. y el proceso de cron es el que se convierte en un zombie.. el real de secuencias de comandos se ejecuta bien, lo siento por eso, con el ps-auxf que obtengo:

root       597  0.0  0.7   2372   912 ?        Ss   Jul12   0:00 cron
root      2595  0.0  0.8   2552  1064 ?        S    02:09   0:00  \_ CRON
1001      2597  0.0  0.0      0     0 ?        Zs   02:09   0:00      \_ [sh] <defunct>
1001      2603  0.0  0.0      0     0 ?        Z    02:09   0:00      \_ [cron] <defunct>

y cuando me matan el ssh de la defuncts desaparecen.. ¿por qué habría de convertirse en inactivos?

8voto

Eduardo Ivanec Puntos 7938

Parece que está tratando de implementar fragmentos de autossh (apt-get install autossh).

Crear un par de claves RSA sin una contraseña, instalar la clave pública en serveradmin@34.324.234.23 y probar:

autossh -f -N -L8888:127.0.0.1:3306 serveradmin@34.324.234.23

0voto

Kristaps Puntos 2360

Separar ssh proceso de tu terminal:

  1. Enviar al fondo

    /usr/bin/ssh -f -N -T -L8888:127.0.0.1:3306 serveradmin@$34.324.234.23 &

  2. Nohup se

    nohup /usr/bin/ssh -f -N -T -L8888:127.0.0.1:3306 serveradmin@$34.324.234.23

0voto

Warner Puntos 17528

Quitar el $ .

workstation:~$ /usr/bin/ssh -f -N -T -L8888:127.0.0.1:3306 server.host.com
DSA host key for IP address '205.205.219.5' not in list of known hosts.
workstation:~$ ps x | grep '\-f'
16170 ?        S      0:00 /usr/bin/ssh -f -N -T -L8888:127.0.0.1:3306 server.host.com

Va hacia el fondo como detalle para mí. Tengo un par de claves de configuración en mi servidor de prueba, sin embargo.

¿Tienes ya algo en el 8888 en tu servidor local? ¿Ya tiene una instancia en el fondo?

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X