通过 x2x 在多台计算机之间共享键盘/鼠标
如果您的桌面上有多台计算机,有许多使用场景
- 最粗暴的方法:弄一张大桌子和一把转椅,在键盘/鼠标之间来回旋转
- 使用 VNC 或 rdesktop 从您的主计算机控制辅助计算机。 这种方法的主要问题是您会失去辅助计算机上的所有屏幕空间,最终辅助计算机的桌面会在您主计算机的窗口中显示。
- 购买 KVM 切换器,以便在一个键盘/鼠标之间切换多台计算机。
KVM 的通常用法是同时切换您的显示器以及键盘和鼠标,但这不是必需的。 KVM 通常看起来是许多外围设备共享问题的绝佳解决方案,但它们有点碰运气。 它们经常出现切换问题、系统启动问题、视频质量问题,如果您使用多个显示器,则在系统之间切换多个显示器的 KVM 会非常昂贵。 - 使用x2x,我们将在此处研究的解决方案,以在系统之间共享键盘和鼠标。
有两种运行x2x在 Linux 上的方法,最简单的方法是使用ssh启用 X 转发,并从主系统 ssh 连接到辅助系统,并在辅助系统上运行x2x在辅助系统上
primary $ ssh -X secondary x2x -east -to :0
-X 选项告诉ssh启用 X 转发。“x2x …”告诉ssh运行x2x在远程系统(辅助系统)上,而不是运行 shell。“-east”选项告诉x2x一个系统相对于另一个系统的位置:在东边还是西边(-west)。
主系统是您实际使用的键盘和鼠标所在的系统。 辅助系统是即将共享主系统键盘和鼠标的系统。
现在,如果您将主系统上的鼠标移动到辅助系统所在的边缘,鼠标指针应该从主屏幕移动到辅助屏幕,并且从现在开始,任何鼠标移动都应传递到辅助系统,并且您在键盘上键入的任何内容都应发送到辅助系统。 如果这不起作用,请尝试将鼠标移动到屏幕的另一侧,如果这有效,则使用“-west”而不是“-east”重新启动命令。
在 Linux 系统上运行x2x的另一种方法是直接在主系统上运行它,并告诉它连接到辅助系统上的 X 服务器
primary $ x2x -to secondary:0.0 -east
这种方法不是简单方法的原因是您还需要使用xhost:
secondary $ xhost primary
在辅助系统上启用远程 X 访问,并且还需要在两个系统上打开 TCP 端口 6000。 最简单的方法将取决于您的发行版。
第二种方法的主要优点是现在可以在系统之间复制/粘贴。
在 Windows 系统上让x2x工作需要更多的工作,主要是因为首先您必须安装 Cygwin。 虽然,如果您是 Linux 爱好者,您应该已经安装了它,这是让 Windows 变得可以忍受的唯一方法。 安装 Cygwin 时,请确保x2x在可用软件包列表中被选中。
将x2x与 Cygwin 一起使用有一些限制/问题
- 您不能使用ssh连接方法。
- 您必须将 Windows 系统用作主系统(即,您必须在 Windows 系统上使用键盘和鼠标)。
- 如果您的 Windows 系统上有多个显示器,当您从辅助显示器返回鼠标时,您可能会遇到鼠标问题。 唯一的解决方法是在即将从辅助显示器移动到主显示器时非常非常缓慢地移动鼠标。
在 Windows 上使用x2x时,从 shell 提示符运行以下命令
windoze $ x2x -fromwin -to secondary:0.0 -east
一般来说x2x在 Linux 和 Windows 上都运行良好。 有时,当您在辅助显示器上移动窗口时,可能会出现一些鼠标不流畅的情况。 此外,有时,当使用 shift 键时,如果您输入速度太快,您可能会在辅助系统上获得未按 shift 键的字符。 但在大多数情况下,您不会注意到在主系统和辅助系统上打字/使用鼠标之间有任何区别。
附注:如果您遇到键入“<”时得到“>”的问题,则需要找到较新版本的x2x。 这是一个长期存在的错误,最近已修复。