十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

PiKVM Mouse Jiggler 完整指南:原理、Web UI 使用、配置参数与 API 控制

PiKVM Mouse Jiggler 完整指南:原理、Web UI 使用、配置参数与 API 控制 文档教程【免费下载链接】pikvmOpen and inexpensive DIY IP-KVM based on Raspberry Pi项目地址https://gitcode.com/gh_mirrors/pi/pikvm点击查看免费下载导读Mouse Jiggler鼠标抖动器是 PiKVM 内置的一项 HID 外设功能用于在目标主机长时间无人操作时自动模拟微小鼠标位移从而阻止操作系统进入休眠、待机或触发屏幕保护程序。本文基于 docs/mouse_jiggler.md 官方文档结合仓库中的配置流程docs/config.md、鼠标模式说明docs/mouse.md与 HTTP API 参考docs/api.md完整讲解 Jiggler 的启用方式、override.yaml参数调优、算法行为以及远程 API 控制方法帮助你在一台装有最新 PiKVM OS 的设备上开箱即用地防止远程主机假死锁屏。什么是 Mouse JigglerMouse Jiggler 是一个模拟电脑鼠标移动的功能。它的核心用途是阻止目标主机进入睡眠模式、待机模式或触发屏幕保护程序。在以下场景中它尤为实用目标主机上正在执行耗时的进程例如安装软件、系统更新、长时间的数据打包或渲染管理员需要一边用余光监视目标主机画面一边处理其他事务而不想手动频繁晃动鼠标来阻止屏保激活远程维护过程中目标主机的电源策略不允许轻易关闭屏保又不能直接改系统设置。正如项目 README.md 的功能清单所述PiKVM 的 USB 键盘/鼠标仿真含 LED 与滚轮、蓝牙 HID、鼠标 Jiggler与完整 PS/2 支持一同构成了其 HID 外设能力而 KVMD 3.265 发布日志 则记录了这一特性正式上线时的定位它每隔一分钟执行一次短暂的鼠标移动直到你开始使用 PiKVM同时兼容绝对与相对两种鼠标模式并且开启后不会干扰你与 PiKVM 的正常交互。上图是 Jiggler 在 Web UI 中的开关入口位于 HID 相关菜单中只需点击开关即可在运行中启用或停用该功能。在 Web UI 中启用 Jiggler使用最新的 PiKVM OS 时Jiggler 默认已经包含在 Web UI 中无需任何额外配置即可直接使用登录 PiKVM 的 Web 界面在 HID / 鼠标相关菜单中找到Mouse Jiggler开关打开开关功能立即生效。如果你在界面中看不到这个开关说明当前 OS 版本过旧需要先更新系统。官方推荐的更新方式是以root用户执行[rootpikvm ~]# pikvm-update如果提示bash: pikvm-update: command not found则说明 OS 版本过于老旧需要先手动安装更新器[rootpikvm ~]# rw [rootpikvm ~]# pacman -Syy [rootpikvm ~]# pacman -S pikvm-os-updater [rootpikvm ~]# pikvm-update更新完成后再次登录 Web UI即可看到 Jiggler 开关。官方还特别提示OS 更新过程非常可靠但依然存在极小概率出现问题需要重新刷写存储卡——PiKVM 本身不会变砖但刷写操作需要物理接触存储卡因此建议仅在拥有设备物理访问权限时执行更新。Jiggler 的配置参数override.yaml一般情况下Web UI 开关已经足够日常使用。但如果你需要修改行为参数或完全禁用该功能可以通过编辑/etc/kvmd/override.yaml来实现。这是 PiKVM 的标准配置覆盖机制系统默认配置保存在/usr/lib/kvmd/main.yaml永远不要直接编辑该文件KVMD 会先加载main.yaml再加载/etc/kvmd/override.yaml中你写入的覆盖项详见 docs/config.md。1. 在菜单中隐藏 Jiggler彻底禁用将以下内容写入/etc/kvmd/override.yamlJiggler 将从菜单中消失并完全不可用kvmd: hid: jiggler: enabled: false2. 开机默认激活如果你希望 PiKVM 每次重启后 Jiggler 都自动处于激活状态而无需手动打开开关kvmd: hid: jiggler: active: true3. 调整移动间隔可以按需修改两次鼠标移动之间的间隔单位秒默认值为60kvmd: hid: jiggler: interval: 60重要说明每次迭代时实际间隔会在配置值的基础上自动随机化 ±25%。也就是说设置为60秒时实际每次等待约在 4575 秒之间波动。这种随机化设计使得鼠标运动模式不那么机械规律降低被目标主机上的人工智能检测或异常行为分析系统识别的概率。配置编辑与生效流程修改override.yaml的推荐流程如下细节见 docs/config.mdPiKVM OS 的文件系统默认是只读的先用rw命令切换为可写[rootpikvm ~]# rw使用nano打开配置文件进行编辑系统预装 nano 与 vim官方推荐新手使用 nano[rootpikvm ~]# nano /etc/kvmd/override.yaml在 nano 中^表示CtrlWindows/Linux或CmdmacOSM表示Alt。保存使用CtrlO退出使用CtrlX。验证配置语法。务必在使配置生效前执行校验[rootpikvm ~]# kvmd -M该命令只显示你写入的非默认覆盖项并会检查 YAML 语法错误kvmd -m则显示完整合并后的配置。两者都可用作覆盖项校验器。若出现类似ConfigError: The node vnc must be a dictionary的输出说明存在语法错误需要修正后重新校验。注意kvmd -M只校验语法与结构不会校验键名是否正确。如果配置未生效首先应检查键名拼写。若修改涉及 Jiggler 行为重启 KVMD 服务使配置生效[rootpikvm ~]# systemctl restart kvmd配置确认无误后将文件系统切回只读模式保护存储卡[rootpikvm ~]# roJiggler 的工作原理与算法理解 Jiggler 的行为模型有助于判断它是否适合你的远程维护场景计时与触发逻辑当 Jiggler 激活时PiKVM 会持续倒计时自最后一次用户输入以来经过的时间——这里的用户输入指通过虚拟键盘或鼠标执行的任何操作。当无操作时间超过配置的interval默认60秒另含 ±25% 的随机抖动时Jiggler 就执行一次鼠标移动然后等待进入下一轮迭代。只要用户在键盘/鼠标上有任何活动计时就会重置Jiggler 不会在此期间强行插入移动。支持的鼠标模式与移动模式Jiggler 同时支持 PiKVM 的两种鼠标模式详见 鼠标模式文档绝对模式与相对模式。两种模式下的典型移动轨迹如下模式移动轨迹说明绝对Absolute(100, 100), 等待, (-100, -100), 等待...坐标会根据当前屏幕分辨率进行换算适用于触摸屏/数位板式的坐标定位相对Relative(10, 10), 等待, (-10, -10), 等待...只发送相对当前指针位置的偏移量行为与普通鼠标一致绝对模式下PiKVM 将目标屏幕的像素坐标映射为 HID 绝对坐标通常为0~32767范围因此(100, 100)这类位移会被按分辨率比例转换相对模式则直接发送小幅位移增量。两种模式均通过移出—等待—移回的往返轨迹在不大幅改变指针最终位置的前提下制造持续的活动信号从而阻止目标操作系统进入低功耗状态。在设备端运行与 Web UI 无关Jiggler 运行在PiKVM 设备端即 KVMD 守护进程内部即使你在浏览器中关闭了 Web UI 标签页只要功能处于激活状态它依然会持续工作。这对远程维护场景非常关键——你不需要保持网页开着Jiggler 会按既定节奏自动看守目标主机。不干扰正常工作的设计Jiggler 的一个重要特性是不会干扰用户的正常工作只要用户正在活跃地操作键盘和鼠标Jiggler 就不会引入任何干预只有当它检测到无操作时长超过配置的interval阈值后才会开始执行模拟移动。这保证了你在 PiKVM 上进行真实操作时不会出现指针被莫名挪动的情况。通过 HTTP API 远程控制 Jiggler除了 Web UI 和override.yamlPiKVM 的 HTTP API 也直接暴露了 Jiggler 的控制接口见 docs/api.md适合脚本化、自动化运维场景。查询当前状态通过GET /api/hid可以读取 HID 设备的完整状态其中包括 Jiggler 的实时参数$ curl -k -u admin:admin https://pikvm-ip/api/hid响应中的jiggler字段结构如下示例值jiggler: { active: false, enabled: true, interval: 60 }enabled功能是否可用对应override.yaml中的enabled配置active当前是否处于激活状态对应active配置即 Web UI 开关状态interval当前配置的移动间隔秒数对应interval配置。动态启停使用POST /api/hid/set_params可以在不修改配置文件的情况下动态开关 Jiggler$ curl -k -X POST \ -u admin:admin \ https://pikvm-ip/api/hid/set_params?jiggler0参数类型可选性说明取值jigglerboolean可选启用/禁用 Mouse Jiggler 功能true/false成功响应返回{ok: true, result: {}}。这种方式特别适合在自动化脚本中按需临时启用防屏保能力例如在执行长时间无人值守操作前开启、任务完成后关闭。与鼠标模式的搭配建议Jiggler 的行为依赖于目标主机对 HID 鼠标事件的处理方式因此理解 鼠标模式 有助于调优绝对模式是 PiKVM 的默认鼠标模式对用户和软件最友好Jiggler 在绝对模式下会按屏幕分辨率换算坐标相对模式主要用于 BIOS/UEFI 等不支持绝对坐标的场景。相对模式在浏览器中需要点击流窗口一次以独占捕获鼠标按Esc释放同时它会生成大量事件网络传输差或 BIOS 驱动响应慢时可通过System - Squash mouse moves优化。对于目标主机处于 BIOS/UEFI 阶段且长时间停留例如等待安装介质引导的场景建议在 鼠标模式文档 指导下先正确配置相对模式再启用 Jiggler 防止固件界面因超时进入休眠。常见问题速查问题排查与解决Web UI 中没有 Jiggler 开关OS 版本过旧执行pikvm-update老版本先装pikvm-os-updater后重试配置了active: true但重启后未生效检查kvmd -M输出确认语法与键名确认文件系统已切回只读前执行过systemctl restart kvmd间隔感觉不固定属正常现象每次迭代都会在配置值基础上随机化 ±25%想彻底移除功能入口设置kvmd/hid/jiggler/enabled: false需要脚本化控制使用POST /api/hid/set_params?jiggler1|0并用GET /api/hid回读状态总结Mouse Jiggler 是 PiKVM 为远程运维场景提供的一个小而实用的内置功能它以约每分钟一次默认60秒 ±25% 随机抖动的微小鼠标移动在设备端持续阻止目标主机进入屏保或睡眠状态同时严格尊重用户的真实输入、绝不干扰正常操作。通过 Web UI 开关可以零配置启用通过/etc/kvmd/override.yaml可以精细调整enabled、active、interval三个参数通过 HTTP API 则能在自动化流程中动态查询与启停。结合绝对/相对两种鼠标模式与 KVMD 的配置校验流程你可以把这个功能可靠地纳入自己的远程维护工具箱。赞分享文档教程【免费下载链接】pikvmOpen and inexpensive DIY IP-KVM based on Raspberry Pi项目地址https://gitcode.com/gh_mirrors/pi/pikvm点击查看免费下载相关推荐komorebi 鼠标跟随焦点Mouse Follows Focus完整指南原理、配置与命令行控制komorebi 鼠标跟随焦点Mouse Follows Focus完整指南原理、配置与命令行控制 在键盘驱动的平铺窗口管理器Tiling Window桌面应用SeaTunnel 速度控制完全指南read_limit 参数原理、配置与最佳实践SeaTunnel 速度控制完全指南read_limit 参数原理、配置与最佳实践 导读 SeaTunnel 内置了强大的 速度控制Speed Contro数据集成ETL大数据批处理流处理变更数据捕获解锁电脑防休眠Mouse Jiggler完全指南解锁电脑防休眠Mouse Jiggler完全指南 痛点场景剧场 场景一远程会议的突然中断 周一上午的重要客户会议正在进行你正通过屏幕共享展示项目进度。突然桌面应用上一篇Zotero GPT插件终极指南5分钟打造你的智能文献助手下一篇PyMC贝叶斯分位数回归从均值到完整条件分布的预测创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表