Linux桌面远程控制

12分钟前更新 2 00
Linux桌面远程控制Linux桌面远程控制
Linux桌面远程控制

技能简介

该技能为无头Linux服务器和VPS提供完整桌面控制能力。通过Xvfb+XFCE构建虚拟显示环境,配合xdotool实现17种GUI操作(点击、输入、滚动、截图、拖拽等),在X11层面运行,网站无法检测自动化行为。

业务背景

运维团队常需在无显示器的服务器上操作图形化应用,如配置Web管理界面、运行仅支持GUI的遗留工具或进行可视化测试。该技能通过虚拟桌面技术,让工程师远程操控Linux服务器的完整桌面环境,无需物理显示器即可完成点击、输入、截图等17种交互操作,实现服务器端自动化流程的可视化执行与验证。

落地案例:某开发团队租用海外VPS部署业务系统,需定期登录第三方平台的Web控制台下载报表。该平台仅提供图形界面且无API接口。团队启用该技能后,在VPS上构建虚拟XFCE桌面,通过浏览器访问noVNC实时查看界面,编写自动化脚本模拟登录、导航至报表页面、点击下载按钮的全过程,并截取屏幕确认任务完成,将原本需人工值守的操作转为无人值守定时任务。

能做什么

  • 在无显示器的服务器上运行桌面应用程序
  • 截取屏幕图像并获取鼠标坐标
  • 模拟鼠标点击、拖拽、滚轮操作
  • 键盘输入与组合键触发
  • 通过浏览器或VNC客户端实时观看桌面

使用说明

安装步骤:

  1. 克隆仓库后执行安装脚本:./scripts/setup-vnc.sh
  2. 脚本自动安装Xvfb虚拟显示(:99)、最小化XFCE桌面、x11vnc服务、noVNC网页访问
  3. 所有服务设为开机自启并崩溃自动重启

基础用法:

export DISPLAY=:99
# 截图
./scripts/screenshot.sh
# 点击坐标(512,384)
./scripts/click.sh 512 384 left
# 输入文本
./scripts/type_text.sh "Hello world"
# 组合键
./scripts/key.sh "ctrl+s"
# 向下滚动5单位
./scripts/scroll.sh down 5

工作流建议:截图→分析界面元素坐标→执行操作→再次截图验证→循环

输入与输出

见下方输入与输出表格。

项目内容
输入目标坐标(x,y)、操作类型(click/type/scroll/key/drag等)、文本字符串或按键组合、可选等待时长
输出base64编码PNG截图、当前鼠标坐标位置、操作执行后的屏幕状态
适用人群需要远程管理Linux服务器的运维人员、构建GUI自动化流程的开发者、在云主机运行桌面应用的工程师
不包含Windows/macOS操作系统支持、物理显示器直连输出、浏览器DevTools级自动化、原生移动设备控制

 

风险提示

  • Snap版浏览器(Firefox、Chromium)在无头服务器存在沙箱问题,建议使用Chrome .deb包
  • Chrome的–no-sandbox参数仅在kernel缺少user namespace支持时使用,滥用会导致不稳定
  • 长文本输入自动分块(50字符)并带12ms延迟,避免丢字符
  • VNC连接需配置SSH隧道保障安全,避免直接暴露端口

来源信息

原始链接:https://github.com/openclaw/skills/tree/main/skills/ram-raghav-s/computer-use/SKILL.md
来源类型:GitHub仓库

数据统计

相关导航

暂无评论

none
暂无评论...