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

今回はリモートデスクトップを利用してホストPC(MacBook)からJetsonを操作できる方法を紹介しようと思います。
IP調べてポート開けてVNC接続..みたいに一筋縄ではいかなかったので今回まとめました。
(JetsonNanoの環境構築についてはこちらから)
Ubuntu18.04では設定から「Desktop Sharing」機能を利用してデスクトップ共有が可能ですが、なんとクリックするとクラッシュしてしまいます…
ただし、「Desktop Sharing」を正常に使える方法はあるため、以下で説明していきます。
1 |
$ sudo vi /usr/share/glib-2.0/schemas/org.gnome.Vino.gschema.xml |
org.gnome.Vino.gschema内に以下を追記します。
1 2 3 4 5 6 7 8 9 |
<key name=’enabled’ type=’b’> <summary>Enable remote access to the desktop</summary> <description> If true, allows remote access to the desktop via the RFB protocol. Users on remote machines may then connect to the desktop using a VNC viewer. </description> <default>false</default> </key> |
そしてGnomeスキーマをコンパイルします。
1 |
$ sudo glib-compile-schemas /usr/share/glib-2.0/schemas |
設定から「Desktop Sharing」を選択してみてください。
無事に開けたなら成功です。
そのままリモートデスクトップの設定としてパスワード入力もやってしまいましょう!
以下のようになります。
続いてターミナルへ戻り、以下を実行します。
VNC接続の暗号化を無効にする必要があるようです。
1 2 |
$ gsettings set org.gnome.Vino require-encryptsion false $ gsettings set org.gnome.Vino prompt.enabled false |
vinoをインストールします。
1 |
$ sudo apt install vino |
私の場合はここで以下のエラーが出力されました。
E: Could not get lock /var/lib/apt/lists/lock – open (11: Resource temporarily unavailable)
他のプロセスがaptを使用していることが原因のようです。
使用しているプロセスを探します。
1 |
$ ps aux | grep apt | grep -v 'grep' |
実行結果以下みたいになります。
見つかったプロセスをkillしていきます。(PIDは上記でいう9280,9286…のとこを指します)
1 |
$ sudo kill <PID> |
再度実行、しかしまたエラーが…
E: dpkg was interrupted, you must manually run ‘sudo dpkg –configure -a’ to correct the probrem.
エラーに書かれているとおりに以下を実行すれば大丈夫でした!
1 |
$ dpkg --configure -a |
もう一度vinoをインストールしたら成功しました。
(すでにインストールされてた…)
接続しているネットワークのUUIDを調べます。
1 |
$ nmcli connection show |
dconfで調べたUUIDを設定し、有効化します。
1 |
$ dconf write /org/gnome/settings-daemon/plugins/sharing/vino-server/enabled-connections "['ここにUUIDを入力']" |
vinoを起動します。
1 |
$ /usr/lib/vino/vino-server |
生きているポートも確認しておきます。
1 |
$ netstat -nlt |
実行結果以下みたいになります。右端の「STATE」が「LISTEN」となっているポートを利用してください。
これでJetson側の設定は完了です!
以下のURLでホスト側から接続できます。
vnc://192.168.10.251:5901(IPはifconfigコマンドなりで調べてください)
Macの場合、標準でVNCサーバーがあり、Finderの[移動]->[サーバへ接続]で起動できます。
サーバアドレスにVNCサーバのIPを入力し、接続を押せば繋がるはずです。
お疲れ様でした。
[補足]
使用感としてはレスポンスが遅く、ちょっと微妙です…
コーディングなどガリガリ書いていく分にはssh接続にしてホスト側のVScodeなどで作っていく方が良いかもしれません。
また時間ができたときにでも改善策など調べておきます。
以上。
-
前の記事
JetsonNanoで顔認証(face_recognition)⓵ 2019.07.24
-
次の記事
JetsonNanoで顔認証(face_recognition)② 2019.10.09