Gestione delle sessioni TMUX

Gestione delle sessioni TMUX
Lavorare in remoto su macchine diverse può diventare schiacciante senza usare un programma come TMUX. Inoltre, dover tenere traccia di quale lavoro stai facendo su ogni macchina mentre si cerca di ricordare a quale posto ti trovavi in ​​ogni finestra terminale per ogni macchina può rapidamente sfuggire di mano.

Tuttavia, con un programma come TMUX, questo sovraccarico dell'energia e del tempo degli sviluppatori viene rimosso completamente. Inoltre, con TMUX, non solo puoi lavorare con più macchine e più ambienti contemporaneamente, ma puoi anche passare rapidamente da un po '. Pertanto, imparare a gestire meglio le sessioni TMUX può potenzialmente aumentare la produttività e la capacità di lavorare.

Elenco sessioni TMUX

Per mostrare un elenco di tutte le sessioni TMUX attualmente in esecuzione su una macchina, il comando TMUX LS viene utilizzato nel terminale, come mostrato di seguito:

Le informazioni fornite dal comando TMUX LS vengono visualizzate nel seguente ordine:

  • Sito web1, che è il nome della sessione TMUX elencata qui,
  • 2 Windows, che mostra quante Windows ci sono nelle sessioni di TMUX del sito Web e
  • (creato Gio 9 giu 03:08:42 2022) che mostra la data in cui è stata creata la sessione.

Se una macchina non ha sessioni TMUX in esecuzione quando si esegue il comando TMUX LS, viene visualizzata la seguente uscita:

Rinostenimento di sessioni TMUX

Come molte altre operazioni per TMUX, la ridenominazione di una sessione in TMUX può essere eseguita in due modi. Il primo modo per rinominare una sessione in TMUX è farlo dall'esterno della sessione, nel terminale. Usa il comando seguente per rinominare una sessione:

$ tmux rinomina -session -t

Ad esempio, nello screenshot di seguito, è attualmente in esecuzione una sessione TMUX, chiamata WebDEV, che vogliamo rinominare come sito Web1.

Se l'operazione di rinascita ha esito positivo, il comando non produce nulla e possiamo controllare il nuovo nome della sessione tramite $ TMUX LS come mostrato:

Il secondo modo per rinominare una sessione TMUX è dall'interno della sessione. Simile all'esempio sopra, rinomineremo la seguente sessione da WebDEV al sito Web1:

La combinazione chiave Prefisso, $ è usato per raggiungere questo obiettivo. Ad esempio, nella mia installazione di Ubuntu, questa combinazione chiave sarebbe Ctrl + B, $.

Il risultato è mostrato nello screenshot. Come puoi vedere, la sessione è ora denominata sito Web nell'angolo in basso a sinistra di TMUX:

Creazione di una nuova sessione TMUX con un nome

Allo stesso modo, se è necessario creare una sessione TMUX con un nome in anticipo, invece di rinominarlo in seguito, è possibile utilizzare la seguente sintassi per il nuovo comando TMUX:

$ tmux new -s

Ad esempio, se si desidera creare un'altra sessione in cui si sta impostando un altro server remoto per l'uso di VPN, è possibile creare una sessione TMUX chiamata VPNServer utilizzando il comando seguente:

$ tmux new -s vpnserver

Questa nuova sessione TMUX è mostrata di seguito:

Collegamento a sessioni TMUX

Quando si desidera allegare il tuo terminale a una sessione TMUX attualmente in esecuzione, il comando da utilizzare è:

$ TMUX ANSEGA -T

Ad esempio, se si desidera continuare il tuo lavoro sulla sessione del sito Web1 e attualmente il tuo terminale non è allegato a quella specifica sessione TMUX, si esegue il seguente comando:

$ tmux allegato -t sito web1

Per ottenere un elenco di sessioni a cui puoi allegare, utilizzare il comando LS come mostrato in una sezione sopra.

Distacco dalle sessioni di tmux

Il distacco da TMUX richiede l'uso del comando Prefisso + d. Ad esempio, nella mia installazione di Ubuntu, il comando prefisso è CTRL + B, quindi per staccarsi dalla sessione attualmente in esecuzione, devo premere CTRL + B e quindi premere D per staccarsi. Dopo aver staccato il tuo terminale dalla sessione TMUX, la sessione è ancora in esecuzione. Ciò significa che tutti i processi che hai lasciato in esecuzione nella sessione, come Htop, un download di file tramite Curl o qualsiasi comando batch, continueranno a funzionare fino al completamento.

Questa funzione di TMUX funziona bene per i server remoti in cui è necessario SSH per avviare un processo e quindi lasciarlo funzionare in background. A differenza del comando direttamente dal tuo terminale tramite SSH, l'utilizzo di TMUX consente di utilizzare il comando stacca per eseguire qualsiasi processo in background.

Uccidere sessioni TMUX

Uccidere una sessione di TMUX la distrugge completamente. Pertanto, questo comando dovrebbe essere usato con cura. Questo comando non è reversibile e può portare a una perdita di lavoro.

Simile alla ridenominazione di una sessione TMUX, ci sono due modi per uccidere una sessione individuale. Il primo modo è attraverso il terminale e il secondo è dall'interno della sessione TMUX.

Per uccidere una sessione TMUX dal terminale, utilizzare il comando seguente:

$ tmux kill -session -t

Ad esempio, se ho una sessione TMUX in esecuzione chiamata vpnserver e voglio ucciderlo attraverso il terminale, posso usare il seguente comando:

$ tmux kill -session -t vpnserver

Come mostrato di seguito, la sessione non è più disponibile e viene distrutta.

Il secondo modo di uccidere una sessione TMUX è dall'interno della sessione. Basta uscire da tutti i riquadri e le finestre in esecuzione in quella sessione ed esci dall'ultima finestra della sessione. Ciò causerà l'uccisione della sessione, proprio come avrebbe vissuto il terminale. Lo screenshot seguente mostra una sessione in esecuzione di TMUX chiamata vpnserver:

Quando allegiamo il nostro terminale a questa sessione e usciamo da tutte le finestre, la sessione viene uccisa. Questo può essere visto negli screenshot seguenti:

Dopo essere uscito da tutte le finestre della sessione VPNServer, TMUX LS mostra che la sessione è stata uccisa:

Uccidere tutte le sessioni TMUX su una macchina

Infine, se è necessario uccidere tutte le sessioni TMUX su una macchina, è possibile utilizzare il seguente comando:

$ tmux kill-server

Come mostrato nello screenshot seguente, sono in esecuzione due sessioni TMUX, WebDEV e VPNServer. Se esegui il comando Kill-Server, entrambe le sessioni vengono uccise:

In poche parole:

Per avviare una sessione TMUX, utilizzare il comando seguente:

$ tmux new -s

Per staccarsi dalla sessione TMUX corrente, utilizzare la seguente combinazione di tasti TMUX:

Ctrl + b d

Per reattach in una sessione TMUX, utilizzare il comando seguente:

$ TMUX ANSEGA -T

Per rinominare una sessione TMUX, utilizzare il comando seguente:

$ tmux rinomina -session -t

È inoltre possibile rinominare la sessione TMUX attualmente in esecuzione utilizzando la seguente combinazione di tasti TMUX:

Ctrl + b ,

Inoltre, è possibile utilizzare il seguente comando per uccidere una sessione TMUX:

$ tmux kill -session -t