GNU/Linux >> Znalost Linux >  >> Linux

Tipy pro používání tmux

Před verzí Red Hat Enterprise Linux 8 screen byl zahrnut příkaz. Ve verzi 8 bylo rozhodnuto o ukončení podpory screen a použijte tmux namísto. tmux je terminálový multiplexer, což znamená, že můžete mít spuštěný proces, odpojit se od systému a poté se znovu připojit později a z jiného počítače, abyste mohli v tomto procesu pokračovat. Snadný způsob, jak to demonstrovat, je použít SSH na vzdálený systém, spustit tmux a pak zevnitř spusťte ping příkaz vzdálenému systému, odpojte se od tmux , pokračujte v tmux a uvidíte, že ping stále jde. Některé z běžných případů použití jsou:

  • Pokud máte dlouho běžící proces, jako je upgrade aplikace, a buď nechcete nechat relaci ssh spuštěnou po celou dobu, nebo se obáváte, že by mohlo dojít k výpadku připojení k síti.
  • li>
  • Pokud máte spuštěno více relací, můžete pro různé relace použít štítky.
  • Pokud chcete, aby někdo jiný viděl, co děláte, můžete spustit tmux session a pak mít SSH této druhé osoby do vašeho systému a připojit se k tomuto tmux relace.

Chcete-li zahájit základní relaci, stačí spustit tmux příkaz. Tím se dostanete do tmux relaci a budete moci spouštět příkazy a dělat věci stejně jako normálně jako váš uživatel. Chcete-li se odpojit od relace, ale přesto ji nechat spuštěnou, stiskněte Ctrl+B a poté D . Pro obnovení relace mohu spustit:

$ tmux ls    ### to see if there are any other tmux sessions
$ tmux a    ### this will connect to the most recent session that was created.

Pokud existuje více relací, můžete se připojit podle čísla relace:

[root@opendemo ~]# tmux ls
0: 1 windows (created Thu Jan 28 19:58:27 2021) [103x22]
1: 1 windows (created Thu Jan 28 20:00:54 2021) [103x22]
2: 1 windows (created Thu Jan 28 20:01:08 2021) [103x22]
3: 1 windows (created Thu Jan 28 20:01:39 2021) [103x22]

[root@opendemo ~]# tmux a -t 1
[detached]

[root@opendemo ~]#

Příkladem toho, jak to používám, je, že úplně posledním příkazem mého osobního spouštěcího skriptu, který se připojuje k VPN a dělá další věci, je spuštění:

# /usr/bin/ssh -t shell-el7.redhat.com tmux attach

To mě připojí pomocí SSH k tomuto vzdálenému serveru a poté se připojí k mému tmux relace, o které vím, že tam je s irssi běh. Informace o používání irssi , viz můj článek Používání Irssi v linuxové tmux relaci.

[ Také by se vám mohlo líbit: Buildování pomocí Buildah:Dockerfiles, příkazový řádek nebo skripty ]

Druhý příklad použití výše byl pro označení různých relací. Nyní, když jsme si prošli některé základy používání tmux , podívejme se na příklad použití štítků:

[root@opendemo ~]# tmux new -s "database upgrade"
[detached]

[root@opendemo ~]# tmux new -s "other process"
[detached]

[root@opendemo ~]# tmux ls
database upgrade: 1 windows (created Thu Jan 28 19:50:03 2021) [103x22]
other process: 1 windows (created Thu Jan 28 19:50:23 2021) [103x22]

[root@opendemo ~]# tmux attach -t "database upgrade"
[detached]

[root@opendemo ~]#

Můžete si všimnout, že pokud máte text, který se posouvá za horní část obrazovky, nemůžete jednoduše kliknout na Page Up klíč k zobrazení.

Abyste mohli používat kurzorové klávesy v tmux abyste se mohli vrátit zpět do vyrovnávací paměti, stiskněte Ctrl+B a poté [ klíč. V tomto okamžiku budete moci použít šipku klávesy Page Up nebo O stránku dolů pro pohyb ve výstupu na obrazovce.

Pokud chcete rozdělit tmux relaci do různých podoken, můžete relaci rozdělit vertikálně pomocí Ctrl+B a poté % . Chcete-li panel vodorovně rozdělit, použijte Ctrl+B a poté jednu dvojitou uvozovku . Na níže uvedeném snímku obrazovky jsem nejprve rozdělil relaci vertikálně a poté jsem rozdělil pravý panel vodorovně.

Chcete-li přesunout kurzor z jednoho panelu do druhého, použijte Ctrl+B a poté podle kterékoli šipky pro pohyb tímto směrem.

Chcete-li ukončit relaci, aniž byste se k ní připojili, zadejte exit , použijete kill-session a poté zadejte relaci, která má být ukončena:

Existuje více možností pro tmux a lze je zobrazit pomocí Ctrl+B a poté ? :

[ Naučte se základy používání Kubernetes v tomto bezplatném cheatu. ] 

Další informace lze nalézt v manuálové stránce tmux . Tento článek poskytuje rychlý úvod do používání tmux příkaz, aby odpojená vzdálená relace neskončila náhodným zabitím procesu. Další program, který je podobný tmux je screen a můžete si přečíst o screen v tomto článku.


Linux
  1. Linuxové tipy pro používání GNU Screen

  2. 8 tipů pro příkazový řádek Linuxu

  3. Bash skript:Použití příkazu script z bash skriptu pro protokolování relace

  1. Linuxové tipy pro používání cronu k plánování úloh

  2. 3 tipy pro tisk s Linuxem

  3. 5 tipů pro GNU Debugger

  1. Tipy a triky pro použití CUPS pro tisk s Linuxem

  2. Použití Bash pro automatizaci

  3. 8 tipů pro spolehlivou automatizaci systému Linux