LinuxでTmuxセッションを管理および復元する方法

Tmuxの特集画像

Tmuxは、幅広い便利な機能を備えたターミナルマルチプレクサであり、驚くほど多くのコミュニティ製プラグインに支えられています。tmuxやScreenのようなターミナルマルチプレクサは、タブや分割画面で複数のセッションを開くことができ、ターミナルウィンドウに超生産性の力を与えます。複数のターミナルツールやセッション保存と組み合わせることで、ハードリブート後にTmuxセッションを復元することもできます。

こちらもお読みください: 友達とターミナルセッションを共有する方法

tmuxのインストール

Linuxディストリビューションを使用している場合、tmuxを準備して実行するのは比較的簡単です。

Ubuntuの場合、ターミナルからaptを呼び出し、ディストリビューションの公式リポジトリからパッケージをインストールします。他のディストリビューションでは、付属のパッケージマネージャを使用してインストールを処理します。(tmuxはほとんどのディストリビューションで利用可能です。)

sudo apt-get install tmux

Tmuxのインストール

わかりましたか?素晴らしい!では、画面を分割しましょう。

ウィンドウとペインの作成

tmuxでは、作成できるレイアウト構成の主なタイプを説明するために2つの用語が使用されます。「ウィンドウ」は、tmuxのタブの用語です。新しいウィンドウを作成すると、簡単なコマンドで切り替え可能なタブが作成されます。

「ペイン」は、現在の「ウィンドウ」またはタブの分割であり、コマンドを使用して切り替えることもできます。

これらを作成する前に、tmuxはモーダルであることに注意することが重要です。これは、ターミナルセッションとtmuxとの相互作用が別々の「モード」で行われることを意味します。これにより、通常通りに開く各ターミナルセッションを使用しながら、誤ってtmuxコマンドをアクティブにすることがありません。

tmuxにアクセスし、コマンドを発行するには、まず新しいtmuxセッションを開始し、それに名前を付けます:

tmux new -s babytmux

Tmuxセッション

もちろん、名前(「babytmux」)を変更しても構いません!

tmuxはすぐに開き、新しいシェルセッションが開始されるはずです。しかし、私たちは1つ以上のセッションが必要です、覚えていますか?

tmuxのコマンドモードに入るには、プレフィックスを使用する必要があります。これは通常、Ctrlとbを同時に押すことです。プレフィックスを押しても何も変わらないように見えますが、その後に:を入力することでコマンドを入力できます。コマンドモードを終了するには、Enterを押してコマンドを完了するか、ESCキーを押して変更を加えずに終了します。

ヒント: 基本的なキーバインディングの完全な概要を得るために、Tmuxキーボードショートカットチートシートを入手してください。

水平分割を作成するためにショートカットを使用します:Ctrlとbを押し、次に”。

Tmuxの水平分割

クール!これで、次のように2つの間を移動できます:Ctrlとbを押し、次にo。

Tmuxペインの切り替え

各セッションは他のセッションとは独立しているため、各セッションで別々のプログラムを開くことができます。画面を縦に分割してみましょう:Ctrlとbを押し、次に%。

各ペインで好きなものを開いても、他のペインにアクセスしている間も実行され続けます。

Tmuxの四分割

ウィンドウを作成するには、次のようにします:Ctrlとbを押し、次にc。

前のウィンドウに戻るか、次のウィンドウに進むには:

Ctrlとbを押し、次にp

または

Ctrlとbを押し、次にn

Tmuxウィンドウの切り替え

画面の下部にあるステータスバーには、各ウィンドウで実行中のプロセスと、参照用に「*」で示された現在のウィンドウが表示されます。

このtmuxセッションを終了するには、次のようにします:Ctrlとbを押し、次に:detach-client

Tmuxのデタッチ

マシンが再起動されるか、手動でキャンセルしない限り、セッションは実行を停止しません。再度アクセスするには、次のようにします:

tmux a -t babytmux

再起動後に戻ることができる本当に不死のtmuxセッションを作成するには、プラグインを1つか2つインストールする必要があります。

プラグインのインストール

tmuxでプラグインを使用するのは比較的簡単です。ただし、後のプラグインインストールを簡単にするために、プラグインマネージャをインストールすることができます。

プラグインマネージャ

Tmuxプラグインマネージャをインストールするには、次のコードを使用してGithubからファイルをクローンします:

git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

次に、ホームフォルダの「.tmux.conf」に次のコードを追加します:

# プラグインのリスト  
set-g @plugin 'tmux-plugins/tpm'  
set-g @plugin 'tmux-plugins/tmux-sensible'  
  
# その他の例:  
# set -g @plugin 'github_username/plugin_name'  
# set -g @plugin '[email protected]/user/plugin'  
# set -g @plugin '[email protected]/user/plugin'  
  
# TMUXプラグインマネージャを初期化する(この行はtmux.confの一番下に置いてください)  
run -b '~/.tmux/plugins/tpm/tpm'

Tmuxプラグインマネージャ

上記のように、今後インストールしたい各プラグインのgithubユーザー名とプラグイン名(プラグインのgithub URLに記載されています)を追加する必要があります。プラグインマネージャが残りを処理します。プラグインマネージャを動作させるために、次のコードを使用します:

tmux source ~/.tmux.conf

次に、再起動後にセッションを復元するために必要なプラグインについて読み続けてください。

Resurrect

Tmux Resurrectは、その名前が示す通り、保存されたセッションを簡単なコマンドで復活させます。

このプラグインは、次の内容を「.tmux.conf」ファイルに追加することでインストールできます:

set-g @plugin 'tmux-plugins/tmux-resurrect'

Tmux Resurrect

次に、tmuxで次のコマンドを使用してTmuxプラグインマネージャにインストールさせます:Ctrlとbを押し、次にI(これは大文字の「i」です)。

Tmuxプラグインのインストール

インストールが完了したら、次のようにセッションを開始して保存できます:Ctrlとbを押し、次にCtrl + s。

セッションを復元するには、Ctrlとbを押し、次にCtrl + rを使用できます。

Tmuxセッションの復元

上記を使用することで、再起動後もすべての好みのツールとプロセスを維持した不死のtmuxセッションを維持できます。試してみて、ターミナルから最大限に活用するためにtmuxの機能をさらに探求してください。