如何判断计算机何时闲置?


8

我有一台只使用过一段时间的计算机,我想知道是否有办法在一段时间不活动后将其关闭。

这是棘手的部分,如果我只是想在GUI空闲时关闭它,那么我认为这样做会很容易,但是我想确保不会切断积极使用该功能的任何人。机器也通过SSH。有问题的计算机是Debian 5.0。

有没有一种方法可以检测计算机是否空闲,例如没有人使用GUI,也没有人通过SSH使用计算机?如果SSH连接已打开,但未得到有效使用,则计算机应将其视为空闲。


应该将其移至stackoverflow吗?
杰夫·威灵

这个问题不是特别类似于编程的问题,并且可能会有合适的答案,两者都不是。
2011年

一位朋友建议使用DBUS,但在我短暂的5分钟的搜索过程中,它似乎并没有对ssh连接(空闲或不空闲)给予任何关注。如果我不了解情况,我会很高兴..需要在醒来时继续寻找。
杰夫·威灵

1
您为什么仍要关闭Linux计算机?:-)
amphetamachine

@amphetamachine省电。减少大型机房中的热量输出。我们有两个Linux集群供我工作。一台69台机器,另外43台:启用电源管理对房间的热量(太热)和电费产生了显着的影响。
2011年

Answers:


2
who -q

将显示谁以及有多少用户拥有一个打开的tty(例如,在控制台上通过X,ssh,telent),但不会显示通过pop,http等进行连接的用户


有没有办法告诉他们他们运行的最后一条命令是什么(PID,以检查它是否仍在运行)以及何时执行?您是否认为可以通过对bash提示进行一些更改来实现?
杰夫·威灵

您需要对自己的意思更加具体。如果他们在注销之前启动了setid程序,该怎么办-您认为他们的会话仍处于活动状态吗?您无法从bash历史中得到什么?
symcbean 2011年

1

gdm/ gnome-power-manager可以检测到并适当地暂停机器。GNOME2试用

gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s --type=int /apps/gnome-power-manager/timeout/sleep_computer_ac 600

gconftool-2 --direct --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults -s --type=int /apps/gnome-power-manager/timeout/sleep_computer_ac 600

作为根。您可能需要重新启动gdm才能使设置生效。(数字是秒,所以600是10分钟)。

在GNOME3下,有一对相似的gsettings键(上面的内容默默地失败了)。

如果您没有运行GNOME,则可以检查GNOME的来源gnome-power-manager以弄清它如何建立空闲状态。


1
gdm / gnome-power-manager可以检测到空闲的SSH连接?
杰夫·韦林

闲着的?不,活跃的?我相信是这样。您的问题表明您不希望通过ssh 主动切断使用该机器的人员。如果您不希望它们在ssh连接空闲时也挂起,请修改您的问题。
2011年

实际上,这听起来确实正是我想要的!我会检查一下,谢谢!一旦我确认它可以满足我的目的,我将选择您的答案:)
Jeff Welling

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.