必须用etherwake工具向目标MAC地址发送UDP广播魔术包:先安装sudo apt install etherwake,再执行sudo etherwake -b MAC地址;需确保同网段、交换机不禁广播,且MAC准确无误。

要在局域网内远程唤醒一台已关机但支持WOL的麒麟电脑,必须从另一台麒麟设备出发,向目标主机的MAC地址发送符合规范的魔术包(Magic Packet),且该包需以UDP广播形式发往255.255.255.255或目标子网广播地址——直接发单播IP无效,发错端口或MAC也会失败。
安装并验证etherwake工具
麒麟OS默认不预装etherwake,需手动安装专用于发送魔术包的轻量工具。它比net-tools中的wakeonlan更底层、兼容性更好,尤其适配国产网卡驱动。
打开终端,执行:
sudo apt update && sudo apt install etherwake -y
安装完成后,运行etherwake -V确认版本输出,若报“command not found”,说明安装失败或未刷新PATH,需重启终端或执行source /etc/environment。
获取目标麒麟电脑的MAC地址
这一步必须在目标机**开机且联网状态下**完成,关机后无法通过ARP查询;若已关机又无记录,只能拆机查网卡标签或进BIOS看网络信息。
在目标麒麟电脑上执行:
ip link show $(ip -br a | grep UP | grep -v 'lo' | awk '{print $1}') | grep -o -E '([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}'
输出形如:00:1a:2b:3c:4d:5e——这就是你要用的MAC地址,【务必一字不差复制,字母大小写不影响,但冒号不能漏、不能用短横线】。
若目标机已关机且你手头没有其MAC记录,可尝试在局域网路由器后台的“已连接设备列表”中查找对应IP的MAC;部分华为/TP-Link管理页会显示设备厂商名(如“Kylin OS”),有助于识别。
从本机发送魔术包唤醒目标
确保本机与目标机处于同一局域网网段(即子网掩码一致,例如都是255.255.255.0),且中间交换机未开启“广播风暴抑制”或“未知单播/组播/广播丢弃”策略——这类企业级限制会直接过滤魔术包。
方法一:使用etherwake发送标准广播包
在本机终端中执行:
sudo etherwake -b 00:1a:2b:3c:4d:5e
其中-b参数强制使用UDP广播(推荐),不加-b则尝试单播,而关机状态下单播必然失败。
方法二:指定网卡接口发送(当本机有多个网卡时必须)
先执行ip -br a查看本机所有UP状态网卡名,例如enp4s0;再运行:
sudo etherwake -i enp4s0 -b 00:1a:2b:3c:4d:5e
若提示“Interface does not support broadcasting”,说明该网卡驱动不支持广播模式,换用其他UP状态的有线网卡重试——无线网卡普遍不支持WOL发送,切勿使用wlan0等接口。
方法三:用wakeonlan命令替代(需额外安装)
若etherwake不可用,可改用wakeonlan:
sudo apt install wakeonlan -y
然后执行:
wakeonlan 00:1a:2b:3c:4d:5e
注意:wakeonlan默认发往255.255.255.255:9,无需加-b,但某些老旧交换机可能屏蔽UDP端口9,此时etherwake -b更可靠。











