0%

ubuntu 通过网卡开启网络唤醒 wake on lan

虽然NAS空载时功耗不高,挂两3.5寸机械硬盘控制在40w以内,但24小时开着也是浪费。

我现在的方案是一个树莓派24x365天开机(5w左右),树莓派通过tailscale穿透,在外需要使用NAS时,连上树莓派,通过树莓派发送magic packet开机,crontab设置凌晨自动关机。

除了在BIOS里开启Wake on lan, ubuntu也需要设置过,才能支持Wake on Lan。

安装ethtool

1
2
sudo apt-get install ethtool

查看网卡名称

1
ifconfig

我这里是enp3s0,可能是eth0,eth1,enp2s0之类的

同时记录网卡的mac地址,发送唤醒包需要

添加设置服务

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

1
2
3
4
5
6
7
8
9
10
11
[Unit]
Description=Wake-on-LAN
Requires=network.target
After=network.target

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

[Install]
WantedBy=multi-user.target

保存配置,启用:

1
2
sudo systemctl enable wol
sudo systemctl start wol

网络唤醒

树莓派里安装wakeonlan

1
sudo apt install wakeonlan

发送唤醒包:

1
wakeonlan xx:xx:xx:x:xx:xx