Se è mvstato avviato come:
ssh host mv x y
Quindi mvriceverà un SIGPIPE (e morirà) se tenta di scrivere qualcosa su stdout o stderr (come un messaggio di errore).
Se hai avviato una sessione interattiva come:
ssh host
E iniziato mvdalla shell interattiva lì dentro, quando il lato master dello pseudo-terminale avviato sshdverrà chiuso (alla sshchiusura della connessione TCP all'uscita), il leader della sessione associato al lato slave dello pseudo-terminale, che è la shell interattiva remota, riceverà un segnale SIGHUP (riagganciare).
Alla ricezione di quel segnale, le shell (a meno che tu non abbia emesso un trap '' HUP) in genere inoltrano quel segnale a tutti i processi nei lavori che hanno iniziato, a meno che tu non gli abbia esplicitamente detto di non farlo (come con disowno con &|alcune shell).
Altri processi (come mv) in genere muoiono quando ricevono quel segnale a meno che non gli sia stato detto di ignorarlo (usando nohupo se il loro genitore lo ha ignorato).
Se hai emesso un:
trap '' HUP
Quindi tutti i lavori avviati dopo lo erediteranno e ignoreranno SIGHUP.
La shell non morirà del segnale SIGHUP inviato al momento della disconnessione ma uscirà al prompt successivo, poiché il suo stdin è scomparso. All'uscita, alcune shell inviano SIGHUP ai loro lavori (non sconosciuti). Quelli iniziati dopo che lo trap '' HUPignoreranno, gli altri moriranno.
In breve, in quel caso, a meno che tu non abbia preso le precauzioni precedenti in modo che ciò non accada, mvmorirai.
Per evitare la prossima volta, se si utilizza tcsh, zsho bash, prima di spegnere la macchina, premere Ctrl-Zper sospendere mv, entrare bga riprenderla in background, e disowndi rinnegare esso.
Oppure potresti usare screeno tmux. In un SIGHUP, questi si staccheranno dal loro terminale host ormai scomparso, ma le applicazioni in esecuzione nel terminale che emula continueranno a funzionare senza testa e potrai ricollegare la sessione a un altro terminale in seguito per vedere come è mvandata.
Oppure usa nohup mvper rendere mvimmune a SIGHUP e avere il suo output ed errori vai in un nohup.outfile che puoi controllare in seguito.
Ora, non conosco il tuo specifico provider di hosting, ma con alcuni, quando sei sshnell'istanza, non stai iniziando una sessione di shell laggiù ma piuttosto ti colleghi alla console, cioè a una sessione che è già stata avviata e quando esci non si termina quella sessione, ma si stacca da essa. Quindi, la shell non viene uccisa, né lo fa mv. In tal caso, noterai che l' psesecuzione da lì ti darebbe lo stesso pidper la tua shell in due sshsessioni separate .