2019年4月23日火曜日
同時に複数のマシーンで同じ操作をする with Tmux
4月 23, 2019
sitateruのエンジニア北爪です。
複数のシェルで同じ操作をしたい時ってないですか?
- ログを一箇所に集めてないけど、アプリケーションサーバーが複数台ある
- 複数台同時にtopコマンドで負荷をまたはtailコマンドでログを調査したい
など調査段階でAnsible, Fabやcapistranoで操作するほどではなく、複数のサーバーを同じようにインタラクティブに操作したいという要求はあるように思います。
今回は複数のシェルに対して、分割された画面をみなが同時に操作、そのコマンドラインの結果を参照することが可能です。
tmuxを風にいうと、一つのpaneに行うキーボード操作をそのpaneが存在しているWindow内すべてのpaneキーボード操作を同期することができます。
この機能は、tmuxの synchronize-panes 機能です。tmuxを使ってない人には導入する大きなメリットの一つになるのではないかとお思います。デフォルトです。
http://man.openbsd.org/OpenBSD-current/man1/tmux.1#synchronize-panes
使い方
1. tmuxを起動し、複数のpaneを作成がある状態で2. tmuxにbindしてあるtmuxのprefixキーを入力した後で、 `:` を入力します
(余談私は ctrl-t にしています)
# act like GNU screen
unbind C-b
set -g prefix C-t
3. tmux用のコマンドが立ち上がるので、そこに、
set synchronize-panes on
を入力します。4. そうするとなんと!表示されているpane(分割した画面) に同じキーボード操作が入力されます
5. もう同期したくなくなったら、
set synchronize-panes off
にて解除することが可能です。以上です。
登録:
投稿 (Atom)