ターミナルマルチプレクサのススメ

Linux

概要

ターミナルマルチプレクサの概要と、その有用性について説明する。そして、その一つであるtmuxの使い方について説明する。

ターミナルマルチプレクサとは?

Linuxユーザーであればターミナルのお世話になる人も多いだろう。そんな人にはターミナルマルチプレクサの使用を検討してもいいだろう。

通常であれば、ターミナルと1つのプロセスが結びついている。例えば、以下の図のようにターミナルとbashが結びついており、ユーザーはターミナルを経由してbashに指示を送ることができる。このとき、ターミナルが落ちてしまうとそのうえで動いているプロセス(bash)も終了してしまう。

ターミナルマルチプレクサとは、一つのターミナルに複数の仮想ターミナルを起動させ、それぞれに別プロセスを割り当てることができる。また、ターミナルマルチプレクサはバックグラウンドで動作するため、実ターミナルと切断することもできる。そのため、実ターミナルが落ちてもターミナルマルチプレクサ、仮想ターミナル、そのうえで動いている各プロセス(bash, vim, python) は動き続ける。

何がうれしいのか?

ターミナルマルチプレクサの真価は画面を切り替えることではなく、プロセスを実ターミナルから切り離せることである。デスクトップ上でターミナル画面を開いている場合、ターミナルマルチプレクサを使う理由はない。このソフトはteratermなどでSSH接続でログインする局面で真価を発揮する。

SSHで接続していると、接続が切れるとそので動いているプロセスは落ちてしまう。会社のオフィスからサーバールームのサーバーにアクセスする場合は気にしなくてもよいが、自宅からリモートワークで会社のサーバーにアクセスする場合はネットワークの切断を考慮しなければいけない。

ターミナルマルチプレクサはターミナルが落ちても動き続けるようにできている。そのため、不慮の切断が起きても、その上のプロセスは動作し続ける。

tmuxの使い方

ここではターミナルマルチプレクサの一つであるtmuxの使い方について簡単に説明する。とりあえずこれだけ覚えておけば日常の使用には困らないだろう。

動作コマンド
起動$ tmux
ターミナルの追加Ctrl-b + c
ターミナルの選択Ctrl-b + w
tmuxから抜けるCtrl-b + d (tmuxで動いているプロセスは動いたまま)
ログ参照モードへの移行Ctrl-b + ]
ログ参照モードの終了q

コメント

タイトルとURLをコピーしました