利用Linux (GNOME, Wayland) 和 Galaxy Tab S8+ 打造便携式扩展显示器

三星Galaxy Tab S系列只需轻触按钮,即可与Windows OS的电脑无缝连接,作为扩展显示器使用。然而,作为一名Linux用户,我一直对此感到遗憾。

经过一番探索,我找到了一个既简单又高效的方法,特此分享。

以下是使用 Ubuntu 笔记本电脑和 Galaxy Tab S8+ 打造无线扩展显示器的方法。核心在于 Wayland + GNOME Remote Desktop + RDP 扩展模式

在咖啡馆使用Ubuntu笔记本和平板电脑扩展显示器


1. 实现环境

  • 使用GNOME的 Linux 发行版 (我使用的是Ubuntu)
  • Wayland会话登录 (登录时可选择X11或Wayland会话)
  • Android平板电脑 (我使用的是Galaxy Tab S8+)
  • 处于同一Wi-Fi网络下
  • 在Galaxy Tab上安装Windows App (以前似乎叫Microsoft Remote Desktop)
  • 在内部IP段中,允许我的笔记本电脑访问3389端口 (GNOME RDP使用3389端口),并开放防火墙。

2. 确认是否为Wayland会话

在终端中确认。

echo $XDG_SESSION_TYPE
wayland

如果显示 x11,请退出登录,然后在登录界面选择Wayland会话重新登录。

一些OBS用户可能仍然偏好 X11 环境。当然,在 X11 中,虽然可以通过放大屏幕后利用VNC将特定区域显示在平板电脑上,但实际操作起来相当繁琐。系统会认为屏幕已扩大,但实际却是通过两个设备分区域显示,这带来了诸多不便。综合两种方式的体验,如果您追求最接近物理双显示器且最流畅舒适的环境,为了您的“身心健康”,我强烈建议使用Wayland。


3. 确认GNOME Remote Desktop是否安装

大多数情况下,它已默认包含。如果您想知道自己的电脑是否已安装,可以运行 systemctl status 命令进行确认。

 sudo systemctl status gnome-remote-desktop

如果状态为 inactive,那么就让服务开始工作吧。

systemctl --user restart gnome-remote-desktop

或者,如果您的电脑确实没有这个软件包,那就安装它。

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'。如果您想进行屏幕镜像,在设置时可以使用 mirror-primary 选项,而不是 extend 选项。 此设置提供两种选项,如下所示:

~$ 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登录密码是独立的。

在这里设置的用户名和密码将用于Galaxy Tab上的RDP客户端应用。


6. 确认笔记本电脑的内部IP

在终端中确认。

hostname -I
192.168.0.251 172.17.0.1 ......

使用Docker Network等多种网络的设备可能会显示多个IP。您需要输入笔记本电脑和平板电脑当前所处网络的IP地址。Galaxy Tab将通过此IP访问笔记本电脑。


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笔记本电脑的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英寸,作为辅助显示器相当实用。 噢!连接后触摸功能依然可用。

希望我的这篇帖子能对Linux用户有所帮助。

如果信息对您有用,请点个赞吧。