課題
sshを利用してRaspberry Piなどのリモートのサーバーに接続中、
突然接続が切れてしまったり、うっかり端末を閉じてしまったりすることがある。
こんなとき、最初からやり直しが発生するのは精神衛生上良くない。
以下、Raspberry Piにssh接続することを想定する。
解決策
tmuxというツールを利用することで、この課題を解決することができる。
tmuxはsshでログインした端末とは別の端末を作成し、
その端末上でターミナル作業ができるものだ。
そのため、ssh接続が切れて(sshした端末が削除されて)しまっても
tmuxによって作成された端末は無事のため、再接続さえすれば良い
というものである。
その他、複数の端末操作やターミナル画面の分割などもできるので、
ssh接続時だけではなく結構便利なソフトである。
準備
あらかじめsshでログインする対象の端末(Raspberry Piなど)に
tmuxをインストールしておく必要がある。
# tmuxのインストール $ sudo apt install tmux # コマンドが有効か確認する $ which tmux /usr/bin/tmux
使い方
sshでログイン直後に、tmux
コマンドを打っておくだけだ。
# ログイン $ ssh ユーザー名@ホスト名 # tmuxの起動 $ tmux # ------ここでターミナルを閉じてみる------- # 端末を新たに開き、もう一度sshでログインする $ ssh ユーザー名@ホスト名 # tmux環境(セッション)の一覧を表示 $ tmux ls 0: 1 windows (created Wed Oct 7 23:50:06 2020) [100x29] # 上記のセッションに再度接続する $ tmux attach # →ここから作業の続きができる
tmux
利用時は画像のように画面下部にステータスバーが表示される。
まとめ
- tmuxはssh接続がうっかり切れてしまった時に役に立つソフト
- リモートサーバーを操作するときは、入れておくと便利
- 他にもターミナル操作を便利にする機能やコマンドが用意されているので、別途調べると良い