网淘吧来吧,欢迎您!

返回首页 微信
微信
手机版
手机版

Computer Use

2026-03-26 新闻来源:网淘吧 围观:33
电脑广告
手机广告

计算机使用技能

为无头Linux服务器提供完整的桌面图形界面控制。创建虚拟显示器(Xvfb + XFCE),使您能够在VPS/云实例上运行和控制桌面应用程序,无需物理显示器。

环境

  • 显示::99
  • 分辨率: 1024x768(XGA,Anthropic推荐)
  • 桌面: XFCE4(最小化 — 仅包含xfwm4 + 面板)

快速设置

运行设置脚本以安装所有组件(systemd服务、无闪烁VNC):

./scripts/setup-vnc.sh

这将安装:

  • 在 :99 上安装 Xvfb 虚拟显示器:99
  • 最小化XFCE桌面(xfwm4 + 面板,无xfdesktop)
  • 带有稳定性标志的x11vnc
  • 用于浏览器访问的noVNC

所有服务均在启动时自动启动,并在崩溃时自动重启。

操作参考

操作脚本参数描述
截图截图.sh捕获屏幕 → base64 PNG
光标位置光标位置.sh获取当前鼠标的X,Y坐标
鼠标移动鼠标移动.shx y将鼠标移动到指定坐标
左键点击点击.shx y 左键在指定坐标处左键点击
右键点击点击.shx y 右键右键点击
中键点击click.shx y 中键中键点击
double_clickclick.shx y 双击双击
triple_clickclick.shx y 三击三击(选择行)
left_click_dragdrag.shx1 y1 x2 y2从起点拖拽到终点
left_mouse_downmouse_down.sh按下鼠标按钮
left_mouse_upmouse_up.sh释放鼠标按钮
类型type_text.sh"文本"输入文本(50字符块,12毫秒延迟)
按键key.sh"组合键"按下按键(回车、ctrl+c、alt+F4)
保持按键hold_key.sh"按键" 秒按住按键持续指定时间
滚动scroll.sh方向 数量 [x y]向上/下/左/右滚动
等待wait.sh等待然后截图
缩放zoom.shx1 y1 x2 y2截图区域截取

使用示例

export DISPLAY=:99

# 截图
./scripts/screenshot.sh

# 点击坐标
./scripts/click.sh 512 384 left

# 输入文本
./scripts/type_text.sh "Hello world"

# 按键组合
./scripts/key.sh "ctrl+s"

# 向下滚动
./scripts/scroll.sh down 5

工作流程模式

  1. 截图— 始终从查看屏幕开始
  2. 分析— 识别界面元素和坐标
  3. 操作— 点击、输入、滚动
  4. 截图— 验证结果
  5. 重复

提示

  • 屏幕分辨率为1024x768,原点(0,0)位于左上角
  • 在文本框中输入前需先点击获取焦点
  • 使用Ctrl+End可在浏览器中快速跳转至页面底部
  • 大多数操作会在2秒延迟后自动截图
  • 长文本将分块处理(每块50字符),按键间隔为12毫秒

实时桌面查看(VNC)

可通过浏览器或VNC客户端实时查看桌面画面。

通过浏览器连接

# SSH隧道(在本地机器上运行)
ssh -L 6080:localhost:6080 你的服务器

# 在浏览器中打开
http://localhost:6080/vnc.html

通过VNC客户端连接

# SSH隧道
ssh -L 5900:localhost:5900 你的服务器

# 将VNC客户端连接到 localhost:5900

SSH配置(推荐)

添加到~/.ssh/config以实现自动隧道连接:

Host 你的服务器
  HostName 你的.服务器.ip
  User 你的用户名
  LocalForward 6080 127.0.0.1:6080
  LocalForward 5900 127.0.0.1:5900

然后只需ssh 你的服务器即可使用VNC。

系统服务

# 检查状态
systemctl status xvfb xfce-minimal x11vnc novnc

# 如需重启
sudo systemctl restart xvfb xfce-minimal x11vnc novnc

服务链

xvfb → xfce-minimal → x11vnc → novnc
  • xvfb:虚拟显示器 :99 (1024x768x24)
  • xfce-minimal:运行 xfwm4+panel 的看门狗,会终止 xfdesktop
  • x11vnc:VNC服务器,带-noxdamage 参数为了稳定性
  • novnc:用于连接稳定性的、带有心跳检测的 WebSocket 代理

启动应用程序

export DISPLAY=:99

# Chrome —— 仅在内核缺少用户命名空间支持时使用 --no-sandbox。
# 检查:cat /proc/sys/kernel/unprivileged_userns_clone
#   1 = 沙盒可用,请勿使用 --no-sandbox
#   0 = 沙盒失败,需要 --no-sandbox 作为后备方案
# 在不需要时使用 --no-sandbox 会导致不稳定和崩溃。
if [ "$(cat /proc/sys/kernel/unprivileged_userns_clone 2>/dev/null)" = "0" ]; then
    google-chrome --no-sandbox &
else
    google-chrome &
fi

xfce4-terminal &                # 终端
thunar &                        # 文件管理器

注意:Snap 版浏览器(Firefox, Chromium)在无头服务器上存在沙盒问题。请使用 Chrome.deb包替代:

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb
sudo apt-get install -f

手动设置

如果您倾向于手动设置,而不是使用setup-vnc.sh脚本:

# 安装软件包
sudo apt install -y xvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify

# 运行设置脚本(生成 systemd 服务、屏蔽 xfdesktop、启动所有服务)
./scripts/setup-vnc.sh

如果您倾向于完全手动设置,请注意setup-vnc.sh脚本会内联生成所有 systemd 服务文件 —— 请阅读该脚本以获取确切的服务定义。

故障排除

VNC 显示黑屏

  • 检查 xfwm4 是否正在运行:pgrep xfwm4
  • 重启桌面:sudo systemctl restart xfce-minimal

VNC 闪烁/闪屏

  • 确保 xfdesktop 被屏蔽(检查/usr/bin/xfdesktop
  • xfdesktop 在 Xvfb 上由于 clear→draw 循环会导致闪烁

VNC 频繁断开连接

  • 检查 noVNC 是否带有--heartbeat 30标志
  • 检查 x11vnc 是否带有-noxdamage标志

x11vnc 崩溃(SIGSEGV)

  • 添加-noxdamage -noxfixes标志
  • DAMAGE 扩展在 Xvfb 上会导致崩溃

要求

setup-vnc.sh安装:

xvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify
免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部
上一篇:Copywriting 下一篇:Oracle

相关文章

您是本站第247553名访客 今日有21篇新文章/评论