tmux
概要

通常、一つの端末アプリケーションで操作できるのは一つのシェルセッションのみである。複数の作業を並行して行うには、端末アプリケーションを何枚も開く必要がある。tmuxを使うと、一つの画面の中に複数の作業領域を作り出し、それぞれで別々のプログラムを動かせるようになる。
tmuxでは、まず「セッション」を作成し、その中に複数の「ウィンドウ」を配置できる。各ウィンドウはさらに「ペイン」と呼ばれる領域に分割でき、片方でログを確認しながらもう片方でコマンドを入力するといった使い方が可能である。操作はすべてキーボードのみで行う。
tmuxの利便性は、セッションを端末から切り離しても動作を継続できる点にある。作業中のセッションを「デタッチ」(detach)という操作で裏側に隠し、後から「アタッチ」(attach)という操作で元の状態のまま呼び出せる。利用者がサーバに接続して作業している最中に通信が途切れても、実行中のプログラムは止まらずサーバ側で処理を継続する。
再び接続し直してセッションにアタッチすれば、切断前の画面がそのまま表示される。時間のかかる処理を実行したまま端末を閉じ、別の作業を行うといった使い方もできる。複数の利用者が同一のセッションに同時にアタッチし、一つの画面を共有しながら共同作業を行うことも可能である。設定ファイルを編集することで、キー割り当てや画面の分割方法、外観などを好みに応じて変更できる。
tmuxは2007年に開発が始まり、それまで普及していた「screen」などに代わる存在として普及した。オープンソースソフトウェアとして公開されており、多くのLinuxディストリビューションやmacOSに標準で導入されているか、簡単な操作で追加できる。サーバ管理やソフトウェア開発の現場では、作業効率を高める定番のツールとして広く利用されている。