Come mantenere i processi in esecuzione dopo la chiusura della sessione ssh?
Spesso mi trovo a dover dare comandi attraverso SSH ad alcune macchine Ubuntu. Questi processi spesso durano molto tempo per cui ho cercato alcune soluzioni. Una è l’installazione di NX Nomachine Server e l’utilizzo di tmux che secondo me si adatta meglio a questa soluzione.
Di seguito una piccola guida a tmux che mi serve anche da promemoria.
Caratteristiche:
- La finestra della session SSH può essere spostata tra sessione e anche legata a più sessioni
- La finestra può essere divisa orizzontalmente e verticalmente in riquadri
- Supporto per UTF-8 e 256 terminali a colori
- Le sessioni possono essere controllate da Shell , senza la necessità di creare una nuova sessione
Funzionalità di base
- Creare una connessione ssh nella macchina remota
- Avviare Tmux digitando tmux nella Shell di comando (Per installare su Ubuntu: sudo apt-get install tmux)
- avviare il processo che si desidera all’interno della sessione tmux iniziatoa come se fosse una Shell di comando “tradizionale”
- lasciare / staccare la sessione tmux digitando Ctrl – B e successivamente D
Ora si può tranquillamente disconnettersi dalla macchina remota , il processo continuerà a girare dentro Tmux . Quando ci si riconnette di nuovo e si vuole controllare lo stato del vostro processo è possibile utilizzare tmux attach per allegare alla sessione tmux .
Se si desidera avere sessioni multiple in esecuzione contemporanee è necessario denominare ogni sessione utilizzando Ctrl – B e $ . È possibile ottenere un elenco delle sessioni in esecuzione usando tmux list-sessions.
Per maggiori informazioni potete dare un occhiata al sito ufficiale di Tmux.