文档教程【免费下载链接】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),仅供参考
企业数字化 ERP 产品动态
相关推荐
基于 AWS Rekognition 与 S3 Intelligent-Tiering 的照片资产管理应用(PAM)架构解析 示例工程教程后端 【免费下载链接】aws-doc-sdk-examples Welcome to the AWS Code Examples Repository. This repo contains code examples used in the AWS documentation, AWS SDK Developer Guides, and more. For more information, see the Readme.md file below. 项目地… · 2026/9/24 15:41:41
Erlang/OTP 发布资源文件(.rel)完全指南:定义发布构成、驱动启动脚本与升级流程 编程语言语言运行时标准库编译器并发编程 【免费下载链接】otp Erlang/OTP 项目地址: https://gitcode.com/gh_mirrors/ot/otp 点击查看 免费下载 rel.md 是 Erlang/OTP 中 SASL(System Architecture Support Libraries)应用发布系统的核心参… · 2026/9/24 15:41:41
Halcon九点标定实战:眼在手外与眼在手上的仿射变换矩阵求解 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 15:41:35
用 Flutter 开发跨平台应用:在 easy-vibe 中把门店费用簿从空项目做到可测试、可构建 教程文档 【免费下载链接】easy-vibe 从 0 到 1 学会 vibe coding,项目制学习 项目地址: https://gitcode.com/datawhalechina/easy-vibe 点击查看 免费下载 本指南基于 easy-vibe 仓库中 Flutter 跨平台应用章节 展开,以「门店费用簿&#… · 2026/9/24 16:07:26
大麦抢票自动化:从克隆仓库到替你把订单点下去只需10分钟 大麦抢票自动化:从克隆仓库到替你把订单点下去只需10分钟 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase
开售前第 8 次刷新,… · 2026/9/24 16:07:19
15分钟部署自己的免费天气API:Open-Meteo 自托管全流程 15分钟部署自己的免费天气API:Open-Meteo 自托管全流程 【免费下载链接】open-meteo Free Weather Forecast API for non-commercial use 项目地址: https://gitcode.com/GitHub_Trending/op/open-meteo
想在自己的产品里加天气功能,却不想被商业… · 2026/9/24 16:07:19
IdeaVim vim-engine 演进路线深度解析:可写性检测、不可变 Caret 与跨编辑器架构 代码编辑器 【免费下载链接】ideavim IdeaVim – A Vim engine for JetBrains IDEs 项目地址: https://gitcode.com/gh_mirrors/id/ideavim 点击查看 免费下载 IdeaVim 以独立的 vim-engine 模块承载纯 Vim 语义(命令解析、动作执行、寄存器与标记、Ex … · 2026/9/24 16:07:19
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程 简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13
1D-CNN时间序列建模实战:从Conv1d原理到工业落地 简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26
柔软的L:汉语语流中被忽视的舌肌张力控制 1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44