Linux—如何设定使用两个触控屏幕
2026/03/24 |By G小編
随着Linux发行版默认采用Wayland 图形显示协议,现行搭配Debian 13 (Trixie) 使用的桌面也多预设使用Wayland。这些桌面环境的系统设定接口已经能正确侦测并设定单一触控屏幕;例如,Gnome桌面、Plasma桌面、Ubuntu桌面, Raspberry Pi桌面,在连接"一台"触控屏幕时,均能在显示设置内正确侦测或快速调整分辨率或显示方向,达成即插即用的便利性。【详细设定方式请见: Linux – 触控屏幕设定 】
然而,当同时连结"两台"触控屏幕时,用户会发现,在延伸显示模式下,触控屏幕的反应位置并不正确,这是由于Wayland对于触控输入的双屏幕支持尚未完整之故。若需要在Linux系统下,连接并使用两个延伸的触控屏幕,我们建议下列三种解决方案。
1. 使用Plasma桌面
Plasma桌面提供的系统设定接口较为弹性,系统可以自动辨到两个触控输入设备,并允许用户自行指定映像位置。使用Plasma桌面来设定延伸双触控屏幕会最简单的方案。
🔵 Step 1.显示设置
点选「系统设定」图标 ➜调整显示器的分辨率和位置。在本范例中,我们使用 T112C 触控屏幕 作为主显示器,T111B触控屏幕 作为右侧的扩展显示器。
🔵 Step 2. 触控设定 (Touchscreen)
点击「Touchscreen」 ➜你将在装置选单中找到两个触控屏幕选项。
【注意:所有Gechic触控屏幕均显示设备名称为 "ILITEK ILTEK-TP "】
① 在装置选单(Device)中,点选第一个 “ILITEK ILITEK-TP ” 选项
② 点选Enabled后,在目标显示器(Target Display)选单中选择一个显示器 (在此范例中,先选择T112C) ➜点击「套用(Apply)」。
③ 再次点击 装置(Device)选单,选取第二个「ILITEK ILITEK-TP」,并取消勾选「Enabled」以停用第二个触控输入 ➜ 点击「套用(Apply)」。
④ 在T112C触控屏幕上以手指点选并绘制一个正方形。若正方形出现在 T112C 上,表示第一个 ILITEK 装置的映像位置设定正确。否则,请将「目标显示器(Target Display)」切换至另一个选项T111B。
⑤ 确认第一台 ILITEK 装置后,您可启用第二台 ILITEK 装置,并在目标显示器(Target Display)选单中,将第二台 ILITEK 装置设定至另一台显示器。
🛎️注意:
1) 目标显示器选单中显示的分辨率有误,但这不会影响映射。
2) 此触控屏幕设定在系统重启后会遗失;因此,必须在每次开机后重新进行设定。
2. 使用xinput map-to-output指令
由于Wayland对于延伸双屏幕的触控输入支持尚不完全,Gnome, Ubuntu, Raspberry Pi等桌面,在延伸双屏幕模式下,只能设定单一个显示器作为触控输入设备。因此,可以停用Wayland、改为使用X11环境,使用xinput map-to-output指令来指定双触控屏幕的映像位置。
🔵 Step 1. 启用X11
关闭现行桌面的Wayland并启用X11,实际步骤须视各桌面系统而定。在此范例中,我们由Raspberry Pi OS (64位 Trixie) 的默认桌面开始,说明如何安装并启用Plasma 桌面(X11)。
输入 sudo apt install tasksel 指令安装 tasksel。安装完成后,输入 tasksel 来开启程序。
选择KDE Plasma ➜ 按Tab 按钮切换至下方➜ 按[OK] 确认。
安装完毕、系统重启后,在左下角选单中,选择 Plasma X11 作为登入选项。
🔵 Step 2. 找出触控屏幕的输入设备代号(Device ID)
开启 Terminal,输入 xinput list 指令,找出 ILITEK-TP 的装置 ID。在本例中,我们得到了 ID 8 和 9。
🔵 Step 3. 找出显示器的名称
输入 xrandr 指令,找出 系统对显示器的命名。在本例中,我们得到了 HDMI-1 和 HDMI-2。
【注:HDMI-2 的显示区域显示为 1920x1080+1920+0,这表示其显示起点从 1920 开始。因此,HDMI-2 是位于右侧的 T111B触控屏幕。 】
🔵 Step 4. 用map-to-output指令设定触控映像
xinput 的map-to-output指令可以将输入设备映像至显示器的显示区域,由于两台触控屏幕的名称是相同的,因此,无法区分装置8 与装置9 分别代表哪一台触控屏幕,可采用实证的方式来操作设定:
先输入 xinput map-to-output 8 HDMI-1 指令后,点击T112C,若触控反应位置正确,则代表装置8确实为左方主显示器T112C。 接着输入指令 xinput map-to-output 9 HDMI-2 指定装置9映像至T111B;否则,应变更装置代码。
🛎️注意:
1) 执行 map-to-output 指令后,两个触控显示器都运作正常。
2) 重新启动后,触控屏幕装置 ID 可能会变更。因此,系统重启可能需要重新进行设定。
3. 设定xinput map-to-output 的自动执行程序
由于输入设备的代码并非固定值,在一个触控屏幕的情境下,我们可以使用装置名称"ILITEK ILITEK-TP " 来设定映像位置【详细设定方式请见: Linux – 触控屏幕设定 】。但连接 "两个装置名称相同" 的USB输入设备时,则无法以装置名称来识别输入源。
在固定USB插入埠的条件下,我们可以使用USB的输入路径来办别不同的输入设备,并以程序代码的方式,在每次开机时,自动依输入路径找出装置代码,并设定其映像区域。
🔵 Step 1. 找出触控屏幕的装置节点
得知触控显示器的装置 ID(本例为 8 和 9)后,使用 xinput list-props 指令列出触控装置的属性➜在属性中找到它们的装置节点(Device Node)——在本范例中分别是 /dev/input/event8 和 /dev/input/event0。
输入 xinput list-props 8 ➜ 装置节点(device node) 为/dev/input/event8
输入 xinput list-props 9 ➜ 装置节点(device node) 为/dev/input/event0
🔵 Step 2. 找出触控屏幕的USB路径
根据 Step 1 中取得的设备节点(Device Node),使用 udevadm info 指令列出其详情➜找到触控输入设备的 USB 路径,在该路径中选择一个足以识别触控显示器的字符串,例如 3-1:1.0 和 3-2.2:1.0。 【注意:字符串的选择取决于您的系统环境!请根据您的实际情况定义路径字符串。 】
输入 udevinfo /dev/input/event8 ➜ 找出辨识用字符串"3-1:1.0"
输入 udevinfo /dev/input/event0 ➜ 找出辨识用字符串"3-2.2:1.0"
🔵 Step 3. 撰写自动映射程序
输入下列指令,建立一个系统自动执行文件,命名为touch.sh
sudo nano ~/.config/touch.sh
在档案内输入下列程序代码:用于寻找 ILITEK-TP 的装置 ID 并根据 USB 路径进行映像位置的设定。 【附注:您可以在文末下载 Zip 档案以取得 touch.sh 档案。】
🛎️注意:
1) 记得使用 sudo chmod +x 指令将档案设定为可执行文件。
sudo chmod +x ~/.config/touch.sh
2) 请根据实际情况修改 touch.sh 档案! 红框中的字符串值与显示器名称因系统环境而定,请自行修改。
🔵 Step 4. 撰写桌面自动执行程序
要让 touch.sh 自动执行,还需要在 Plasma 桌面上新增一个自动执行应用程序。使用以下指令建立 touch.desktop 档案,并在档案内输入下列右图的程序代码【注:你可以在文末的 Zip 档案内找到 touch.desktop 档案】
sudo nano ~/.config/autostart/touch.desktop
确认该档案为可执行
sudo chmod +x ~/.config/autostart/touch.desktop
🔵 Step 5. 设定自动执行权限予所有使用者
方便起见,建议为所有用户启用自动执行程序,请将程序路径新增至显示管理器的配置文件中。
① 输入指令 sudo nano /usr/share/sddm/scripts/Xsetup ➜ 编辑Plasma的显示管理器SDDM的启动档
② 将touch.sh 的档案路径新增至配置文件中:
▶说明:Plasma X11 的显示管理器是 SDDM,因此,我们需要将自动运行路径新增至 /sddm 文件夹下的配置文件。如果您未使用 Plasma X11,则需要找到该桌面正确的配置文件。
🔵 完成
重新启动后,两台触控显示器的触控反应位置正确,即可正常操作。
▶说明:只要触控显示器的 USB 端口固定不变动,程序将自动运作触控映像设定。若变更了触控屏幕USB讯号线的USB端口,请重新检查系统的USB路径,再指定合适的路径字符串至touch.sh 档案中。
