我无头运行Pi,通过SSH通过网络连接。我有一个可以持续复制的问题。我将在我的Pi上运行Python脚本,然后在数小时后返回,并且与Pi的SSH连接将超时。

如果我ping通,则会得到以下信息:

C:\Users\andrew>ping 192.168.1.42

Pinging 192.168.1.42 with 32 bytes of data:
Reply from 192.168.1.46: Destination host unreachable.


我可以在网络上恢复它的唯一方法是重新启动它(拔出电源)。

有人经历过吗?我可以查看任何日志文件来诊断问题吗?

评论

在树莓上,我只有一个运行python脚本的cronjob,它也将在数小时之内(长达2天)死亡。我无法再通过SSH进行连接,仅通过切断电源重新启动会有所帮助。

@ k0pernikus有趣!我现在尝试在连接屏幕的情况下运行它,到目前为止(4个小时,并且还在继续计数),并且没有失败。您是否正在使用屏幕?

您的/ etc / network / interfaces中有什么? dmesg中有什么可怕的吗? RPI如何连接到网络?通过路由器?路由器的日志中有什么?如果将以太网电缆重新插入RPI,它会带回网络吗?

@abolotnov我现在实际上是在连接监视器的情况下运行RPI的,这似乎会花费更长的时间,但是当我在大约6个小时后返回时,它将无响应。 dmesg似乎很清楚。

#1 楼

一段时间不活动后,无线设备将进入睡眠状态。这是一种节能方案。

您需要关闭wlan0的节能功能。

我正在使用edimax无线USB接收器:

Bus 001 Device 005: ID 7392:7811 Edimax Technology Co., Ltd EW-7811Un 802.11n Wireless Adapter [Realtek RTL8188CUS]


它在内核中使用8192cu模块。

要关闭省电功能,请将以下内容添加到/ etc / modules中,或在其中创建文件(8192cu.conf)。 /etc/modprobe.d/并带有以下行:一直可以访问。

我为/etc/modprobe.d创建文件,它是我为在新版本上进行初步设置而构建的脚本的一部分。

评论


这是在有线网络上

–安迪·史密斯(Andy Smith)
13年6月10日在8:35

不幸的是,我在关闭这些功能时遇到了同样的问题。几个小时不活动后,无线适配器仍然关闭。

– StasM
13年7月31日在7:31

我很好奇它们是否真的被关闭了。 modprobe.d文件的命名尤其是(x.conf)和拼写计数(一如既往)。您的无线适配器是8192cu设备吗?也许您需要其他模块?

– lornix
13年8月1日在6:52

@lornix:您使用了什么命令来打印出正在使用的无线接收器的类型?

–大卫·诺曼(David Norman)
14年8月14日在15:08

lsusb和lsusb -v很有帮助。找出哪个模块并不总是很容易,有几种方法可以将modinfo 8192cu的输出与lsusb输出中的vendor:product编号匹配。

– lornix
14年8月15日在1:36

#2 楼

路由器断开不活动的客户端以释放路由器资源是很常见的。如果客户端未处于活动状态,则可能会随机发生这种情况。

#3 楼

对我来说,问题还在于wifi上的电源管理,但是我没有使用8192cu芯片组,因此另一个答案中的说明对我不起作用。

运行iwconfig并寻找以power management开头的行

如果电源管理已打开,则可以使用以下命令将其关闭:

iwconfig wlan0 power off

#4 楼

我发现在我的情况下,广泛使用ping -ing确实可以再次建立wifi连接。我观察到在第70-100次ping后,Pi开始响应,然后可以成功启动ssh-连接。

编辑关闭省电功能

iw wlan0 set power_save off


单击此处了解详细信息。