透過WoL遠端啟動並操作PC

3 min

language: ja bn en es hi pt ru zh-cn zh-tw

新年快樂!
我是無能。

我決定暫時把家裡的伺服器放在老家,而且感覺即使不簽高速網路合約,只要使用老家伺服器的網路,也不會有太多不便,所以我希望能夠使用我作為建置和桌面環境遠端環境(VNC伺服器)的Ryzen機器。

但是,我也不想讓機器一直開機,所以我想讓它能夠遠端啟動。

遠端配置概念

我預計主伺服器會一直開機,所以會透過它來啟動Ryzen機器並進行SSH連線。
那麼,要如何存取這台主伺服器呢?我會透過Vultr的VPN伺服器,從VPN網路內部存取主伺服器,並將其用作啟動Ryzen機器和SSH客戶端。

  1. 從Vultr - FreeBSD伺服器SSH到家裡伺服器
  2. 從家裡伺服器透過WoL啟動Ryzen機器
  3. 從家裡伺服器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連線了。 那麼。
祝大家有個美好的一年。

Related Posts