网络唤醒不工作

网络唤醒不工作

我一直在尝试让局域网唤醒功能在我的 Ubuntu 服务器 (14.04.1 LTS) 上运行,我已将其配置为家用 NAS 盒。我按照几个教程尝试让它运行,但出于某种我无法追踪的原因,它没有运行。

该系统是旧的(4-5年历史)航天飞机电脑系统(Shuttle SN78SH7),amd64 cpu(AMD Athlon 64 X2 7550)。

迄今采取的措施

  1. 我在 BIOS 上设置了 WoL
  2. 我已在 eth0 上启用 WoL(方法 g)
  3. 我添加了一个脚本,以便 eth0 在启动时保持为 g
  4. 我可以确认网卡上的绿灯和橙灯都亮着

如果我使用 ethtool,我可以看到以下内容,我相信这意味着它已按预期配置。

Supports Wake-on: g
Wake-on: g

我在用命令(从 mac)发送魔术包到ifconfig eth0(到端口 9)中指定的 MAC 地址、IP 地址和子网。

我不确定下一步该怎么做才能解决这个问题。

更新

我可以确认,如果我暂停(),WoL 有时确实会起作用,但如果我使用(或) pm-suspend,则不起作用。暂停似乎真的不稳定,因此对我来说,使用它可能不是一个好答案。halt -pshutdown -h now

答案1

这不是 Linux 特有的问题。局域网唤醒是由主板和网卡实现的,而不是操作系统。如果可以,请尝试升级主板 BIOS,并注意SN78SH7 手册

WOL(PME#) 来自软关机如果此项设置为 Enable,则当 LAN 端口接收到传入信号时,系统电源将打开。您必须将传真/调制解调器连接到主板 Wake On LAN 连接器才能使用此功能。选项:Enabled 或 Disabled。

MAC 从 S4/S5 恢复此项允许您启用/禁用 S4/S5 中的 MAC 恢复。选项:禁用或启用。

您需要启用这两个选项。特别是,MAC 从 S4/S5 恢复需要启动已关机的 PC。

答案2

  1. 首先,安装ethtool

    sudo apt install ethtool
    
  2. 为了测试并暂时启用 WoL:

    ethtool -s eth0 wol g
    

    替换eth0为您的网络接口的名称。

  3. 要永久启用 WoL,请编辑/etc/network/interfaces并添加下一行(从 Debian 6“Squeeze”及以上版本):

    iface eth0 inet dhcp
         ethernet-wol g
    

相关内容