我正在寻找有关以下问题的帮助:
问题总结
Debian 服务器应该在局域网上唤醒。安装了实用程序,调整了 BIOS,调整了启动脚本。试图从 linux mint 客户端机器的休眠/暂停/暂停状态中唤醒 - 服务器没有响应。
物理设置
- (S) Debian 服务器(Squeeze,最新)托管 Samba、MySQL、Apache 和 SSH 服务器
- (C1) 客户端:运行 linux mint 17 的台式电脑,最新
- (C2) 客户端:笔记本电脑 - fedora 20
- (C3) 客户端:Raspberry Pi - XBMC 媒体中心
- (Cx) 客户端:外部 PC 通过 SSH 登录到服务器
所有机器(Cx 除外)都在同一个网络中。S、C1、C3 使用有线连接。
服务器规格
- 操作系统:Linux debbi 3.2.0-4-686-pae #1 SMP Debian 3.2.60-1+deb7u3 i686 GNU/Linux (per: uname -a )
- 内存:6GB
- ~2.4 Ghz i686 处理器
- 华硕 P5B 豪华主板
- 相关接口:eth0
- 在试用期间没有设置 iptables,但稍后会在设置 WOL 后跟进
内涵
在一段时间不活动后让服务器 S 关闭/休眠以节省能源(自从我让服务器运行以来,我的电费一直飙升)。如果有新请求,唤醒服务器。
到目前为止的步骤
我一直在尝试在互联网上收集有关如何完成此操作的信息。到目前为止,我的步骤的最佳总结可以在这里找到。
根据这个和手册,AUS P5B Deluxe MB 有 2 个 BIOS 部分,如果应启用 WOL,则需要调整:“Power on PCI/PCIe”和“LAN option ROM”。两个选项都设置为“启用”。
安装 ethtool 并使用ethtool -s eth0 wol g将 wol 选项设置为“g”
这是ethtool eth0的输出
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: pg
Wake-on: g
Current message level: 0x000000ff (255)
drv probe link timer ifdown ifup rx_err tx_err
Link detected: yes
我还使用update-rc.d添加了一个启动脚本,该脚本调用ethtool -s eth0 wol g。根据上面的网站,我也修改了/etc/network/interfaces,现在看起来是这样的
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
/sbin/ethtool -s eth0 wol g
问题
现在,如果我使用pm-utils休眠/挂起 S (不同的问题 - 但使用这些视频信号在启动时会严重失真,并且在 pm-suspend 上,服务器在再次启动时无法恢复),或者只是使用halt,和从 C1 部署以下任何命令
wakeonlan -p 7 -i 192.168.xxx.xx 00:ab:cd:ef:gh:11
wakeonlan -i 192.168.xxx.xx 00:ab:cd:ef:gh:11
wakeonlan 00:ab:cd:ef:gh:11
sudo etherwake 00:ab:cd:ef:gh:11
我没有得到服务器的任何响应。手动启动后,ethtool eth0 确认 wol 选项仍设置为“g”。
问题
- 鉴于上面的描述,您是否看到任何明显的错误或我忘记的东西会导致服务器 S 无法唤醒?
- 我可以运行任何命令来识别问题吗?
这是很多信息。感谢您通读它。期待您的回答!
附加信息/问题
从ethtool eth0的输出可以看出,该芯片组仅支持 magicPacket 唤醒和活动唤醒(p + g 选项)。由于我还需要能够从网络外部登录,因此我正在考虑使用另一个 RaspPi 作为对服务器的请求的网关。使用端口转发,Pi 可以识别专用于服务器 S 的请求,然后发送 magicPacket 以唤醒它。
会有更好/更精简的方法吗?
服务器本身应该在一段时间不活动后进入睡眠状态。我计划每隔几分钟使用netstat命令运行一个脚本来检查端口连接,将结果写入表,然后计算不活动的时间。 这里的问题是我的桌面 C1 一直连接到 samba 服务器,但几乎没有使用它。是否有一个命令可以让我监控端口,包括传出数据包的 nbr?
最后一个:有人知道/有使用 pm-utils 后启动问题的经验吗?