アプリとサービスのすすめ

アプリやIT系のサービスを中心に書いていきます。たまに副業やビジネス関係の情報なども気ままにつづります

MacからJetson NanoにRDP接続する(Headless化)

Macからjetsonにssh接続できる環境は前の記事でできた。
trafalbad.hatenadiary.jp



けどいかんせん、Jetson Nano用のキーボード、マウス、ディスプレイをいちいち接続するのが面倒で邪魔だから、なんとかしたいということで、

コマンドライン操作だけできればいい
・他のデバイスにマイクロデバイス(PC)として付属させたい

という前提で、今度はRDP(Remote Desktop Protocol)で、Macからリモート接続してHeadless化してみた
VNC接続よりはるかに簡単なのでこっちの方がいい。


目次
1. jetson nanoにサーバーをinstall
2. Macにクライアントをinstallして、RDP接続でアクセス

1. jetson nanoにサーバーをinstall

まずJetson側でサーバー用のxrdpをinstallする。


Jetson側

# hostnameの変更 (parallels)
$ hostnamectl set-hostname <新しいホスト名> 
# ホスト名の確認
$ hostname
# Ubuntuのipアドレスを確認
$ ifconfig
>>>
## enp0s5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
## inet 10.xxx.xx.8  netmask 255.255.255.0  

# RDPサーバをインストール
$ sudo apt update

# xrdp単体だと落ちてしまうのでデスクトップ環境をxfceに変更
$ sudo apt install -y xfce4
$ echo xfce4-session > ~/.xsession

$ sudo apt install -y xrdp

/etc/xrdp/startwm.sh の最後の2行をコメントアウトして以下を追加
test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession

以下を追加
startxfce4

startxfce4
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession
# 再起動する
$ sudo reboot

****必要かわからないけど落ちないようにした操作

$ vi /etc/systemd/journald.conf
#Storage=aotoのオプション設定を「#」を削除して以下に変更
Storage=persistent
# 反映
$ systemctl restart systemd-journald.service


2. Macにクライアントをinstallして、RDP接続でアクセス

Mac

Microsoft Remote Desktop for Mac」をdownload。

「Add PC」から以下の項目を入れてく。
・PC名/ip address:10.xxx.xx.8($ ifconfig)
・ユーザー名:$ hostnameで調べたやつ
・パスワード:Jetson側のパスワード


問題なければ接続できた。

xrdpがうまく起動してることも確認できた。

# xrdpがうまく起動してることが確認
$ systemctl status xrdp

あっさりとheadless化できた。VNC接続なんかしなくてもこれでいいと思う。
ただubuntu21.14以降は環境が変わってるのでこのやり方ではダメらしい。

参考

Jetson NanoでMacから手軽にリモート接続する方法
XRDP client crashing on loading screen for Jetson Nano
【全オプション解説】journaldログが削除されない設定とおススメ設定を解説