Kako gostiti več terminalov Linux za ogled in sodelovanje z Wemuxom


V prejšnjem članku smo razložili, kako uporabiti tmux (Terminal MUltipleXer) za dostop in nadzor številnih terminalov (ali oken) z enega terminala.

Zdaj vam bomo predstavili wemux (večuporabniška različica tmux), ki ne vključuje le funkcij, ki jih ponuja tmux, temveč uporabnikom omogoča tudi gostovanje večterminalskega okolja, kjer se lahko stranke pridružijo v načinu za ogled ali sodelovanje.

Z drugimi besedami, lahko gostite sejo, kjer si lahko drugi ogledajo, kaj počnete v terminalu (na primer za predstavitev) ali sodelujejo z njimi.

Da boste kar najbolje izkoristili wemux, vam toplo priporočam, da si ogledate prejšnji vodnik o tmuxu, preden si ogledate ta članek.

Namestitev in konfiguracija več uporabniškega terminala Wemux

Kot predpogoj pred namestitvijo wemuxa bomo uporabili git za kloniranje repozitorija projekta v našem lokalnem sistemu. Če naslednji ukaz pokaže, da gita v vašem sistemu ni mogoče najti:

# which git 

kot kaže:

/usr/bin/which: no git in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) 

Namestite ga pred nadaljevanjem (uporabite yum ali sposobnost glede na vašo distribucijo):

# yum install git       [On RedHat based systems] 
# dnf install git       [On Fedora 22+ versions]
# aptitude install git  [On Debian based systems]

Potem,

1. Klonirajte oddaljeno repozitorij.

# git clone git://github.com/zolrath/wemux.git /usr/local/share/wemux 

2. Ustvarite simbolno povezavo do izvedljivega programa wemux znotraj /usr/local/bin ali drugega imenika v spremenljivki $PATH.

# ln -s /usr/local/share/wemux/wemux /usr/local/bin/wemux 

3. Kopirajte konfiguracijsko datoteko z vzorcem konfiguracije v /usr/local/etc .

# cp /usr/local/share/wemux/wemux.conf.example /usr/local/etc/wemux.conf 

In vstavite naslednjo vrstico:

host_list=(user1 user2 user3) 

kjer so user1 , user2 in user3 uporabniki, ki smejo zagnati strežnike wemux. Po potrebi lahko dodate toliko uporabnikov, ločenih s presledki. Drugi uporabniki se bodo lahko povezali z delujočim strežnikom wemux, vendar ga ne bodo smeli zagnati.

Predstavljamo več uporabniški terminal wemux

Če želite poenostaviti stvari, ne pozabite, da lahko wemux predstavljate kot orodje, ki olajša ogled konzole in medsebojno sodelovanje na isti seji tmux.

Kot smo že pojasnili, morate v konfiguracijski datoteki ( /usr/local/etc/wemux.conf ) že navesti, kateri uporabniki bodo smeli zagnati strežnik wemux ali z drugimi besedami, sejo tmux, na katero se bodo lahko priklopili drugi uporabniki. V tem kontekstu se ti "uporabniki" imenujejo stranke.

Povzeti:

  1. Strežnik Wemux: seja tmux.
  2. Odjemalci Wemux: uporabniki, ki se pridružijo zgoraj opisani seji tmux.

To so ukazi, ki se uporabljajo za upravljanje strežnikov wemux:

  1. wemux or wemux start: starts a new wemux server (if none exists; otherwise creates a new one) and creates a socket in /tmp/wemux-wemux whose permissions need to be set to 1777 so that other users may connect or attach to it:
  2. # chmod 1777 /tmp/wemux-wemux 
    
  3. wemux attach hooks you up to an existing wemux server.
  4. wemux stop kills the wemux server and removes the socket created earlier. This command needs to be executed from a separate terminal. Alternatively, you can use the exit shell builtin to close panes and eventually to return to your regular shell session.
  5. wemux kick username gets rid of the user currently logged on via SSH from the wemux server and removes his / her rogue sessions (more on this in a minute). This command requires that the wemux server has been started as root or with sudo privileges.
  6. wemux config opens the configuration file in the text editor indicated by the environment variable $EDITOR (only if such variable is configured in your system, which you can verify with echo $EDITOR).

Vsi prej navedeni ukazi tmux so veljavni v wemuxu, s to prednostjo, da se odjemalec lahko pritrdi na strežnik wemux v enem od treh načinov.

To storite tako, da v "potencialnem odjemalcu" tako rekoč izvedete ukaz, ki ga najdete v spodnjem stolpcu COMMAND (dejanski odjemalec bo postal, ko se bo pridružil strežniku wemux):

Oglejmo si naslednji zaslon za kratek prikaz treh načinov odjemalcev, opisanih v zgornji tabeli (isti vrstni red). Upoštevajte, da sem z Terminatorjem zagnal strežnik (kot uporabnik gacanepa) v levem podoknu in povezal odjemalca (kot uporabniški test) v desnem podoknu.

Tako lahko enostavno vidite, kako deluje strežnik wemux med interakcijo z enim odjemalcem. Če ponovite postopek, ki ga odjemalec uporablja za pridružitev strežniku wemux, lahko več odjemalcev naredi isto hkrati.

Druge značilnosti terminala wemux

Če vam zgornji odstavki niso dali dovolj razlogov, da poskusite wemux, upam, da vas bodo prepričale naslednje funkcije.

Uporabniki, ki smejo zagnati strežnike wemux (v skladu z direktivo host_list v datoteki /usr/local/etc/wemux.conf ), lahko hkrati gostijo več sej, če je direktiva allow_server_change nastavljena na true:

allow_server_change="true"

Če želite začeti dve seji z imenom la in emea, v dveh različnih terminalih izvedite naslednje ukaze:

# wemux join la && wemux start
# wemux join emea && wemux start

Spet bomo uporabili Terminator za ogled dveh terminalov hkrati (to je podobno tistemu, kar bi lahko pričakovali s preklopom na različne konzole s kombinacijo tipk Ctrl + Alt + F1 do F7):

Ko pritisnete Enter, se obe seji začneta ločeno:

Potem lahko naročnika pridružite kateri koli seji z:

# wemux join la && wemux attach
Or
# wemux join emea && wemux attach

Nazadnje, če želite, da se oddaljeni uporabnik (povezovanje prek SSH) samodejno zažene na wemuxu po prijavi in ga odklopi od strežnika, ko se odklopi, dodajte naslednjo kitico v datoteko ~/.bash_profile :

wemux [mode]; exit

pri čemer je [mode] eden od prej naštetih odjemalskih načinov.
Naročnik lahko preklopi z enega strežnika na drugega z uporabo:

# exit
# wemux join [server name here] && wemux [mode]

Povzetek

V tem članku smo razložili, kako z wemuxom zelo enostavno nastaviti oddaljeni ogled terminala (in celo medsebojno sodelovanje). Wemux je izdan pod licenco MIT in je odprtokodna programska oprema, ki jo lahko dodatno prilagodite svojim potrebam.

Izvorno kodo najdete v wemux Github in je na voljo v vašem sistemu v/usr/local/bin/wemux. V istem skladišču Github lahko najdete več informacij o tem programu.

Se vam je ta prispevek zdel koristen? S spodnjim obrazcem nam sporočite svoje mnenje.

Sklic: https://github.com/zolrath/wemux