JetsonNanoをリモートデスクトップで操作する

JetsonNanoをリモートデスクトップで操作する

今回はリモートデスクトップを利用してホストPC(MacBook)からJetsonを操作できる方法を紹介しようと思います。
IP調べてポート開けてVNC接続..みたいに一筋縄ではいかなかったので今回まとめました。

(JetsonNanoの環境構築についてはこちらから)

 

JetsonNanoの設定
 まずUbuntu側の不具合?について
Ubuntu18.04では設定から「Desktop Sharing」機能を利用してデスクトップ共有が可能ですが、なんとクリックするとクラッシュしてしまいます…
ただし、「Desktop Sharing」を正常に使える方法はあるため、以下で説明していきます。
 
以下のコマンドでorg.gnome.Vino.gschemaを編集し、「Desktop Sharing」の復元を行います。

org.gnome.Vino.gschema内に以下を追記します。

そしてGnomeスキーマをコンパイルします。

設定から「Desktop Sharing」を選択してみてください。
無事に開けたなら成功です。

そのままリモートデスクトップの設定としてパスワード入力もやってしまいましょう!
以下のようになります。

DesktopSharing

続いてターミナルへ戻り、以下を実行します。
VNC接続の暗号化を無効にする必要があるようです。

vinoをインストールします。

私の場合はここで以下のエラーが出力されました。
E: Could not get lock /var/lib/apt/lists/lock – open (11: Resource temporarily unavailable)
他のプロセスがaptを使用していることが原因のようです。

使用しているプロセスを探します。

実行結果以下みたいになります。

apt kill

見つかったプロセスをkillしていきます。(PIDは上記でいう9280,9286…のとこを指します)

再度実行、しかしまたエラーが…
E: dpkg was interrupted, you must manually run ‘sudo dpkg –configure -a’ to correct the probrem.
エラーに書かれているとおりに以下を実行すれば大丈夫でした!

もう一度vinoをインストールしたら成功しました。
(すでにインストールされてた…)

接続しているネットワークのUUIDを調べます。

dconfで調べたUUIDを設定し、有効化します。

vinoを起動します。

生きているポートも確認しておきます。

実行結果以下みたいになります。右端の「STATE」が「LISTEN」となっているポートを利用してください。
port

これでJetson側の設定は完了です!
以下のURLでホスト側から接続できます。
vnc://192.168.10.251:5901(IPはifconfigコマンドなりで調べてください)

Macの場合、標準でVNCサーバーがあり、Finderの[移動]->[サーバへ接続]で起動できます。
サーバアドレスにVNCサーバのIPを入力し、接続を押せば繋がるはずです。
お疲れ様でした。

DesktopSharing

[補足]
使用感としてはレスポンスが遅く、ちょっと微妙です…
コーディングなどガリガリ書いていく分にはssh接続にしてホスト側のVScodeなどで作っていく方が良いかもしれません。
また時間ができたときにでも改善策など調べておきます。

以上。

参考:
https://devtalk.nvidia.com/default/topic/1049193/jetson-nano/ubuntu-internal-error-when-selecting-desktop-sharing-in-settings-/2

http://qshino.hatenablog.com/entry/2019/06/11/223344