今更ラズパイ4に手を出してみました.
で,vnc接続をしたかったので,ubuntu22.05をぶっ込んで設定してみた.
その方法をAIさんにまとめてもらったので,忘備録的に残しておく.
すごいよね,実行して成功したところだけを抜き出してきれいに整えてと頼むだけで,ちゃんと補完もされてる.でも正しいとは誰も言っていない(ぁw
1. 必要なパッケージのインストール
まず、必要なパッケージをインストールします。
sudo apt update
sudo apt install novnc python3-websockify tigervnc-standalone-server
2. CUIモードへの変更
- デフォルトターゲットの変更
sudo systemctl set-default multi-user.target
- 変更の確認
systemctl get-default
- 再起動
sudo reboot
3. サービスの登録
TigerVNCサービスの設定
- サービスファイルの作成
sudo nano /etc/systemd/system/tigervncserver@.service
- ファイルの内容
[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=mari
Group=mari
WorkingDirectory=/home/mari
ExecStart=/usr/bin/tigervncserver -xstartup /usr/bin/gnome-session -SecurityTypes VncAuth,TLSVnc -geometry 1980x1200 -localhost no :2
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
- サービスの有効化と起動
sudo systemctl daemon-reload
sudo systemctl enable tigervncserver@2.service
sudo systemctl start tigervncserver@2.service
noVNCサービスの設定
- サービスファイルの作成
sudo nano /etc/systemd/system/novnc.service
- ファイルの内容
[Unit]
Description=noVNC service
After=syslog.target network.target
[Service]
Type=forking
User=mari
Group=mari
WorkingDirectory=/home/mari
ExecStart=/usr/bin/websockify -D --web=/usr/share/novnc/ --cert=/home/mari/novnc.pem 6080 localhost:5902
[Install]
WantedBy=multi-user.target
- サービスの有効化と起動
sudo systemctl daemon-reload
sudo systemctl enable novnc.service
sudo systemctl start novnc.service
4. 動作確認
- サービスの状態確認
sudo systemctl status tigervncserver@2.service
sudo systemctl status novnc.service
- ログの確認
journalctl -u tigervncserver@2.service
journalctl -u novnc.service
これで、必要なパッケージがインストールされ、Raspberry Pi上のUbuntu 22がCUIモードで起動し、TigerVNCとnoVNCがサービスとして自動的に開始されるようになります。
Citations:
[1] https://pypi.org/project/websockify/
[2] https://discourse.openondemand.org/t/centos-7-x-python3-websockify-numpy-and-failed-to-connect-to-server/1347
[3] https://discourse.openondemand.org/t/websockify-from-ondemand-rpms/2112
[4] https://docs.citrix.com/ja-jp/linux-virtual-delivery-agent/current-release/configure/administration/session-shadowing.html
[5] https://www.server-world.info/query?f=8&os=Ubuntu_22.04&p=desktop
[6] https://github.com/novnc/websockify/blob/master/docker/Dockerfile
[7] https://vps-ea.com/tigervnc_novnc/
[8] https://matsuok.hatenablog.com/entry/2020/12/22/135233