我的目标是唤醒我的电脑。
我已通过 LAN 将 Raspberry Pi 直接连接到 PC。我已安装etherwake
和wakeonlan
,但两个命令均失败。
嗯,实际上它并没有真正失败,相反:它说它成功了,但我的电脑仍然处于关闭状态并且处于休眠状态!
如何找到我的电脑的mac地址:
还重新检查了:
我尝试了这两个命令:
sudo wakeonlan <my mac address>
输出:
Sending magic packet to 255.255.255.255:9 with 00:25:xx:xx:xx:xx
然后我拿回了我的主机(什么都没发生),
和
sudo etherwake <my mac address>
没用。我拿回了我的控制台,没有任何警告/成功或其他什么的。
然后我尝试了这个命令
sudo etherwake <my mac address> -D
输出:
The target station address is 0:25:xx:xx:xx:xx.
Packet is ff ff ff ff ff ff 00 25 xx xx xx xx 08 etc. etc.
Sendto worked ! 116
有人能帮我吗?
这是我的主板:
asrock-z68-extreme4-gen3
哦,是的!已启用从板载 LAN 启动!我到现在检查了 10 次。
答案1
在目标系统的 BIOS 中启用 WOL 后,请检查其操作系统中是否启用了 LAN 唤醒。在 Linux 中,可以使用以下命令(在目标系统上)完成此操作:
sudo ethtool <NIC> | grep "Wake"
其中<NIC>
是接口名称,如eth0
。输出应类似于以下内容:
Supports Wake-on: g
Wake-on: g
如果 的输出Supports Wake-on
不包含字母,g
则您的硬件或驱动程序不兼容。如果它包含g
并且 的输出Wake-on
包含d
但不包含g
,您应该能够使用以下命令启用 WOL:
sudo ethtool -s <NIC> wol g
请注意,此设置在重启后不再有效,因此您必须将命令(减去sudo
)存储在启动时将执行的位置,例如/etc/network/interfaces
(它也将在ifdown
/ifup
循环中持续存在)或/etc/rc.local
。
现在您应该能够使用该wakeonlan
命令从其他地方唤醒系统。
参考: Ubuntu 帮助:局域网唤醒
答案2
遇到了类似的问题,最后对我有帮助的是在 wakeonlan 上使用 -i 标志传递 ip 地址。
由于某种原因,它不仅适用于 mac 地址,而且结合我在该机器上的静态 IP,我设法将其唤醒