ここでは、安全なローカルネットワーク上にあるRaspberry Pi 5 (Raspberry Pi OS)に、SSHでリモート接続を行う手順を確認している。
不意な切断でセッションが閉じて動作中コマンドが終了してしまうことを防ぐため、ターミナルマルチプレクサ(Terminal
Multiplexer)
である「tmux」を用いる方法についても触れている。
■ SSH接続でシステムにリモート接続する
◯ Raspberry Pi 5 (Raspberry Pi OS)にログインし、コマンドを実行できる状態にする
◯ SSHリモート接続の設定
次のように空のファイルを作成するだけでリモート接続設定が済む
# touch /boot/firmware/ssh
(IPフィルタが設定されている場合は必要な設定が別途必要である。)
◯ tmuxのインストール
ターミナルマルチプレクサ(Terminal
Multiplexer)
である「tmux」を導入しておく。これを用いると、リモート接続時コマンド実行中に接続が途切れたとしても、コマンドが強制終了せずに処理が継続されるようになる。また後からそのセッションに再接続することができる。また画面を分割して一つ一つの画面でコマンドプロンプトが使うこともできる。
# apt install tmux -y
◯ Raspberry Pi 5に割り当てられているIPアドレスの確認
再起動する前に、割り当てられているIPアドレスを確認しておく。
# ip a | grep inet
ネットワーク環境に依るが、ルーター類のDHCP機能により自動で、192.168.X.Xのようなアドレスが割り当てられていることが多い。これをメモしておく。リモート接続の際に使用する。
◯ 再起動
# reboot
◯ SSH接続でRaspberry Pi 5にログイン
別のLinuxマシン等のターミナルソフトを用いて、再起動前にメモしておいたIPアドレスにSSH接続してログインする。
usernameには設定したユーザー名、192.168.X.XにはメモしておいたIPアドレスを指定した。
$ ssh username@192.168.X.X
◯ tmux仮想端末を開く
上記、sshで接続ログイン後、プロンプト「username@raspberrypi:~ $」が表示されたら次のようにコマンドを入力するとtmux仮想端末のセッションが開く。
username@raspberrypi:~ $ tmux
仮想端末の詳しい使い方は他のマニュアルなどを参考にしてください。下記操作方法は一例です。
<セッションを新規作成>
・ターミナルマルチプレクサを有効にしセッションを作成するには、「tmux」を実行
<セッション操作>
・セッションから抜ける(バックグラウンドでセッションは動作)には、セッション内で、[ctrl]を押しながら[b]を押下した後、それらをいったん離して、[d]を押下(デタッチ)
・最後に切断したセッションに再接続するには「tmux a」を実行(アタッチ)
・動作中セッション番号の一覧を表示するには、「tmux ls」
・動作中セッションの番号を指定して接続するには「tmux a -t X」(Xはセッション番号)
・セッション終了するには、セッション内で「exit」を実行
<画面分割>
・画面縦に分割するには、セッション内で 、[ctrl]を押しながら[b]を押下した後、それらをいったん離して、[%]を押下(SHIFTを勿論使う)
・画面横に分割するには、セッション内で 、[ctrl]を押しながら[b]を押下した後、それらをいったん離して、["]を押下(SHIFTを勿論使う)