概述我正在寻找一种方法来确定本地输入(鼠标/键盘)
空闲时间, 远程通过SSH,无权访问或访问当前登录的
用户Xauthority. 我知道以下解决方案,如果您有权访问X服务器: detecting keyboard, mouse activity in linux 但是没有必要连接到X服务器是否可能? 还有另外一种方法吗?例如.间接通过CPU或内存使用某些进程? 欢迎任何想法. 使用w和/ dev解决方 我正在寻找一种方法来确定本地输入(鼠标/键盘)空闲
时间,
远程通过SSH,无权访问或访问当前登录的用户Xauthority.
我知道以下解决方案,如果您有权访问X服务器:
detecting keyboard,mouse activity in linux
但是没有必要连接到X服务器是否可能?
还有另外一种方法吗?例如.间接通过cpu或内存使用某些进程?
欢迎任何想法.
解决方法 使用w和/ dev解决方案只会让你到目前为止,因为可能是用户在附近,但没有在shell中输入任何东西 – 例如,他/她可能正在玩一些游戏.更好的方法是轮询/ proc /中断.鼠标和键盘的本地中断通常在“i8042”下(尽管在极少数情况下可能会有所不同).您可能想尝试:“grep i8042 / proc / interrupts”.这将产生IRQ 1(键盘)和IRQ 12(通常是鼠标).您可以获取值,存储它们,然后偶尔进行轮询(没有回调,唉)来获取计数.如果数字改变,则发生中断 – 意味着键盘(IRQ 1)或鼠标(IRQ 12)被触摸/按下等.按键通常产生两个中断(按键,键上).鼠标移动更不稳定.
这有几个好处:
1)如果用户触摸鼠标或按下键 – 你知道2)你可以以编程方式(即fopen()/ proc / interrupts,或(或者)/ proc / stat,并获得“intr”行)和fread()相关的行3)你甚至不需要成为root用户.
总结
以上是内存溢出为你收集整理的本地用户的远程Linux空闲时间全部内容,希望文章能够帮你解决本地用户的远程Linux空闲时间所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)