Ubuntu 20.04.1 LTSをインストールしたEQUIUM S7100にWake On LANを設定して遠隔起動できるようにします。
WOL(Wake On LAN)設定
環境
- Ubuntu Desktop 20.04.1 LTS
BIOS設定
WOLを行うためにはパソコン本体側のBIOSの設定が必要です。
EQUIUM S7100のBIOSを起動して、WOLを有効にします。
BIOSの起動はF2を押して起動します。
設定項目は、[Advanced]の中にある[Wake On Lan from S5]で、この値を Enabled に変更します。
S5は電源断を意味していると思います。
ubuntuの設定
ethtoolのインストール
WOLを行うためにethtoolをインストールします。
1 |
$ sudo apt install ethtool |
このパッケージはNIC(Network Interface Card)に関する設定を行うことができるユーティリティーです。
現在のWOL設定を確認する
インストールしたethtoolを使用して、現在のWOL設定を確認します。
WOL設定を確認するためには sudo ethtool [ネットワークインタフェース名] を実行しますが、ネットワークインタフェース名を知っておく必要があるので、まずはネットワークインタフェース名を確認します。
1 |
$ ip add show |
私の場合、enp4s0という名前であることが分かりました。 以下のコマンドでWOL設定を確認します。
※ enp4s0 はご自身のインターフェース名に置き換えてください。
1 2 3 |
$ sudo ethtool enp4s0 | grep -i wake Supports Wake-on: pumbg Wake-on: g |
Wake-on: が d ならWOL無効。g ならWOL有効です。
今回は g なのでWOLは有効になっています。
WOLを有効にする
WOLを有効にするには以下のコマンドを実行します。
1 |
sudo ethtool -s enp4s0 wol g |
これで、WOLが有効になります。
ただし、有効になるのは次回起動時のみで、次々回以降はWOLが無効になります。
そのため、ずっとWOLを有効にしたい場合は、ubuntuが起動するたびに”sudo ethtool -s enp4s0 wol g”が実行されるように設定しなくてはなりません。
起動時にWOLを有効にするスクリプト
シェルスクリプトの保存場所、名前は任意です。
1 2 3 4 5 6 |
$ sudo vi /home/wolg #!/bin/bash ethtool -s enp4s0 wol g exit |
作成したシェルスクリプトに実行権限を付与します。
1 2 3 4 5 6 7 8 |
# ll /home/wolg -rw-r--r-- 1 root root 45 11月 27 14:08 /home/wolg # ↑実行権限がない # sudo chmod +x /home/wolg # ll /home/wolg -rwxr-xr-x 1 root root 45 11月 27 14:08 /home/wolg* # ↑実行権限を付与した |
サービスに登録するため、systemdのユニット定義ファイルを作成します。
1 2 3 4 5 6 7 8 9 10 11 |
$ sudo vi /etc/systemd/system/wolg.service [Unit] Description=Enable Wake-On-Lan [Service] Type=simple ExecStart=/home/wolg Restart=always [Install] WantedBy=multi-user.target |
作成したファイルを登録し、起動します。
1 2 3 |
$ sudo systemctl daemon-reload $ sudo systemctl enable wolg.service $ sudo systemctl start wolg.service |
これでubuntuのWOL設定は終わりです。
設定の確認
想定通りの挙動になっているか、端末を一度再起動してみましょう。
1 2 3 |
# ethtool enp4s0 | grep Wake-on Supports Wake-on: pumbg Wake-on: g |
“Wake-on: g “となっていれば問題ないですね。
Wake On LANをやってみて問題がないか最終確認しましょう。
Wake-on: g とならないとき
もし、”Wake-on: d”となった場合、以下のコマンドで状況を確認してみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 |
$ systemctl status wolg.service ● wolg.service - Enable Wake-On-Lan Loaded: loaded (/etc/systemd/system/wolg.service; enabled; vendor preset: enabled) Active: failed (Result: start-limit-hit) since Wed 2021-04-09 10:05:48 JST; 43s ago Process: 883 ExecStart=/home/wolg (code=exited, status=0/SUCCESS) Main PID: 883 (code=exited, status=0/SUCCESS) 4月 09 10:05:48 XXXX systemd[1]: wolg.service: Scheduled restart job, restart counter is at 5. 4月 09 10:05:48 XXXX systemd[1]: Stopped Enable Wake-On-Lan. 4月 09 10:05:48 XXXX systemd[1]: wolg.service: Start request repeated too quickly. 4月 09 10:05:48 XXXX systemd[1]: wolg.service: Failed with result 'start-limit-hit'. 4月 09 10:05:48 XXXX systemd[1]: Failed to start Enable Wake-On-Lan. |
wolg.serviceがfailedになっています。
この場合の対応は以下の記事にまとめました。
マジックパケット送出の準備
WOLを実行するときはマジックパケットをLAN内の別の端末から送出する必要があります。
私の環境ではASUSルーター RT-AX56Uでは、マジックパケットを送出する機能があるので、ルーターにマジックパケットを送出する対象としてEQUIUM S7100を登録します。
ネットワークツール – Wake on LANから登録します。
以上で、すべての準備が完了しました。
起動方法
ASUSルーターからマジックパケットを送出します。
クライアント名(MACアドレス)から対象の端末をクリックし、『ウェイクアップ』をクリックするとマジックパケットが送出されます。
無事起動することができました。
1 2 3 |
# ethtool enp4s0 | grep Wake-on Supports Wake-on: pumbg Wake-on: g |
起動後にubuntuのWOL設定を見てみると、想定した通りWake-on: gとなっています。 これで、OpenVPN+WOLで外出先からEQUIUM S7100を起動できるようになりました。
コメント
とても参考になりました
ありがとうございました
> 通りすがり
コメントありがとうございます。
お役に立てたようで幸いです。
[…] ubuntuでWake On LANを設定する Ubuntu 20.04.1 LTSをインストールしたEQUIUM S7100にWake On […]