树莓派的睡眠模式,如何避免


32

我使用“ hehey”最新版本。该设备提供了一些Web服务功能,并假定24/7处于活动状态。但是,如果在一定时间内未请求服务器(很难说出确切的时间),则设备似乎将进入睡眠状态(希望不会崩溃)。使用Wi-Fi加密狗连接到网络的设备。我在这里找到了一些答案,原因是设备冻结的原因可能是Wi-Fi卡处于经济模式,因此我按照说明进行操作,可以确认加密狗没有进入睡眠状态,但是它开始闪烁,就像不参加电脑。这意味着即使Wi-Fi处于唤醒状态,设备仍会进入睡眠状态。购买另一棵树莓派并使其一直ping休眠的解决方案是行不通的,因为仅当服务器收到请求时才阻止设备进入休眠状态。尝试从设备轮询某些内容不会阻止您进入睡眠模式。我实际上无法确认该设备即将进入睡眠状态。我没有连接显示器或键盘,并且尝试连接设备重启时出现的问题。所以我目前不知道什么可以发出该行为。是的,我采取了所有措施来防止操作系统崩溃,因为它没有加速功能,并增加了最小VM内存大小。


/ var / log文件中是否有任何东西表明正在发生某些事情,正在进入睡眠状态,设备已关闭电源?
kolin 2013年

2
对于后代,请注意pi硬件没有潜在的睡眠,暂停等模式。它正在运行,或者没有运行。如果已插入,则电源LED都将亮起。
goldilocks

它不仅是您的Wi-Fi加密狗。我已经通过其以太网端口连接了我的服务器,以处理Web请求,一段时间后它“睡着了”(或接近此状态),将不再处理请求。如果我按一些键将其唤醒,它将重新开始工作。但这很痛苦,因为我唯一需要它服务于请求的时间就是我不在那里唤醒它的时间。

我遇到了Pi显然要入睡的问题。我每隔几分钟就会发生一次,并且可持续约20秒。很明显,当我尝试通过Samba共享访问文件时,或者当我SSH进入Pi时-一切都停止了。我以为可能是Pi处于加载状态,所以我跑到了“顶峰”。没有证据表明沉重的负担。但是,我发现在运行“ top”时,Pi可以完美运行。对文件的访问非常快捷,并且SSH连接没有中断。因此,我无法说出导致此问题的原因,但是对CPU的要求不高,相反,Pi
Brian

Answers:


9

我使用了简单的步骤,对我来说很完美:

  1. 在树莓派中打开一个根终端。现在,您需要编辑以X开头的脚本。在默认的lightdm构建中。

  2. 打开位于其中的“ lightdm.conf”文件,

    /etc/lightdm/lightdm.conf

  3. 将以下行添加到SeatDefault(或Seat:*在较新的LightDM版本中)部分。

    [SeatDefaults]

    xserver-command = X -s 0 -dpms

  4. 重新启动树莓派。

现在应该解决问题。

来源连结:http : //chamaras.blogspot.com/2013/03/how-to-deactivate-monitor-sleep-in.html


1
欢迎使用Stack Exchange。在这里,我们希望答案能够独立存在,而不仅仅是链接到外部资源。如果您可以在回答中添加相关信息,那就更好了。
Jivings

请添加该站点上的信息:链接不是可接受的答案。
xxmbabanexx 2013年

1
感谢您的最佳答案,即使在2017
Sverre

8

出了点问题。pi没有“睡眠模式”。

我只有几周的pi,而且一直以来都没有离开过,但是我打算最终离开,并且已经离开了很长时间。我正在运行raspbian,我对NetworkManager非常不满意,大声笑,因此已被禁用。为了保持wifi正常运行,我运行了一个脚本,该脚本每五秒钟ping通路由器一次。如果ping失败,它将杀死当前的dhcpcd,并尝试每5秒重新设置wifi,直到成功。它记录尝试,实际上已经运行了24多个小时,而无需重新连接一次,当我进入ssh时,没有问题。

您已经说过:“尝试从设备轮询某些内容不会阻止您进入睡眠模式,”因此,我的意思是,我的设备显然没有此问题,所以出了点问题。

您说它要“入睡”,但听起来您实际上必须重新启动。 您为什么认为它正在睡觉? AFAICT,圆周率无法入睡,它没有任何这种能力。 到处搜寻,看来像您这样的问题的人对此有些困惑。

请记住,无论pi是否运行,只要接通电源,都会有一个红色LED保持点亮。但是pi可以启动,运行或停止,它没有睡眠,待机,休眠等模式

因此,您的pi崩溃了,停止了,或者处于某种错误的冻结状态。感觉温度是否略高,这表明处理器处于永久繁忙循环中(可能是打开但无响应的一个原因)。

我猜测您认为它正在休眠的原因之一是“尝试附加某些内容会导致设备重启”。当设备完全停止(尝试)时,可能会发生这种情况。这是因为某些设备在首次插入时会造成短暂的电压降(但请参阅“注意”),这相当于先断开 pi,然后再将其重新插入-如您所知,将其插入会导致启动。我的纳米级wifi加密狗将执行此操作。

注意:实际上,我们的pi可能是去年8月制造的,当时多保险丝被“短裤”代替了-我对电子组件或电力知之甚少,但是显然从USB设备重新启动的WRT问题仍然相同


6

我知道这是一个老问题,但是当我在刚安装的Pi Zero上遇到基本相同的问题时,这是我搜索的第一个结果。

我发现的关键,我的回答这个问题等其他来源。

因此,基本上,尽管Pi本身显然没有睡眠模式,但是Linux中的单个设备(包括网络适配器)可以。当我尝试iw wlan0 get power_save如上所述运行命令时,一开始我一直遇到错误。通过更新操作系统可以解决此问题:

sudo apt-get update && apt-get upgrade

然后我重新启动: sudo reboot now

此后,该iw命令验证了power_save模式确实已打开。因此,我将其关闭:

sudo iw wlan0 set power_save off

从那时起,一切都很好。我的屏幕将进入睡眠状态,但是网络连接保持活动状态,即使闲置了一会儿,我也可以进入Pi。


1
抬起头,我需要使用sudo iw dev wlan0 set power_save off(开发人员必须在里面)
n0nag0n

这对我不起作用。虽然我的WLAN设备被命名为wlan0我得到command failed: No such device (-19)
gromit190

@ n0nag0n我可以确认是否iw期望devphy作为第二个参数,具体取决于您如何引用无线设备。我还要补充一点,该命令可能必须在每次重新启动后运行。
德米特里·格里戈里耶夫


1

我会检查电源问题。连接导致RPI重新启动的设备看起来与任何睡眠模式都不相关。

作为快速测试,我会这样做-编写一个小脚本(python / shall,更方便),并使其发送简单的“我很好”电子邮件,并将其放入您的crontab中,每30分钟左右执行一次,看看进展如何。


0

我想知道我是否正在经历类似的事情。我对您的加密狗所拥有的芯片组以及所使用的驱动程序感兴趣吗?

我有一个基于RT3072的芯片,使用rt2800usb / cfg80211驱动程序。如果我在“主控模式”(即访问点)中运行此程序,或者作为访问点/路由器的普通客户端运行,则好像进入睡眠状态并需要一段时间才能做出响应。我将笔记本电脑设置为以大约1秒的间隔通过wifi适配器ping pi。我确认在主模式和客户端模式下,有时ping在客户端模式下会超时〜5-10秒,而在主模式下则为5-25秒。在主模式下,如果在hostapd.conf中启用HT和WMM的情况下以“ n模式”运行AP,则超时将变得更糟。在“ g模式”下,情况几乎没有那么糟糕。

我使用RTL8188SU芯片和r8712u临时驱动程序尝试了另一个wifi加密狗。不幸的是,我无法在Master模式下运行它,但作为客户端,它比RT3072稳定得多。

在客户端模式下使用3072时,没有典型的ping延迟-它们从2ms-320ms随机变化,偶尔会超时。使用8188SU,典型的ping延迟为2-3ms,偶尔的延迟为166-200ms-没有明显的超时。尤其奇怪的是,如果我在pi上打开ssh会话并以0.01秒的速度运行,因此有大量的CPU负载和大量的wifi流量,那么3072的性能将大大提高ping时间通常为2-3ms。加载对在“主”模式下运行的3072具有类似的影响。

我不知道发生了什么,但是如果其他用户可以花时间对pi进行类似的ping测试并报告其发现以及配置和驱动程序,我将非常感兴趣。如果其他人发现不良的响应时间并通过像我一样使用top加载处理器/ wifi流量来改善随机响应时间,或者说找到能在wifi上产生一些工作和tcp / ip流量的任何东西,将会改善随机响应时间。


这并不是真正的答案,但是它的内容足够详尽,可能不适合原始问题的评论部分
kolin

感谢您的提示kolin-我是这个论坛的新手,还没弄清楚一切!
Ivo

我尝试实现Stefans的答案-关闭电源管理(对于cfg80211 / mac80211驱动程序,您可以使用iw wlan0设置power_save off),并且在客户端模式中产生了很大的不同-随机ping延迟现在稳定在2-3ms,并且尚未超时。这对AP模式没有帮助(我的设备不选择power_save off),但是我认为这不是AP模式下问题的根源,因为无论如何Ping时间通常都是稳定的。其他原因导致超时。目前尚不清楚原始问题中的配置是用于客户端模式还是用于AP模式。
伊沃

0

仅供参考,我遇到了这个问题,因此在这里寻找解决方案并找到了这个问题。

但是后来我发现,由于事物的外观,这只是我的Pi过热。一旦我从案件中撤出。问题似乎消失了



-1

尽管我确实同意@goldilocks关于pi设备没有睡眠功能,但内核仍可以在设备运行时关闭特定I / O的电源。正是出于这种原因,您可能想在KBD文件中尝试以下编辑并重新启动设备:

在/ etc / kbd / config中进行以下编辑:POWERDOWN_TIME = 0


-1

我假设您将睡眠定义为屏幕关闭。这是我发现可以工作的内容:

sudo setterm -powersave off

该问题专门指出“我没有连接显示器或键盘”。
德米特里·格里戈列耶夫

如果将其连接到网络,则发帖人可能会陷入其中。为什么要投反对票?
艾伦曹
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.