2023/6/13 PolicyKit1 KDE Agentダイアログのスクリーンショットに不整合があったので差し替えました。
こちらの記事の続きです。 suzu-ha.com
前回はROCK 4C+にDebianをインストールし、日本語化までやりました。
今回は、リモートデスクトップでGUI操作できるようにします。
リモートデスクトップの手段
VNCとRDPどっちにするか?という話です。
クライアントソフトウェアを個別にインストールしなくてもいい(Windowsパソコンなら標準装備)という、それだけの理由でRDPにします。
Xrdpの導入
こちらのサイトを参考にしました。
Xrdp configuration on Debian
xrdpとtigervnc-standalone-serverを導入します。
tigervnc-standalone-serverは、xrdpのバックエンドとして使用されるみたいです。
$ sudo apt install xrdp tigervnc-standalone-server
xrdpパッケージ導入時に作成されるxrdpユーザを、ssl-certグループに所属させます。(必要性は不明です。調べなきゃ。)
その後、xrdpサービスを再起動します。
$ sudo usermod -a -G ssl-cert xrdp $ sudo systemctl restart xrdp $ sudo systemctl status xrdp
RDP接続
ROCK4の物理コンソールでログイン中の場合は、ログアウトしておきます。(後述の制約事項のため)
Windowsパソコンのリモートデスクトップクライアントで、ROCK4のIPアドレスに接続します。
このような画面が表示されます。
SessionをXvncに変更し、username/passwordを入力してログインします。
※SessionがXorgのままだとうまく接続できませんでした。
動作が重めですが、少し待つとデスクトップ画面が表示され、操作可能になりました。
クリップボード共有もうまく動作しており、ROCK4とクライアントのWindowsパソコンとの間でファイルのコピペが出来ました。
(もちろん、文字列のコピペも可能です。)
PolicyKit1 KDE Agentダイアログの対処
RDPログインするたびにこのようなダイアログが表示されます。
こちらのサイトを参考に対処しました。
Ubuntu 20.04, ネットワーク設定変更時の認証を回避する · えやみぐさ
設定ファイルを作成するディレクトリを確認します。
→何もありませんでした。
$ sudo ls -l /etc/polkit-1/localauthority/50-local.d 合計 0
設定ファイルを作成します。
$ sudo touch /etc/polkit-1/localauthority/50-local.d/50-allow-network-manager.pkla $ sudo vi /etc/polkit-1/localauthority/50-local.d/50-allow-network-manager.pkla
ファイルの中身は以下のとおりです。
[Allow Network Manager all Users] Identity=unix-user:* Action=org.freedesktop.NetworkManager.settings.modify.system;org.freedesktop.NetworkManager.network-control ResultAny=no ResultInactive=no ResultActive=yes
設定ファイルの作成後、いったんログオフし再度RDP接続したところ、PolicyKit1 KDE Agentダイアログは出なくなりました。
制約事項:物理コンソールとRDPで同一ユーザの同時ログオンは出来ない
systemdベースのLinuxディストリビューションでは、物理コンソールとRDPで同一ユーザの同時ログオンは出来ません。(これでちょっとハマりました。)
githubのxrdpページのwikiに明記してありました。
Tips and FAQ · neutrinolabs/xrdp Wiki · GitHub
先にRDP接続する
→物理コンソールで同じユーザでGUIログオンを試みる
→物理コンソールの応答なし
→RDPの方でログオフ操作する
→ログオフのダイアログが物理コンソールの方に表示される
みたいな滅茶苦茶なことが起きますw
次回は、GPIOからとっている冷却ファンの電源を、ファンコネクタに切り替えます。
suzu-ha.com