2012-06-25 12 views
6

Mi collego al nostro server di produzione Ubuntu usando PuTTy.Come mantenere il comando rails da Rails Console in esecuzione dopo che il client SSH (PuTTy) si chiude

Desidero reindicizzare un modello specifico utilizzando Solr. Voglio eseguire il comando reindex da Rails Console, vale a dire Modelname.reindex (poiché sembra funzionare più rapidamente del rake.)

Tuttavia, stiamo esaminando un vasto volume di dati e questa indicizzazione è prevista prendere un paio d'ore.

Desidero poter avviare questa attività nella console di rails e dovrebbe continuare a essere eseguita anche se esco da PuTTy. Come fare questo?

Linux: Prevent a background process from being stopped after closing SSH client suggerisce nohup, ma non vedo se/come può essere utilizzato con la console di rotaie.

risposta

9

Usa sudo apt-get install screen installare screen. Quindi eseguirlo utilizzando screen. Ora hai una finestra della console separata che può essere scollegata usando Ctrl + A, quindi D. Lo stucco finale non terminerà la tua sessione screen. Se si accede nuovamente in un momento successivo, è possibile riprendere le sessioni utilizzando screen -r.

In sintesi:

> sudo apt-get install screen 
> screen 
# pops up a new shell 
> rails c 
# run your reindex operation 
# press Ctrl + A, then D 
> exit 
# putty closes 

# reconnect using putty 
> screen -r 
# you should be back in your rails console 
+0

Quanto è bello! Grazie! – Stanley

+0

Non si possono dire abbastanza buone parole su 'schermo'. Dai un'occhiata alla schermata 'man' quando hai un secondo e vedi tutte le cose che puoi fare con esso. –

0

Quello che puoi fare è utilizzare screen o tmux per mantenere aperta la sessione sul server.

Se si digita semplicemente screen, verrà avviato un multiplexer terminale che manterrà la sessione anche se si scollega la console.

Una volta che si ricollega alla console è possibile ottenere la sessione indietro con screen -dr

0

Si dovrebbe usare qualcosa di simile tmux o schermo e staccare dalla sessione.

Problemi correlati