SSH y NOHUP

Todo lo que tengas que decir sobre Gnu/Linux y SSOO alternativos.

Moderador: Moderadores

SSH y NOHUP

Notapor seymour » Mar Ago 11, 2009 11:20 am

Hola:

Tengo un disco curo MyBook WorldEdition que es una pequeña máquina linux que se administra remotamente desde ssh (o también desde telnet).

El caso es que yo quiero poder lanzar comandos desde mi ordenador que luego sigan ejecutándose en el disco una vez cerrada la consola remota ssh.

Es decir, lanzar un script que contenga el comando rsync para realizar una copia de seguridad de otro dispositivo enchufado al susodicho disco duro, pero que la tarea (que sé que puede llevar mucho, mucho tiempo), siga ejecutándose una vez que yo me haya desconectado del sistema.

La gracia está en que, si el ByBook, que así se llama el juguete con linux embebido, puede trabajar sólo, pues que lo haga sin la necesidad de que la máquina desde la que lanzo el comando tenga que estar encendida durante todo el proceso.

Según he visto por ahí, habría que hacer ésto:

Código: Seleccionar todo
ssh fulanito@ip_disco
su
# nohup script_rsync.sh &
#exit
$exit


O sea, me logeo como usuario normal (porque está configurado para que root no pueda logearse por ssh directamente y eso no me preocupa tampoco), hago su para convertirme en root dentro de la máquina remota, lanzo el script de turno de la manera indicada con nohup, y luego exit, para dejar de ser root, exit otra vez para abandonar la conexión remota, y ahí es cuando, al entrar otra vez y hacer un

Código: Seleccionar todo
ps -e | grep rsync

por ejemplo, veo que el proceso rsync no está. Vamos, que me lo debo haber cargado yo al salir de ssh.

¿Cómo se hace entonces?

Saludos.
seymour
:-D
:-D
 
Mensajes: 82
Registrado: Mar May 09, 2006 9:22 pm

Notapor SLaYeR » Mar Ago 11, 2009 12:08 pm

Hombre... es lógico no? Si interrumpes la conexión... como va a continuar la transferencia?
Lo que puedes hacer es utilizar rsync con la opción -e para indicarle que realice la transferencia a través de SSH, pero con una conexión distinta a la que quieres cerrar, de modo que esta no te molestara. De todos modos postea el script de rsync que utilizas, cuanto mas info mejor.

seymour escribió:La gracia está en que, si el ByBook, que así se llama el juguete con linux embebido, puede trabajar sólo, pues que lo haga sin la necesidad de que la máquina desde la que lanzo el comando tenga que estar encendida durante todo el proceso.


Sigo sin entenderlo... quieres hacer una transferencia entre dos maquinas, pero una apagada???
ImagenImagen "Happy Hacking". Richard Stallman

Cuando la oscuridad nuble tu mente, que la paranoia sea tu guía.

Déjate caer por mi blog
SLaYeR
-<|:·þ
-<|:·þ
 
Mensajes: 2022
Registrado: Lun Sep 12, 2005 9:02 pm
Ubicación: Cuando crees que me ves cruzo la pared...

Notapor neofito » Mar Ago 11, 2009 1:52 pm

Para estos menesteres tambien resulta muy util el uso del comando screen.

Saludos
La verdad nos hara libres

http://neosysforensics.blogspot.com
http://www.wadalbertia.org
@neosysforensics
-<|:-P[G]
Avatar de Usuario
neofito
Wadalbertita
Wadalbertita
 
Mensajes: 1799
Registrado: Dom Ene 30, 2005 7:16 am
Ubicación: En algun lugar

Notapor seymour » Mar Ago 11, 2009 7:07 pm

SLaYeR escribió:Sigo sin entenderlo... quieres hacer una transferencia entre dos maquinas, pero una apagada???


Hola. Gracias por la respuesta. Es lógico que no me entiendas, porque no me he explicado nada bien. Tengo por un lado el disco duro ese, MyBook con el linux como firmware y cuya única conexión es a través de un cable RJ45, por lo que va al router y su acceso es únicamente a través de la red local. Lo que no he contado, que se me ha olvidado y que es un dato imprescindible, es que sí que tiene una conexión USB, pero sirve para que le conectes otro disco duro externo (de los de toda la vida, de los de conexión USB) para aumentar su capacidad sumando, a la que ya tiene MyBook (que en mi caso es de 500Gb), la del disco que añadas por USB.

MyBook detecta la nueva unidad de almacenamiento enchufada y la monta automáticamente.

El sistema linux que lleva ya tiene instalado, entre muchos otros paquetes, rsync. Así que la idea era ejecutar rsync en MyBook para que hiciera una copia completa de lo que hay en el disco enchufado a él, a él mismo, a cierto directorio indicado en el script (que es un parámetro al fin y al cabo del comando rsync). Por eso no necesito una segunda máquina encendida para nada. Se trata de que MyBook copiara datos de un sitio conectado a él, hacia sí mismo. Pero cuando ejecuto e script, que está en MyBook, y utilizando nohup como se supone que debería hacerse para no depender de la ventana que luego cerraré, pues eso, que se detiene la ejecución del comando rsync.

Adjuntaré el script cuando pueda, que ahora no lo tengo al alcance. Pero mi duda es en general para lanzar algo vía ssh y poder cerrar luego la ventana (previo cierre de conexión) y que se siga ejecutando lo que lancé.

Porque también he querido alguna vez dejar en ejecución un servidor vnc lanzado a través de ssh, y me ha pasado lo mismo. Al fin y al cabo, creo que el comando rsync es secundario. Lo que me interesa es poder lanzar una tarea (sin tirar de cron, que podría ser otra opción), y que quede en ejecución cuando yo haya cerrado la conexión.
seymour
:-D
:-D
 
Mensajes: 82
Registrado: Mar May 09, 2006 9:22 pm

Notapor seymour » Mar Ago 11, 2009 7:14 pm

neofito escribió:Para estos menesteres tambien resulta muy util el uso del comando screen.

Saludos


Hola. No sé si habré entendido bien el uso de screen. Pero lo que yo he entendido es que, para poder "desentenderte" de un terminal lanzando en una máquina, lo tienes que haber lanzado locamente allí, en la máquina. Eso es lo que he entendido, que quizás me esté equivocando. Y lógicamente ese pequeño cacharro linux embebido no tiene más acceso que por conexión remota.

De todas formas en google he encontrado quel a solución sería justo esa que yo apuntaba antes:

1) logeo en máquina remota
2) nohup comando -opciones_comando -argumentos_comando &
3)exit

Pero nada. Me pasa así con rsync, y me pasaba con X11vnc cuando lo lanzaba en una máquina remota desde SSH.
seymour
:-D
:-D
 
Mensajes: 82
Registrado: Mar May 09, 2006 9:22 pm

Notapor SLaYeR » Mié Ago 12, 2009 12:25 am

Hola!

Teóricamente debería de funcionar... de todos modos, nohup redirecciona la salida del comando ejecutado a un archivo llamado nohup.out, podrías ver su contenido, no vaya a ser que lo que falla sea el script.

Salu2!!
ImagenImagen "Happy Hacking". Richard Stallman

Cuando la oscuridad nuble tu mente, que la paranoia sea tu guía.

Déjate caer por mi blog
SLaYeR
-<|:·þ
-<|:·þ
 
Mensajes: 2022
Registrado: Lun Sep 12, 2005 9:02 pm
Ubicación: Cuando crees que me ves cruzo la pared...

Notapor Newhack » Dom Ago 16, 2009 6:51 pm

Seymour escribió: pero sirve para que le conectes otro disco duro externo (de los de toda la vida,
de los de conexión USB) para aumentar su capacidad
Chicos: O Seymour es muy joven, o nos estamos convirtiendo en unos dinosaurios.
Yo aún rcuerdo cuando no existía el usb, y la unica manera de conectarse a un
disco duro era por red, por (p)ata o por scsi. (atjó!, atjó, coff!).

Ya se que yo soy el arqueologo del foro. Pero esto empieza a preocuparme. :lol:



Tu problema si lo he entendido bien es que quieres pasar los contenidos de un disco usb
al mybook que tienes. Para ello abres un terminal remoto, desde alli lanzas el rsync,
y luego esperas que el proceso haga su trabajo aunque cierres el terminal que lanzó la orden.
Pero como buen trabajador, en cuanto el amo se va, el rsync se tumba a la bartola.


No me hagas mucho caso porque esto de las redes no es lo mio, pero se me ocurre que a lo
mejor podrías lanzar el script a traves de una conexión local, la loopback o alguna establecida
desde dentro de la máquina.
Es decir. Tu te conectas desde remoto y acitvas un script que lo que hace es abrir una conexión
donde los dos extremos pertenecen al mybook, y es esa conexión la que lanza el script con el rsync.

Y (me hago yo, no se), que como supongo que si usas la 127.0.0.1 esta no se debe poder apagar,
si el emisor la usa, no podrá cortarse por si misma. (A lo mejor estoy diciendo un disparate, pero
bueno).
La idea base es esta, si todo queda en casa aunque te retires, con un poco de suerte ellos seguirán
a lo suyo.


A ver si te funciona este invento diabólico.
Avatar de Usuario
Newhack
<|:-D
<|:-D
 
Mensajes: 1871
Registrado: Jue Dic 20, 2007 7:36 pm

Notapor AnimAlf » Dom Ago 16, 2009 9:54 pm

Newhack escribió:
Seymour escribió:o nos estamos convirtiendo en unos dinosaurios.


Eso está bien, que no digan que los buenos TRONK@5 en crema, no se vuelven verdes con la energia de ese TЯ0K0 en llama

Newhack escribió:Yo aún rcuerdo cuando no existía el usb, y la unica manera de conectarse a un
disco duro era por red, por (p)ata o por scsi ...


Vaya!! eso se pega, yo quiero también que no tengo nada en la cabeza ... era conexión en SeriO o KoЯN un cable en seri€ ... no no que eso noxistia ... ¿? que pocos cambios ¿no? aunque espero que si exista por ahí la buena circulación de esa € de petro€uro

A ver si te funciona este invento diabólico.


Uff, que miedo, suerte que no necesitas BetaTesters

seguro que funcionorá
Saludos
En busca del TuXeR perdido
Avatar de Usuario
AnimAlf
<|:-)
<|:-)
 
Mensajes: 628
Registrado: Mar Ago 08, 2006 4:54 am
Ubicación: tgn

Notapor SLaYeR » Dom Ago 16, 2009 10:26 pm

Dios Animalf.... no te he entendido nada de nada... :?
ImagenImagen "Happy Hacking". Richard Stallman

Cuando la oscuridad nuble tu mente, que la paranoia sea tu guía.

Déjate caer por mi blog
SLaYeR
-<|:·þ
-<|:·þ
 
Mensajes: 2022
Registrado: Lun Sep 12, 2005 9:02 pm
Ubicación: Cuando crees que me ves cruzo la pared...

Notapor AnimAlf » Lun Ago 17, 2009 7:36 pm

Recordaba las conexiones con telix al puerto serie con un cable cruzado. Cuando una tarjeta de red quedaba muy lejos de enterder que era. Y me quedó eso que escribi, que sí. Viendolo, pues como que se refleja también lo poco que entendía de ello, aunque cosiguiese la conexión. Sorry
En busca del TuXeR perdido
Avatar de Usuario
AnimAlf
<|:-)
<|:-)
 
Mensajes: 628
Registrado: Mar Ago 08, 2006 4:54 am
Ubicación: tgn

Notapor Newhack » Dom Ago 23, 2009 6:08 pm

Je je, Su segundo post está mejor. Pero me alegra ver que Animalf no ha cambiado y que
sigue estando por ahi ese miembro que nos hacía dudar con sus post dadaistas-surrealistas. :lol: :p

Lo del port serie, (la conexión null modem), yo también la usaba bajo dos para pasar archivos
grandes de ordenador a ordenador, hacer backups y etc. La única diferencia es que yo usaba
el comandante norton, que ya te gestiona la conexión el mismo.

Que tiempos! :)
Avatar de Usuario
Newhack
<|:-D
<|:-D
 
Mensajes: 1871
Registrado: Jue Dic 20, 2007 7:36 pm

Notapor AnimAlf » Mar Ago 25, 2009 12:09 pm

Newhack escribió:Lo del port serie, (la conexión null modem), yo también la usaba bajo dos para pasar archivos
grandes de ordenador a ordenador, hacer backups y etc. La única diferencia es que yo usaba
el comandante norton, que ya te gestiona la conexión el mismo.

A mi es que me lamearon. Sin tener ni idea de comandos ms-dos, toquiteaba por ahí, hasta que sólo en la computadora vi el inicio de la lectura de la BIOS y nada más. Oscuridad. En un tuilip i386, en el que para acceder a la bios tenías que hacerlo a través de un floppy.

El técnico que lo reparó me montó la película de que tubo que conectarlo a otro pc a través de un cable, y ... claro ... uno que se pregunta ¿Cómo?. Pues aún me lo pregunto hoy :-D

Conecté por primera vez con otra máquina, en un linux (RedHAt) vs dos, pero ... no sabía que hacer X'D (Hoy tampoco te creas que tengo mucha idea de que teclear, sigo temiendo meter la pata y que me tomen el pelo diciendome cualqueir cosa)

Newhack escribió:Que tiempos! :)

Los mismo :-D en lo cotidiano se siguen haciendo las mismas cosas, pero como hay muchos recursos, desbordándolos, para seguir empujando al cambio de maquinaria.

SaludOS
En busca del TuXeR perdido
Avatar de Usuario
AnimAlf
<|:-)
<|:-)
 
Mensajes: 628
Registrado: Mar Ago 08, 2006 4:54 am
Ubicación: tgn

Re: SSH y NOHUP

Notapor vlan7 » Mar Abr 17, 2012 6:13 pm

El hilo es viejo, pero llegue a el buscando unas cosas en google. Se que quien pregunto no lo va a ver, pero lo que buscaba era http://www.harding.motd.ca/autossh/

O si puedes instalar un server mosh ademas del cliente, en vez de usar ssh usar mosh. http://mosh.mit.edu/

Yo esto lo solia hacer con nohup como dice el titulo hasta que descubri lo otro. Era algo asi:

Código: Seleccionar todo
nohup ssh -NR 7777:localhost:22 user@relay &


Si por lo que fuera quisiera matarlo, pues un kill al PID, o lo pasas a primer plano con fg y despues CTRL+C, que como sabeis viene a ser lo mismo que un kill.

Un saludo,
There is a crack, a crack in everything That's how the light gets in. -subculture

zen7.vlan7.org
Avatar de Usuario
vlan7
<|:-D
<|:-D
 
Mensajes: 1176
Registrado: Dom Mar 05, 2006 11:16 pm
Ubicación: Mas alla del EIP

Re: SSH y NOHUP

Notapor vlan7 » Mar Abr 17, 2012 9:02 pm

De acuerdo, acabo de releer el hilo y veo que soy yo el que no lo entendi bien. De todas formas ahi quedan esos enlaces. Herramientas bastante jugosas en mi opinion.

Pero hey, esto no puede quedar asi amigos, si no funciona el nohup asi (que por otra parte yo veo bien lo que puso seymour en principio), si no funciona asi recurre a un hack. Un nohup sin nohup. Mirad:

Código: Seleccionar todo
root@bt:~# login
bt login: vlan7
Password:
Linux bt 3.2.6 #1 SMP Fri Feb 17 10:34:20 EST 2012 x86_64 GNU/Linux
vlan7@bt:~$ ( ( sleep 7h ) & )
vlan7@bt:~$ ps -ef |grep [s]leep
vlan7    18542     1  0 16:52 pts/1    00:00:00 sleep 7h
vlan7@bt:~$ logout
root@bt:~# ps -ef |grep [s]leep
vlan7    18542     1  0 16:52 pts/1    00:00:00 sleep 7h
root@bt:~# login
bt login: vlan7
Password:
Linux bt 3.2.6 #1 SMP Fri Feb 17 10:34:20 EST 2012 x86_64 GNU/Linux
vlan7@bt:~$ ps -ef |grep [s]leep
vlan7    18542     1  0 16:52 pts/1    00:00:00 sleep 7h
vlan7@bt:~$ logout
root@bt:~#


Se ve el proceso tras lanzar eso. Se sale de esa shell y se sigue viendo con mismo PID. Se vuelve a entrar y sigue corriendo con el mismo PID.

Logicamente habria que sustituir el sleep de 7 horas por el rsync. ¿Y eso si que es lo que queria quien pregunto no?

¿Y por que con ( ( sleep 7h ) & ) conseguimos que eso siga corriendo aun despues de haber salido de la shell? Pues eso es un doble fork maestros. Good old fork :)

Just my 2cts,
There is a crack, a crack in everything That's how the light gets in. -subculture

zen7.vlan7.org
Avatar de Usuario
vlan7
<|:-D
<|:-D
 
Mensajes: 1176
Registrado: Dom Mar 05, 2006 11:16 pm
Ubicación: Mas alla del EIP


Volver a Gnu/Linux y SSOO alternativos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados