CentOS7だと Wake-on-LAN のソフトウェア設定が Systemd でできて便利
これまで、CentOS6系では Wake-on-LAN のソフトウェア設定をCRONやinit.d で ethtool コマンドを実行していました。なんかスマートじゃない感じがしてました。
それがCentOS7系になって、Wake-on-LAN のソフトウェア設定を Systemd で実行できるようになりました。以前より、スマートな感じがします。
なので、Systemdで Wake-on-LAN のソフトウェア設定をしてみました。
まず、ethtoolがインストールされているか確認します。
インストールされていなかった場合、次のコマンドでインストールします。
# yum install ethtool
次のコマンドでNICのソフトウェア設定を確認します。
「Wake-on: d」となっている場合は、Wake-on-LANが無効になっています。
# ethtool eth0 | grep "Wake-on" Supports Wake-on: pumbg Wake-on: d
Wake-on-LAN を有効するため、Systemdにサービスファイルを設置します。
# vim /etc/systemd/system/wol@.service
[Unit] Description=Wake-on-LAN for eth0 Requires=network.target After=network.target [Service] ExecStart=/usr/sbin/ethtool -s eth0 wol g Type=oneshot [Install] WantedBy=multi-user.target
設置したサービスファイル読み込ませるため、次のコマンドを実行します。
# systemctl daemon-reload
サービスを読み込ませたら、サービスを起動し自動起動を有効にします。
# systemctl start wol@interface.service # systemctl enable wol@interface.service Created symlink from /etc/systemd/system/multi-user.target.wants/wol@interface.service to /etc/systemd/system/wol@.service.
次のコマンドで正しくソフトウェア設定ができているか確認します。
# ethtool eth0 | grep "Wake-on" Supports Wake-on: pumbg Wake-on: g
「Wake-on: g」となったことが確認できました。
あとは、別のサーバからマジックパケットを送信するだけです。