Tmux: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Sisaar (talk | contribs)
No edit summary
Sisaar (talk | contribs)
No edit summary
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Autor ==
== Autor ==
Siim Saar
Siim Saar<br>
Grupp A21
Grupp A21<br>
Detsember 2016


== Sissejuhatus ==
== Sissejuhatus ==
''tmux'' (Terminal multiplexer) on levinud töörist UNIXi laadsetel operatsioonisüsteemidel, mis võimaldab kasutajal avada mitu virtuaalset terminali ühes aknas. Tmux kui algselt käivitada loob seansi, millest on võimalik kasutajal väljuda, ilma et ükski seal sees töötavatest terminalidest sulguks. Kasutaja võib hiljem uuesti avada seansi ja jätkata tööd sealt kust see pooleli jäi. Tmuxis on võimalik virtuaalseid terminale paigutada ja nende suurust muuta nii kuidas on vajalik  
'''''tmux''''' (Terminal multiplexer) on levinud tööriist UNIXi laadsetel operatsioonisüsteemidel, mis võimaldab kasutajal avada mitu virtuaalset terminali ühes aknas. Tmux kui algselt käivitada loob seansi, millest on võimalik kasutajal väljuda, ilma et ükski seal sees töötavatest terminalidest sulguks. Kasutaja võib hiljem uuesti avada seansi ja jätkata tööd sealt, kust see pooleli jäi. Tmuxis on võimalik virtuaalseid terminale paigutada ja nende suurust muuta nii kuidas on vajalik.


== Kasutusala==
== Kasutusala==
Tmuxil on mitu kasutusala, kuid põhiliselt kasutatakse tarkvara läbi SSH/Telneti serverites töötamiseks ja haldamiseks või tarkvaraarenduse keskkonna loomiseks
Tmuxil on mitu kasutusala, kuid põhiliselt kasutatakse tarkvara läbi SSH/Telneti serverites töötamiseks ja nende haldamiseks või tarkvaraarenduse keskkonna loomiseks.
Serverite puhul kasutatakse tmuxi selleks, et kui telneti või SSH ühendus peaks katkema, siis ei sulgu terminal, kus võib töötada mingi kriitiline rakendus.
Arenduses on tmux kasutuses koos erinevate käsureal töötavate tekstiredaktoritega (vim, emacs), kus ühes paanis asub tekstiredaktor, teises paanis kompileeritakse programmi, kolmandas jooksutatakse programmi, et jälgida veateateid jne.


== Paigaldus ==
== Paigaldus ==
'''Debian'''
'''Debian'''
  # apt install tmux
  apt install tmux
'''Arch'''
'''Arch'''
  # pacman -S tmux
  pacman -S tmux
'''Gentoo'''
'''Gentoo'''
  # emerge --ask app-misc/tmux
  emerge --ask app-misc/tmux
'''RHEL'''
'''Fedora'''
  # dnf install tmux
  dnf install tmux


== Kastuamine ==
== Kasutamine ==
=== Väljaspool seanssi ===
=== Väljaspool seanssi ===
Uue seansi alustamine  
Uue seansi alustamine  
Line 35: Line 38:
==== Üldine ====
==== Üldine ====
  ? - List kõikidest klahvikombinatsioonidest
  ? - List kõikidest klahvikombinatsioonidest
  d - Välju sesioonist
  d - Välju sessioonist
  s - Näita kõiki jooksvaid sesioone
  s - Näita kõiki jooksvaid sessioone
  : - Tmuxi konsool
  : - Tmuxi konsool
==== Aknad ====
==== Aknad ====
  c - Loo uus aken sesioonis
  c - Loo uus aken sessioonis
  n - Mine järgmisse aknasse
  n - Mine järgmisse aknasse
  p - Mine eelmisse aknasse
  p - Mine eelmisse aknasse
Line 52: Line 55:
  x - Sulge paan
  x - Sulge paan
  C + Nooleklahvid - Suurenda paani suuna järgi
  C + Nooleklahvid - Suurenda paani suuna järgi
  M (Alt) + Nooleklahvid - Suurend paani 5 kordselt suuna järgi
  M (Alt) + Nooleklahvid - Suurenda paani 5 kordselt suuna järgi
  Nooleklahvid - Vali paan nooleklahvi suuna järgi
  Nooleklahvid - Vali paan nooleklahvi suuna järgi


Line 59: Line 62:
funktsioone, mis muidu on keelatud.
funktsioone, mis muidu on keelatud.


Kasutaja tmuxi konfiguratsioon asub '''~/.tmux.conf''', kuid globaalne konfiguratsioon on '''/etc/tmux.conf'''
Kasutaja tmuxi konfiguratsioon asub '''~/.tmux.conf''', kuid globaalne konfiguratsioon asub '''/etc/tmux.conf'''


== Pluginad ==
Kui alustada tmuxi konfiguratsiooni kirjutamisega tasub algselt lisada klahvikombinatsioon konfiguratsioonfaili taaslaadimiseks tmuxi enda sees
TODO
 
bind r source-file ~/.tmux.conf
Lubame hiirega paanide vahetamise ( tmux 2.1+ )
set -g mouse on
'''Ctrl+B''' kombinatsioon mis eelneb igale järgnevale kombinatsioonile on klaviatuuril ebamugav vajutada, muudame selle Ctrl+A peale, mis on populaarne mugavam alternatiiv
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
Vimi klahvikombinatsioonide lubamine
set-window-option -g mode-keys vi
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection
Pikem ajalugu
set -g history-limit 50000
== Pistikprogrammid ==
Tmux laseb enda funktsionaalsust suurendada läbi pistikprogrammide ehk pluginate.
 
===Tmux-resurrect===
[https://github.com/tmux-plugins/tmux-resurrect Github - tmux-resurrect]<br>
Tmux-resurrect on pistikprogramm tmuxile, mis võimaldab salvestada tmuxi seanse ning neid hiljem taastada ka pärast tmuxi sulgemist.
====Paigaldus====
1. Plugina installimiskoht ei ole oluline ning tuleks valida endale sobiv koht kettal.
  git clone https://github.com/tmux-plugins/tmux-resurrect
2. Lisada pistikprogramm tmuxi konfiguratsiooni
run-shell ~/clone/path/resurrect.tmux
3. Tmuxi sees taaslaadida konfiguratsiooni fail
:source-file <konfiguratsioon>
4. Kui tahate, et tmux-resurrect taastaks ka programmid, mis töötasid seansis, siis lisada antud lõik konfiguratsiooni
set -g @resurrect-processes ':all:'
====Kasutamine====
Antud kombinatsioonid kehtivad vaid vaikekonfiguratsiooni puhul
Ctrl+B + Ctrl+S - Salvestab seansi
Ctrl+B + Ctrl+R - Taastab seansi
===Tmux-continuum===
[https://github.com/tmux-plugins/tmux-continuum Github - tmux-continuum]<br>
Tmux-continuum on pistikprogramm, mis salvestab tmuxi seansse iga seatud intervalli tagant, alustab tmuxi seanssi koheselt peale severi käivitumist ning taastab viimase salvestatud seansi. '''Laiendus toetub tmux-resurrectile, mistõttu peab see olema eelnevalt allalaetud ja lisatud tmux konfiguratsiooni.'''
====Paigaldus====
1. Plugina installimiskoht ei ole oluline ning tuleks valida endale sobiv koht kettal.
  git clone https://github.com/tmux-plugins/tmux-continuum
2. Lisada pistikprogramm tmuxi konfiguratsiooni
run-shell ~/clone/path/continuum.tmux
3. Tmuxi sees taaslaadida konfiguratsiooni fail
:source-file <konfiguratsioon>
4. (valikuline) Lubame automaatse tmuxi alustamise tmuxi konfis
set -g @continuum-boot 'on'
5. (valikuline) Lubame automaatse seansi taastamise peale tmuxi käivitamist
set -g @continuum-restore 'on'
====Kasutamine====
Tmux-continuum on suunatud automatiseerimisele ning mingeid uusi klahvikombinatsioone ei ole.
Kasutajal on aga võimalik muuta intervalli, mille tagant salvestatakse tmuxi seanssi.
set -g @continuum-save-interval '<intervall>'
==Kokkuvõte==
Tmux teeb terminalis töötamise palju mugavamaks võimaldades töökeskondi muuta vastavalt enda vajadustele ning neid salvestada ja taastada. Sobib väga hästi nõudlikule kasutajale, kes tahab kõik täpselt konfigureerida enda vajaduste järgi ja lisada või programmeerida juurde funktsionaalsust.
==Allikad==
[https://tmux.github.io/ Tmuxi koduleht]<br>
[https://wiki.archlinux.org/index.php/tmux Arch Linux Wiki - Tmux]<br>
[https://wiki.gentoo.org/wiki/Tmux Gentoo Linux Wiki - Tmux]<br>
[https://danielmiessler.com/study/tmux/ Tmux Primer]<br>
[https://github.com/tmux-plugins/tmux-resurrect Github - tmux-resurrect]<br>
[https://github.com/tmux-plugins/tmux-continuum Github - tmux-continuum]<br>
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]]

Latest revision as of 17:53, 14 December 2016

Autor

Siim Saar
Grupp A21
Detsember 2016

Sissejuhatus

tmux (Terminal multiplexer) on levinud tööriist UNIXi laadsetel operatsioonisüsteemidel, mis võimaldab kasutajal avada mitu virtuaalset terminali ühes aknas. Tmux kui algselt käivitada loob seansi, millest on võimalik kasutajal väljuda, ilma et ükski seal sees töötavatest terminalidest sulguks. Kasutaja võib hiljem uuesti avada seansi ja jätkata tööd sealt, kust see pooleli jäi. Tmuxis on võimalik virtuaalseid terminale paigutada ja nende suurust muuta nii kuidas on vajalik.

Kasutusala

Tmuxil on mitu kasutusala, kuid põhiliselt kasutatakse tarkvara läbi SSH/Telneti serverites töötamiseks ja nende haldamiseks või tarkvaraarenduse keskkonna loomiseks. Serverite puhul kasutatakse tmuxi selleks, et kui telneti või SSH ühendus peaks katkema, siis ei sulgu terminal, kus võib töötada mingi kriitiline rakendus. Arenduses on tmux kasutuses koos erinevate käsureal töötavate tekstiredaktoritega (vim, emacs), kus ühes paanis asub tekstiredaktor, teises paanis kompileeritakse programmi, kolmandas jooksutatakse programmi, et jälgida veateateid jne.

Paigaldus

Debian

apt install tmux

Arch

pacman -S tmux

Gentoo

emerge --ask app-misc/tmux

Fedora

dnf install tmux

Kasutamine

Väljaspool seanssi

Uue seansi alustamine

tmux # uus seans
tmux new -s <nimi> # alustab seansi määratud nimega

Seansi taasavamine

tmux a # avab viimase seansi
tmux a -t <nimi> # avab seansi nime järgi

Kõik jooksvad seansid

tmux ls

Seansi sulgemine

tmux kill-session -t <nimi>

Tmuxi seansis

Klahvikombinatsioonide kasutamiseks algseadmetega tuleb vajutada Ctrl+B ning seejärel

Üldine

? - List kõikidest klahvikombinatsioonidest
d - Välju sessioonist
s - Näita kõiki jooksvaid sessioone
: - Tmuxi konsool

Aknad

c - Loo uus aken sessioonis
n - Mine järgmisse aknasse
p - Mine eelmisse aknasse
& - Sulge tmuxi aken
0-9 - Vali aken numbri järgi

Paanid

" - Tee tmuxi paan horisontaalselt pooleks
% - Tee tmuxi paan vertikaalselt pooleks
o - Vaheta paani
! - Tee paan aknaks
- - Tee aken paaniks
x - Sulge paan
C + Nooleklahvid - Suurenda paani suuna järgi
M (Alt) + Nooleklahvid - Suurenda paani 5 kordselt suuna järgi
Nooleklahvid - Vali paan nooleklahvi suuna järgi

Konfigureerimine

Tmux on ülimalt konfigureeritav, kasutajal on võimalik muuta klahvikombinatsioone enda soovide järgi, muuta staatuseribale kuvatavat informatsiooni ning lubada funktsioone, mis muidu on keelatud.

Kasutaja tmuxi konfiguratsioon asub ~/.tmux.conf, kuid globaalne konfiguratsioon asub /etc/tmux.conf

Kui alustada tmuxi konfiguratsiooni kirjutamisega tasub algselt lisada klahvikombinatsioon konfiguratsioonfaili taaslaadimiseks tmuxi enda sees

bind r source-file ~/.tmux.conf

Lubame hiirega paanide vahetamise ( tmux 2.1+ )

set -g mouse on

Ctrl+B kombinatsioon mis eelneb igale järgnevale kombinatsioonile on klaviatuuril ebamugav vajutada, muudame selle Ctrl+A peale, mis on populaarne mugavam alternatiiv

unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix

Vimi klahvikombinatsioonide lubamine

set-window-option -g mode-keys vi
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection

Pikem ajalugu

set -g history-limit 50000

Pistikprogrammid

Tmux laseb enda funktsionaalsust suurendada läbi pistikprogrammide ehk pluginate.

Tmux-resurrect

Github - tmux-resurrect
Tmux-resurrect on pistikprogramm tmuxile, mis võimaldab salvestada tmuxi seanse ning neid hiljem taastada ka pärast tmuxi sulgemist.

Paigaldus

1. Plugina installimiskoht ei ole oluline ning tuleks valida endale sobiv koht kettal.

 git clone https://github.com/tmux-plugins/tmux-resurrect

2. Lisada pistikprogramm tmuxi konfiguratsiooni

run-shell ~/clone/path/resurrect.tmux

3. Tmuxi sees taaslaadida konfiguratsiooni fail

:source-file <konfiguratsioon>

4. Kui tahate, et tmux-resurrect taastaks ka programmid, mis töötasid seansis, siis lisada antud lõik konfiguratsiooni

set -g @resurrect-processes ':all:'

Kasutamine

Antud kombinatsioonid kehtivad vaid vaikekonfiguratsiooni puhul

Ctrl+B + Ctrl+S - Salvestab seansi
Ctrl+B + Ctrl+R - Taastab seansi

Tmux-continuum

Github - tmux-continuum
Tmux-continuum on pistikprogramm, mis salvestab tmuxi seansse iga seatud intervalli tagant, alustab tmuxi seanssi koheselt peale severi käivitumist ning taastab viimase salvestatud seansi. Laiendus toetub tmux-resurrectile, mistõttu peab see olema eelnevalt allalaetud ja lisatud tmux konfiguratsiooni.

Paigaldus

1. Plugina installimiskoht ei ole oluline ning tuleks valida endale sobiv koht kettal.

 git clone https://github.com/tmux-plugins/tmux-continuum

2. Lisada pistikprogramm tmuxi konfiguratsiooni

run-shell ~/clone/path/continuum.tmux

3. Tmuxi sees taaslaadida konfiguratsiooni fail

:source-file <konfiguratsioon>

4. (valikuline) Lubame automaatse tmuxi alustamise tmuxi konfis

set -g @continuum-boot 'on'

5. (valikuline) Lubame automaatse seansi taastamise peale tmuxi käivitamist

set -g @continuum-restore 'on'

Kasutamine

Tmux-continuum on suunatud automatiseerimisele ning mingeid uusi klahvikombinatsioone ei ole. Kasutajal on aga võimalik muuta intervalli, mille tagant salvestatakse tmuxi seanssi.

set -g @continuum-save-interval '<intervall>'

Kokkuvõte

Tmux teeb terminalis töötamise palju mugavamaks võimaldades töökeskondi muuta vastavalt enda vajadustele ning neid salvestada ja taastada. Sobib väga hästi nõudlikule kasutajale, kes tahab kõik täpselt konfigureerida enda vajaduste järgi ja lisada või programmeerida juurde funktsionaalsust.

Allikad

Tmuxi koduleht
Arch Linux Wiki - Tmux
Gentoo Linux Wiki - Tmux
Tmux Primer
Github - tmux-resurrect
Github - tmux-continuum