Ubuntu 18.04 LTS 启用 WakeOnLAN

Ubuntu 18.04 LTS 启用 WakeOnLAN

本文记录局域网内,网络唤醒主机的办法,需要BIOS开启WOL支持。

1. 本机安装ethtool

sudo apt install ethtool -y

2. 查看本机MAC地址

ifconfig -a

本机网卡名为eno1,有的名叫eth1,MAC地址保存在如下行内:

ether xx:xx:xx:xx:xx txqueuelen 100 (Ethernet)

3. 本机配置开机启动ethtool服务

一种是写死使用的网卡:

sudo vi /etc/systemd/system/wol.service

wol.service 编写如下:

[Unit]
Description=Configure Wake On LAN

[Service]
Type=oneshot
ExecStart=/sbin/ethtool -s INTERFACE wol g

[Install]
WantedBy=basic.target

然后设置开机启动:

sudo systemctl daemon-reload
sudo systemctl enable wol.service
sudo systemctl start wol.service

另一种是通过参数指定网卡,推荐使用:

sudo vi /etc/systemd/system/wol@.service

注意这里有一个@,后面使用的时候会有对应用法。
wol@.service 编写如下:

[Unit]
Description=Wake-on-LAN for %i
Requires=network.target
After=network.target

[Service]
ExecStart=/sbin/ethtool -s %i wol g
Type=oneshot

[Install]
WantedBy=multi-user.target

调用的时候注意传入网卡名称,如本机网卡名为eno1

sudo systemctl daemon-reload
sudo systemctl enable wol@eno1
sudo systemctl start wol@eno1

4. 远程启动机器

首先安装wakeonlan包:

sudo apt install wakeonlan -y

然后直接把MAC地址作为命令行参数

wakeonlan <MAC-Addr>

奇怪的是,我在局域网内另一台有线联网的主机可以唤醒该主机,笔记本无线联网却无法唤醒??

参考

https://blog.filegarden.net/2020/06/08/how-to-enable-wake-on-lan-in-ubuntu-server-18-04-debian-based-systems-systemd/

https://askubuntu.com/questions/764158/how-to-enable-wake-on-lan-wol-in-ubuntu-16-04

https://oldtang.com/2314.html

最后一个是netplan启用wakeonlan的方法

posted @ 2021-01-23 22:16  与MPI做斗争  阅读(1344)  评论(0编辑  收藏  举报