nohup o processo persistente su Mac OS X ssh


9

So che questo è stato chiesto prima, ma nessuna delle risposte sembra funzionare in OS X Mountain Lion. Vorrei avviare un processo tramite SSH e chiudere il terminale senza uccidere il processo.

nohup ccl64 -e '(ql:quickload :"file")' & 

Non funziona Quando il terminale è chiuso, il processo muore.

nohup ccl64 -e '(ql:quickload :"file")'

Anch'io.

Penso che ci debba essere un modo. Questo è molto fastidioso in quanto funziona come standard in qualsiasi sistema Linux, tuttavia Mac OS X si rifiuta di funzionare con una qualsiasi di queste combinazioni.

Risposte:


9

Una cosa che funziona sempre è screen. http://ss64.com/osx/screen.html sembra essere disponibile su Mac OS X per impostazione predefinita.

Modifica: http://web.archive.org/web/20130413070916/http://macdevcenter.com/pub/a/mac/2004/07/06/unix_gems.html un'altra schermata del tutorial.

Inoltre, ecco alcuni suggerimenti rapidi su come utilizzare screen

Apri una nuova istanza "schermo"

$ screen

Una volta, nella schermata, puoi "staccare" (o chiuderne) la schermata in questo modo:

ctrl+A and then press D

Per riprendere una schermata, in genere si procede come segue:

$ screen -x

Se hai più di un'istanza dello schermo, ti diranno i loro ID, nel qual caso puoi scegliere quale riprendere in questo modo:

$ screen -r <screen id>

così su ssh faccio schermo e poi passo il comando nohup? con o senza il & alla fine?

Non c'è bisogno di nohup. Basta fare lo schermo ccl64 ... &. Successivamente, se necessario, è possibile riconnettersi con lo schermo -R per monitorare l'avanzamento. In alternativa, basta eseguire lo schermo e digitare il comando lì, è possibile staccare con Ctrl + A D.
chx

grazie è possibile salvare l'output dello schermo in un file dopo l'avvio?

Certo, lo schermo può fare tutto. Vuoi schermo -X hardcopy. Vedi bbs.archlinux.org/viewtopic.php?id=47521 per ulteriori informazioni.
chx,

5

Prova screeninvece, dovrebbe comunque far parte dell'installazione predefinita. Alcune persone usano persino lo schermo come shell predefinita, quindi non devono preoccuparsi di nohup.


2
potresti descrivere come eseguire un comando nohup con schermo?

Si utilizza lo schermo anziché nohup, quindi si stacca lo schermo. Il programma continuerà a funzionare anche se la sessione ssh termina.
Sven,

Vedi man screenper i dettagli.
Sven,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.