Raspberry Pi OS 12でVNC Viewerを自動起動&自動接続する方法!

Raspberry Pi OS バージョン12(Bookworm)で、
起動と同時に RealVNC Viewer を立ち上げ、
指定したIPアドレスへ自動接続する方法を紹介します。
毎回接続する手間がなくなり
例えば、2台目のRaspberry Piに常時リモート接続したい場面
毎回接続する手間がなくなりとても便利です!
【記事内にアフィリエイトリンクが含まれています】
事前準備(必須)
ここで紹介する自動起動は、
次のことが、出来ている事が前提条件です。
①RealVNC Viewer がインストール済み
②Raspberry Pi が「GUIの自動ログイン」に設定されている
③一度手動でVNC接続して、パスワードを保存しておく
(Save Password にチェックする)
自動ログインの確認・設定
ターミナルで次のコマンドを実行します。
【設定画面を開くコマンド】
sudo raspi-config
設定画面が開いたら
次の順に設定します。
→ System Options
→ Boot / Auto Login
→ Desktop Autologin を選択
これでGUIで自動ログインされるようになります。



後はすべて、<了解>を選択します。

VNC Viewerを起動して設定する
VNC Viewerで一度接続しパスワードを保存します。
次回以降はパスワード入力が不要にします。
デスクトップから VNC Viewer を起動
接続先IP(例:192.168.0.200)を入力して接続
パスワード入力時、「Save Password」にチェック ✅
→ これで次回以降はパスワード入力が不要になります。
一度 VNC Viewer で接続して、パスワード保存
デスクトップから VNC Viewer を起動
対象のIPアドレス(例:192.168.0.200)に接続
パスワード入力時に「Save Password」にチェックを入れる
→ これで今後はコマンドで起動してもパスワードが不要になります。
VNC Viewer を自動起動スクリプトの作成
ターミナルで以下を実行して
VNC Viewer を自動起動スクリプトの作成します。
【スクリプトの作成コマンド】
nano ~/auto_vnc.sh
ファイル内のCODEは、
以下を入力します。
(IPアドレスは接続したいIPを入力してください)
【VNC Viewer を自動起動スクリプトCODE】
#!/bin/bash
sleep 10
vncviewer 192.168.2.141

sleep 10 で、10秒待つを入れていますが
動作が安定していれば、無くでもよいです。
私の場合は、
良かったり悪かったりしたので
後で、『sleep 10 』を追加しています。
保存して閉じます(Ctrl+O → Enter → Ctrl+X)
作成したスクリプトに実行権限を付けます。
【実行権限コマンド】
chmod +x ~/auto_vnc.sh
自動起動に登録(Bookworm用)する
BookwormではLXDEの autostart が使えないため、
『auto_vnc.desktop』ファイルを手動で作成します。
【作成コマンド】
mkdir -p ~/.config/autostart
nano ~/.config/autostart/auto_vnc.desktop
~/.config/autostart にある .desktop ファイルを作成します。
以下の通り作成します。
(そのまま、コピペしてください)
[Desktop Entry]
Type=Application
Name=Auto VNC Connect
Exec=/home/pi/auto_vnc.sh
X-GNOME-Autostart-enabled=true

保存して閉じます。
起動して確認します。
再起動します。
sudo reboot
→ デスクトップが表示されたあと、
自動的に VNC Viewer が起動して、
指定したIPのリモート画面が開けば成功です!
VNC Viewerが起動しない場合は、
初めからやり直しましょう、
どこか間違えがあります。