¿Cómo ejecutar un programa en un servidor Unix y luego cerrar SSH?

¿Cómo ejecutar un programa en un servidor Unix y luego cerrar SSH?

Necesito ejecutar una operación larga en MATLAB en un servidor Unix remoto. Pero sé que no podré permanecer conectado a través de SSH todo el tiempo. Soy root/admin si eso ayuda.

¿Cómo puedo hacer esto sin perder mi trabajo?

Lo que estoy haciendo actualmente es abrir MATLAB y luego hacer algo como lo siguiente:

t=cputime; x=A\b; time=cputime-t; save('workspace.mat')

Mientras esto se ejecuta (x=A\b es la operación que toma todo el tiempo), cierro mi shell SSH que estaba ejecutando MATLAB y la operación no continúa ejecutándose. Entonces no obtengo los resultados.

¿Cómo puedo ejecutar esto incluso cuando cierro sesión en SSH a mitad de camino? Gracias.

Respuesta1

Debe enviar el comando a un segundo plano usando un & final

O, mejor aún, instalarPANTALLAy tal vezBYOBU. Luego podrá tener una sesión persistente a la que podrá regresar y verificar sin tener que permanecer conectado permanentemente.

Instale SCREEN y BYOBU en el servidor y configúrelo como desee. Después de haber iniciado su primera sesión, podrá volver a conectarse si finaliza y reinicia su conexión SSH. Hay todo tipo de cosas inteligentes que puedes hacer para automatizar sesiones, tener múltiples ventanas, múltiples terminales y más.Este artículo sobre StackOverflowtiene algunas ideas sobre la automatización de conexiones.

información relacionada