
在當今科技驅動的世界裡,自動化趨勢已延伸到我們生活的方方面面——從車輛到家居,尤其是在我們的運算環境中。一種有效的自動化 PC 啟動方法是利用網路喚醒 (WoL)。雖然本指南專門介紹如何在 Ubuntu 上啟用 WoL,但這些說明也可以適用於其他 Linux 發行版,包括 Windows 系統。
了解區域網路喚醒
網路喚醒是一種網路協議,旨在允許使用網路封包遠端啟動電腦。這些資料包(稱為「魔術包」)可以從同一本地網路上的任何裝置(包括無線連接)發送。
每個「魔術包」都編碼有目標電腦網路卡 (NIC) 的 MAC 位址,從而提供唯一的識別碼。當 NIC(持續處於低功耗狀態)接收到「魔術包」時,它會提示主機板啟動啟動序列。
準備系統以進行 LAN 喚醒
首先,您必須確保您的設定符合以下先決條件:
- 有線乙太網路連線(Wi-Fi 選項通常功能有限)。
- 經過 WoL 認證的主機板和網路卡(大多數現代型號都支援此功能)。
- 啟用 WoL 的適當 BIOS/UEFI 配置。
- 您的 Ubuntu 系統上的管理員權限。
驗證硬體和 BIOS 設定
首先,確認您的硬體相容網路喚醒功能。大多數現代桌上型電腦和筆記型電腦都提供此功能,但請務必進行驗證。
若要檢查,請重新啟動電腦並進入 BIOS/UEFI 設定(通常按F2、 F10、 Del或鍵存取Esc-觀察啟動畫面以取得指導)。搜尋標有「網路喚醒」、「透過 PCI-E 開機」或「允許 PCI 喚醒事件」的選項,並確保它們已設定為「已啟用」。
此外,您可能需要停用名為 ErP Ready 或 Deep Sleep 的功能,該功能可完全切斷網路卡的電源並阻止其接收魔術包。此外,某些筆記型電腦需要啟用 Always On USB 等設置,以便網路卡在系統關機或睡眠模式下保持供電。
檢查網卡相容性
您的網路卡必須支援網路喚醒功能才能有效運作。過去十年生產的大多數網卡都支援此功能,但建議您務必確認。
若要識別您的網路卡,請在終端機中執行下列命令:
ip a
您的乙太網路介面名稱將類似於enp8s0
,這在本指南中作為範例。

Ethtool 是用於修改網路驅動程式設定的開源工具,對於網路喚醒配置至關重要。
使用以下命令安裝 Ethtool:
sudo apt install ethtool
接下來,檢查您的網路卡是否支援 WoL:
sudo ethtool <Your interface name>
輸出將提供關鍵訊息,包括以下行:
Supports Wake-on: g
「g」的存在確認了 WoL 相容性,而下一行表示它目前是否已啟用。
臨時啟用區域網路喚醒
若要暫時啟動 WoL(直到下次重新啟動),請使用以下指令:
sudo ethtool -s <interface_name> wol g
若要確認更改,請執行:
sudo ethtool <interface_name>
如果輸出包含Wake-on: g
,則 WoL 已成功激活,儘管只是暫時的。
永久啟用區域網路喚醒
為了確保區域網路喚醒在系統重新啟動後仍然有效,請設定一個 Systemd 服務,該服務在系統啟動時自動執行 ethtool 命令 – 這是在現代 Linux 發行版上維護設定的可靠方法。
首先,您需要建立一個 systemd 服務檔案。雖然nano
建議使用,但您可以選擇任何適合您偏好的文字編輯器:
sudo nano /etc/systemd/system/wol.service
如果不確定 etahtool 的安裝位置,請執行:
which ethtool
將以下內容插入您的服務文件中:
[Unit] Description=Enable Wake On Lan [Service] Type=oneshot ExecStart=<Your filepath> --change <Your ethernet interface name> wol g [Install] WantedBy=basic.target
貼上配置並替換後
接下來,啟用新建立的服務,以便它在啟動時使用以下命令執行:
sudo systemctl enable wakeonlan.service
您可以使用以下命令立即啟動服務而無需重新啟動:
sudo systemctl start wakeonlan.service
您的 Ubuntu 電腦現已配置為在重新啟動後持續啟動 LAN 喚醒功能。
使用進階網路連線編輯器進行配置
對於運行 Ubuntu 桌面的使用者來說,啟動區域網路喚醒的最簡單方法是透過圖形進階網路連接編輯器。
透過應用程式選單開啟此工具。

在網路窗格中,找到您的乙太網路連接,按一下齒輪圖標,然後存取連接設定。

在乙太網路設定標籤中,找到「區域網路喚醒」選項。勾選“Magic”或“MagicPacket”複選框,然後點擊“應用”。

您的網路喚醒功能現已成功設定。若要驗證,請執行以下命令:
sudo ethtool enp0s3
Wake-on: g
在結果中尋找。
使用 nmcli(網路管理器命令列介面)啟動 WoL
如果您是 Ubuntu 桌面用戶,您可能已經熟悉 NetworkManager。此工具簡化了 Wi-Fi 和有線網路的連接,並且允許使用 進行命令列配置nmcli
。
首先識別您的活動網路連線:
nmcli connection show
如果輸出顯示802-3-ethernet.wake-on-lan: default
,則表示 WoL 已停用。如果顯示“magic”,則表示您的系統已配置為回應此類資料包。
若要透過 NetworkManager 啟用 LAN 喚醒,請執行下列命令:
nmcli connection modify 802-3-ethernet.wake-on-lan magic
運行此命令後,您的 Ubuntu 桌面現在應該準備好回應魔術包,儘管您可能不會立即收到回饋。
如果需要,請停用它同樣簡單。只需將“magic”改為ignore
:
nmcli connection modify 802-3-ethernet.wake-on-lan ignore
此指令指示您的網路介面卡忽略傳入的魔術包,從而停用該連線的 LAN 喚醒功能。
測試您的網路喚醒配置
要測試你的 WoL 設置,請關閉或掛起你的 Ubuntu 機器。然後,使用另一台裝置(可以是 PC、智慧型手機、Raspberry Pi 等)向你的機器的 MAC 位址發送一個魔法資料包。有許多應用程式和命令列工具可用;在你常用的應用程式商店中搜尋「Wake-on-LAN」。
如果您的網路上有另一個 Linux 或 macOS 系統,則可以使用名為 wakeonlan 的實用程式直接透過終端機發送魔術套件。
對於使用基於 Debian/Ubuntu 發行版的用戶,請如下安裝:
sudo apt install wakeonlan
發送魔術包很簡單:
wakeonlan <Your Ubuntu MAC Address>
確保將其替換為您的 Ubuntu 機器的實際 MAC 位址。
Windows 用戶還可以輕鬆存取各種免費實用程序,其中一個值得一提的選項是NirSoft 的 WakeMeOnLan。這款便攜式應用程式可以掃描您的網路並協助發送魔術資料包。或者,進階使用者可以利用 PowerShell 進行命令列操作,儘管需要稍微多一些設定。
啟用 WiFi 喚醒 (WoWLAN)
既然已經實現了透過 LAN 開機,那麼如何設定無線區域網路喚醒 (WoWLAN) 呢?目前,只有一個 snap 應用程式(網路管理器)提供此功能。
您可以透過 Snap Store 或終端機使用以下命令安裝它:
sudo snap install network-manager

請注意,這款應用程式在應用程式商店中獲得了一星的低用戶評分。不過,在我們的測試中,它在終端模式下表現良好,並且包含 Canonical 提供的詳盡文件。
透過不同的網路管理器啟動 WoWLAN 的替代嘗試可能會面臨限制,因為預設(networkd)缺乏啟用方法。
若要啟動無線區域網路喚醒,請使用下列命令:
sudo snap set network-manager wifi.wake-on-wlan=magic
如果擔心安全問題,特別是在開放網路上,請使用以下方式設定密碼:
sudo snap set network-manager wifi.wake-on-wlan-password=<Your password>
這種方法在安裝速度和無線 WoL 功能方面比 ethtool 更具優勢。由於它在核心層級運行,因此在斷電後仍然可以實現網路喚醒。
然而,Canonical 建議 Ubuntu Core 使用者主要使用它,可能是為了最大限度地降低破壞使用者作業系統穩定性的風險。
常見問題
我可以使用區域網路喚醒功能關閉我的電腦嗎?
網路喚醒嚴格用於將您的 PC 從睡眠或關機狀態喚醒,而不是關閉它。
啟用區域網路喚醒是否有安全性風險?
任何系統都不可能完全沒有風險。然而,區域網路喚醒需要授權才能恢復運作。只要您使用強密碼保護設備,對敏感資料進行加密,並避免使用不安全的網絡,啟用區域網路喚醒通常都是安全的。
如果我的設備斷電後區域網路喚醒功能停止運作怎麼辦?
使用 ethtool 實施的變更在斷電後不會保留。請重新登入系統以重新啟用該服務。相反,透過 network-manager 方法設定的配置即使在斷電後也會保持不變。
發佈留言