透過WoL遠端啟動並操作PC
新年快樂!
我是無能。
我決定暫時把家裡的伺服器放在老家,而且感覺即使不簽高速網路合約,只要使用老家伺服器的網路,也不會有太多不便,所以我希望能夠使用我作為建置和桌面環境遠端環境(VNC伺服器)的Ryzen機器。
但是,我也不想讓機器一直開機,所以我想讓它能夠遠端啟動。
遠端配置概念
我預計主伺服器會一直開機,所以會透過它來啟動Ryzen機器並進行SSH連線。
那麼,要如何存取這台主伺服器呢?我會透過Vultr的VPN伺服器,從VPN網路內部存取主伺服器,並將其用作啟動Ryzen機器和SSH客戶端。
- 從Vultr - FreeBSD伺服器SSH到家裡伺服器
- 從家裡伺服器透過WoL啟動Ryzen機器
- 從家裡伺服器SSH到Ryzen機器
流程如上。
Ryzen機器端的準備
在Ryzen機器上啟用Wake on LAN
Wake on LAN預設應該是關閉的。
它會在接收到特定封包,即魔術封包時啟動機器。
從Ryzen機器的BIOS畫面啟用它。

確認Ryzen機器是否已識別
使用ethtool確認Wake on LAN是否已啟用。
sudo pacman -S ethtool
sudo ethtool eth0
如果顯示為Wake-on: g,則表示正常。
alleycat:[hrtaro]:~$ sudo ethtool eth0
[sudo] hrtaro のパスワード:
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: Symmetric
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: g
然後,記下這台機器的MAC位址。
ip link show eth0
現在將其關機。請注意,如果沒有-h選項,它將進入維護模式的單用戶模式。
sudo shutdown -h now
Ryzen機器端的設定到此結束。
客戶端準備
安裝wake on lan
由於要啟動的機器是Devuan,所以我們用apt搜尋一下。
$ sudo apt search wakeonlan
正在排序... 完成
全文搜尋... 完成
gwakeonlan/stable 0.8.5-1 all
使用 Wake on LAN 喚醒機器的工具
wakeonlan/stable 0.41-12.1 all
向啟用 wake-on-LAN 的乙太網路介面卡發送「魔術封包」
找到了! 安裝
sudo apt install wakeonlan
使用wakeonlan啟動
這樣就可以啟動了。
$ wakeonlan {macAdress}
Sending magic packet to 255.255.255.255:* with {macAdress}
本來以為會很麻煩,沒想到比預期中順利,連我自己都感動了!
接下來,當ping -c 5 啟動機器的IP開始有回應時,就可以SSH連線了。
那麼。
祝大家有個美好的一年。