2015年10月16日 星期五

解決「Fedora 22 更新後 WoL (Wake on LAN) 失效」的問題

前一陣子 Fedora 22 做了一次更新後,突然,那台電腦就不能由遠端「網路喚醒」,也沒有變動任何設定,就是不能 WoL (Wake on LAN)。由於那台電腦是放在辦公室,下班後都會先關機,偶而要從家裏連去那台電腦寫些報告。少了 WoL 這個功能,就很不方便。
  查了一下網路訊息,大致看出一些端倪,不過能解決問題才是重點,先記下來有空再深入研究
  • NetworkManager 這個套件計畫將 WoL 加入管理介面,方便由 GUI 變更設定。
  • Fedora 22 收錄的套件,此功能尚未完整,以致不能設定。
  • 原本在 BIOS 設定即可,在某次更新 NetworkManager 後, WoL 功能被預設為關閉。而 NetworkManager 的 GUI 變更設定又尚未完成,所以 WoL 功能才會失效。

以替代方式設定 WoL 功能

用 NetworkManager 管理網路的設定,多可以在 /etc/sysconfig/network-scripts/ 這個目錄下的 ifcfg-XXX 中找到(XXX 表網卡編號)。所以,用「文字編輯器」就可以修改,假設欲使用 WoL 功能的那張網卡編號為 enp3s0,則在「MATE 桌面」環境的命令為
[root@Cori-i7 ~]# pluma /etc/sysconfig/network-scripts/ifcfg-enp3s0
在設定檔中加上『ETHTOOL_OPTS="wol g"』這列設定,如下:
HWADDR="08:00:12:34:56:78"
TYPE="Ethernet"
  .  .  .  .  .
NAME="enp3s0"
  .  .  .  .  .
PEERDNS=yes
PEERROUTES=yes
ETHTOOL_OPTS="wol g"
上例中,"wol g" 在 wol 與 g 之間有一個空白。加上的這個設定,是經由 ethtool 這個程式來設定網卡。再試過幾次開、關機都沒問題了,當然,開機是經由「網路喚醒」功能。

已測試版本:

  • Fedora 22

參考資料:

沒有留言:

張貼留言

感謝你耐心看完本文,歡迎留下任何指正、建議,筆者會儘快回應。(English is also welcome.)