リナックス (GNOME, Wayland)とGalaxy Tab S8+でポータブル拡張モニターとして活用する

Samsung Galaxy Tab Sシリーズは、Windows OSと組み合わせればボタン一つでPCの拡張モニターとして利用できます。しかし、リナックスユーザーである私にとっては、それがいつも物足りなく感じていました。

何か良い方法はないかと探していたところ、非常に簡単で素晴らしい方法を見つけたので共有します。

以下に、UbuntuノートPCとGalaxy Tab S8+を使ってワイヤレス拡張モニターを構築する方法をご紹介します。ポイントはWayland + GNOME Remote Desktop + RDP 拡張モードです。

カフェでUbuntuノートPCとタブレットを拡張モニターとして使っている写真


1. 実現環境



  • GNOMEを使用する リナックス ディストリビューション (私はUbuntuを使用中)
  • Waylandセッションでログイン (ログイン時にX11またはWaylandを選択してログイン可能)
  • Androidタブレット (私の場合はGalaxy Tab S8+)
  • 同じWi-Fiネットワーク
  • Galaxy TabにWindows Appアプリをインストール (以前はMicrosoft Remote Desktopと呼ばれていたようです)
  • 内部IP帯域からノートPCの3389ポートにアクセスできるようにファイアウォールを開放 (GNOME RDPは3389ポートを使用)

2. Waylandセッションの確認

ターミナルで確認します。

echo $XDG_SESSION_TYPE
wayland

x11と表示された場合は、ログアウトしてログイン画面からWaylandセッションで再度ログインします。

OBSユーザーの中には、依然としてX11環境を好む方もいらっしゃるでしょう。もちろん、X11でも画面を拡大してVNCで特定の領域をタブレットに表示することは可能ですが、実際に使ってみるとかなり手間がかかります。システムは画面が大きくなったと認識するものの、実際には2つのデバイスに分割して見る形になるため不便です。両方の方法を経験した結果、物理的なデュアルモニターに最も近く、快適な環境を求めるのであれば、『精神衛生上』もWaylandの使用を強くお勧めします。


3. GNOME Remote Desktopのインストール確認



ほとんどの場合、デフォルトで含まれています。自分のPCにもあるか気になる方は、systemctl statusで確認してみてください。

 sudo systemctl status gnome-remote-desktop

inactive状態であれば、サービスに『さあ、仕事の時間だよ』と教えてあげましょう。

systemctl --user restart gnome-remote-desktop

あるいは、このパッケージが本当に自分のPCにない場合はインストールしましょう。

sudo apt update
sudo apt install gnome-remote-desktop

4. RDP画面共有モードを「拡張」に変更

以下のコマンドがポイントです。

gsettings set org.gnome.desktop.remote-desktop.rdp screen-share-mode extend

適用確認:

gsettings get org.gnome.desktop.remote-desktop.rdp screen-share-mode
'extend'

'extend'と表示されます。もしミラーリングをしたい場合は、setする際にextendオプションではなくmirror-primaryオプションを指定します。 この設定では、以下のように2つの選択肢があります。

~$ gsettings range org.gnome.desktop.remote-desktop.rdp screen-share-mode
enum
'mirror-primary'
'extend'

5. UbuntuでRemote Desktopを有効にする

Ubuntuの設定に移動します。

  • Settings > System > Remote Desktop

一番上にある以下をオンにします。

  • Desktop Sharing
  • Remote Control

ポートは3389のままでも構いませんが、変更したい場合は、そのポートに合わせてファイアウォールの設定を開放してください。

そして、接続用のusername / passwordを設定します。

ここで設定するパスワードは、Ubuntuのログインパスワードとは別のパスワードであることに注意してください。

ここで設定するusername、passwordは、Galaxy TabのRDPクライアントアプリで使用します。


6. ノートPCの内部IPを確認

ターミナルで確認します。

hostname -I
192.168.0.251 172.17.0.1 ......

Docker Networkなど、複数のネットワークを使用しているデバイスでは、複数のIPが表示されることがあります。現在ノートPCとタブレットが接続されているネットワークのIPアドレスを使用してください。このIPアドレスを使ってGalaxy TabがノートPCにアクセスします。


7. ファイアウォールの確認

ufwを使用している場合は、同じ内部ネットワークからのみRDPポート(3389)を許可しましょう。

例: ルーターの帯域が192.168.0.xの場合

sudo ufw allow from 192.168.0.0/24 to any port 3389 proto tcp

状態確認:

sudo ufw status

ご存知だとは思いますが、外部インターネット全体にポートを開放しないことをお勧めします。世の中には変な人が本当にたくさんいますからね。


8. Galaxy TabでWindows Appを設定

あと少しです。

App Store…?あれ?Play Storeでしたっけ?時々名前が分からなくなりますね。とにかくアプリをダウンロードしてインストールしましょう。 様々なRDPクライアントプログラムがありますが、なぜか名前からして信頼できそうなWindows Appを選んでインストールしました。

アプリを起動します。あとは簡単です。UIがよくできていますね。

新しい接続を追加します。

  • PC name: UbuntuノートPCのIPアドレス
  • User name / Password: Ubuntu Remote Desktopで設定した値

例:

PC name: 192.168.0.251

接続に成功すると、Galaxy Tabが拡張モニターのように動作します。Ubuntuの右上にあるステータスバーに、RDP接続中でストリーミング中であることがオレンジ色で表示されます。

RDPで接続されたディスプレイは、物理的なHDMIケーブルで接続されたモニターと基本的に同じように制御できます。Settings > Displaysでモニターの位置やその他の設定を好みに合わせて調整してください。


9. 解像度調整

Galaxy Tab S8+はかなり解像度が高いため、デフォルト設定で接続すると画面が広すぎたり、文字が小さすぎたりして不便に感じることがあります。 解像度を調整するには、一度接続を切断し、Windows Appアプリで保存されているプロファイルを長押しすると設定編集ができるので、元の解像度(native resolution)の代わりに、提供されている解像度の中から自分にとって最も快適な解像度を選んで再保存しましょう。


10. 元に戻す

終了する際は、Ubuntu右上のRDPストリーミング中を示すオレンジ色のボタンをオフにするだけで大丈夫です。

最初に設定した拡張モードをリセットしたい場合は:

gsettings reset org.gnome.desktop.remote-desktop.rdp screen-share-mode

Remote Desktop自体をオフにするには、Ubuntuの設定でDesktop Sharingをオフにします。


まとめ

これは本当に素晴らしいです。これで、オフィスではないカフェで少し作業をしたい時でも、Galaxy Tabを取り出してモニターを拡張して使えるようになりました。まさに新世界です。なぜもっと早く知らなかったのかとさえ思います。

数年前にS8+を購入し、しばらくは色々と活用していましたが、最近ではYouTubeを見るだけの高価なツールに過ぎませんでした。それが、まるで新しい命を吹き込まれたかのような感覚です。Galaxy Tab S Plusシリーズは12.4インチの画面なので、サブモニターとしても十分に利用価値があります。あ、接続後もタッチ操作は引き続き可能です!

リナックスユーザーの皆さんに、この投稿が少しでもお役に立てれば幸いです。

情報が役立ったと感じたら、ぜひ「いいね」をお願いします。