# 利用Linux (GNOME, Wayland) 和 Galaxy Tab S8+ 打造便携式扩展显示器 三星Galaxy Tab S系列只需轻触按钮,即可与Windows OS的电脑无缝连接,作为扩展显示器使用。然而,作为一名Linux用户,我一直对此感到遗憾。 经过一番探索,我找到了一个既简单又高效的方法,特此分享。 以下是使用 [[Ubuntu]] 笔记本电脑和 Galaxy Tab S8+ 打造**无线扩展显示器**的方法。核心在于 **Wayland + GNOME Remote Desktop + RDP 扩展模式**。 ![在咖啡馆使用Ubuntu笔记本和平板电脑扩展显示器](/media/whitedec/blog_img/41a132ba6e1d4671985e3350faeeb410.webp) --- ## 1. 实现环境 {#sec-7b7cf938220c} * 使用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会话 {#sec-8c5e1facd628} 在终端中确认。 ```bash echo $XDG_SESSION_TYPE wayland ``` 如果显示 `x11`,请退出登录,然后在登录界面选择Wayland会话重新登录。 一些OBS用户可能仍然偏好 `X11` 环境。当然,在 `X11` 中,**虽然可以通过放大屏幕后利用VNC将特定区域显示在平板电脑上**,但实际操作起来相当繁琐。系统会认为屏幕已扩大,但实际却是通过两个设备分区域显示,这带来了诸多不便。综合两种方式的体验,如果您追求最接近物理双显示器且最流畅舒适的环境,为了您的“身心健康”,我强烈建议使用Wayland。 --- ## 3. 确认GNOME Remote Desktop是否安装 {#sec-50a19f9a1345} 大多数情况下,它已默认包含。如果您想知道自己的电脑是否已安装,可以运行 `systemctl status` 命令进行确认。 ```bash sudo systemctl status gnome-remote-desktop ``` 如果状态为 `inactive`,那么就让服务开始工作吧。 ```bash systemctl --user restart gnome-remote-desktop ``` 或者,如果您的电脑确实没有这个软件包,那就安装它。 ```bash sudo apt update sudo apt install gnome-remote-desktop ``` --- ## 4. 将RDP屏幕共享模式更改为“扩展” {#sec-7e9cffc8cb67} 以下命令是关键。 ```bash gsettings set org.gnome.desktop.remote-desktop.rdp screen-share-mode extend ``` 确认是否生效: ```bash gsettings get org.gnome.desktop.remote-desktop.rdp screen-share-mode 'extend' ``` 显示 `'extend'`。如果您想进行屏幕镜像,在设置时可以使用 `mirror-primary` 选项,而不是 `extend` 选项。 此设置提供两种选项,如下所示: ```bash ~$ gsettings range org.gnome.desktop.remote-desktop.rdp screen-share-mode enum 'mirror-primary' 'extend' ``` --- ## 5. 在Ubuntu中开启Remote Desktop {#sec-32f9dd02c7dd} 前往 [[Ubuntu]] 设置。 * **Settings** > **System** > **Remote Desktop** 打开最上方的以下选项: * **Desktop Sharing** * **Remote Control** 端口可以保持3389不变,如果需要更改,只需在防火墙中开放相应端口即可。 然后设置连接用的 **username / password**。 请注意,此处设置的密码与Ubuntu登录密码是独立的。 > 在这里设置的用户名和密码将用于Galaxy Tab上的RDP客户端应用。 --- ## 6. 确认笔记本电脑的内部IP {#sec-f65803da5fc2} 在终端中确认。 ```bash hostname -I 192.168.0.251 172.17.0.1 ...... ``` 使用Docker Network等多种网络的设备可能会显示多个IP。您需要输入笔记本电脑和平板电脑当前所处网络的IP地址。Galaxy Tab将通过此IP访问笔记本电脑。 --- ## 7. 确认防火墙设置 {#sec-e3033be1bd8c} 如果您正在使用 `ufw`,请只允许同一内部网络访问RDP端口 (3389)。 例如:如果路由器网段是 `192.168.0.x` ```bash sudo ufw allow from 192.168.0.0/24 to any port 3389 proto tcp ``` 确认状态: ```bash sudo ufw status ``` > 大家都应该知道,最好不要将端口完全暴露给外部互联网。毕竟,世界上奇怪的人太多了。 --- ## 8. 在Galaxy Tab上设置Windows App {#sec-68e408e2ed22} 我们快完成了。 App Store...?嗯?还是Play Store?名字有时会让人混淆。无论如何,请下载并安装该应用。市面上有很多RDP客户端程序,但我选择了听起来就让人信任的 `Windows App`。 运行应用。接下来就很简单了,它的UI设计得很好。 添加新连接。 * **PC name**: Ubuntu笔记本电脑的IP * **User name / Password**: 在Ubuntu Remote Desktop中设置的值 例如: ```text PC name: 192.168.0.251 ``` 连接成功后,Galaxy Tab将像**扩展显示器**一样工作。Ubuntu右上方状态栏会显示橙色图标,提示RDP连接正在进行流传输。 通过RDP连接的显示器,其基本控制方式与通过物理HDMI线缆连接的显示器相同。您可以在 **Settings** > **Displays** 中根据个人喜好调整显示器位置及其他设置。 --- ## 9. 调整分辨率 {#sec-80cf2722247b} Galaxy Tab S8+的屏幕分辨率很高,如果以默认设置连接,画面会显得过于宽广,文字也会太小,使用起来不便。要调整分辨率,需要暂时断开连接,然后在Windows App应用中长按保存的配置文件即可编辑设置。请选择一个最适合您的分辨率(而不是原始分辨率 `native resolution`),然后重新保存。 --- ## 10. 恢复默认设置 {#sec-7ff9f0cc73be} 关闭时,只需点击Ubuntu右上方RDP流传输指示的橙色按钮即可。 如果您想重置最初设置的扩展模式: ```bash gsettings reset org.gnome.desktop.remote-desktop.rdp screen-share-mode ``` 要关闭Remote Desktop本身,只需在Ubuntu设置中关闭 **Desktop Sharing** 即可。 --- ## 总结 {#sec-1889bb978319} 这真是太棒了!现在,即使在咖啡馆而不是办公室里临时工作,我也能拿出Galaxy Tab作为扩展显示器使用。简直是新世界!我甚至在想,为什么我到现在才知道这个方法。 几年前我购买了S8+,虽然一度尝试了各种用法,但最近它几乎沦为只能看YouTube的昂贵工具。现在感觉它获得了新生。Galaxy Tab S Plus系列屏幕尺寸为12.4英寸,作为辅助显示器相当实用。 噢!连接后触摸功能依然可用。 希望我的这篇帖子能对Linux用户有所帮助。 如果信息对您有用,请点个赞吧。