Tmux

Tmux er et program som når det kjøres fra kommandolinje åpner en ny kommandolinje (et nytt skall). Denne "nye" kommandolinjen brukes på akkurat samme måte som en vanlig kommandolinje, og du kan kjøre alle kommandoer og programmer på vanlig måte. Forskjellen fra en vanlig kommandolinje er at du kan la programmet eller beregningen kjøre i bakgrunnen selv om du har logget deg ut. Det er viktig å huske på at dette bare gjelder tekstbaserte programmer, hvis du starter et grafisk program fra tmux vil det avsluttes når du kobler fra (detacher) sesjonen.

Bruk av tmux

For å starte tmux, skriver du tmux i et terminalvindu. Du kan velge å starte som tmux new -s navn_på_sesjon slik at det blir lettere å holde oversikt over ulike sesjoner. Hvis du for eksempel ønsker å starte matlab (i tekstmodus slik at den ikke avsluttes når du logger ut), skriver du nå matlab -nodesktop.

For å detache tmux-sesjonen (legge prosessen i bakgrunnen) trykker du Ctrl+b d. Da kommer du tilbake til den vanlige kommandolinjen. Prosessen(e) som kjører i tmux vil fortsatt kjøre i bakgrunnen selv om du lukker terminalvinduet og logger ut. Du kan når som helst reattache (gjenåpne) tmux-sesjonen med tmux attach.

Du kan ha flere vinduer i samme tmux-sesjon. Ctrl+b c åpner et nytt vindu. Du kan bytte til forrige vindu med Ctrl+b p (previous) eller til neste vindu med Ctrl+b n (next). Mer info kommer. Dette er bare et ukast.

tmux ls gir deg en oversikt over dine tmux-sesjoner på den maskinen du er innlogget på.

Kort oppsummering av vanlige tmux-kommandoer:

I tmux (alle kommandoer i tmux starter med ''Ctrl+b''):

Ctrl+b c nytt vindu
Ctrl+d avslutte tmux (kan ikke gjenopptas)
Ctrl+b d detach

Fra vanlig kommandolinje:

tmux starter ny tmux-sesjon
tmux attach -t session_name_or_number reattach
tmux list-sessions or tmux ls viser dine tmux-sesjoner på denne maskinen

Husk at en tmux-sesjon som du kjører på maskin X ikke kan nås fra en annen maskin (Y) med mindre du logger deg inn på maskin X via ssh fra maskin Y. Det kan derfor være en god idé å skrive ned hvilken maskin du kjører en tmux-sesjon på i tilfelle du glemmer det.

Ta gjerne kontakt med oss på drift [at] math [dot] ntnu [dot] no hvis du har noen spørsmål.

Husk å kjøre beregningene dine nice!

2019-11-18, Hallvard Norheim Bø