写真提供:Jamison Judd
これは、SathiyaMoorthy によるゲスト投稿です。
Wakeonlan (wol) を使用すると、リモート サーバーに物理的にアクセスせずにスイッチを入れることができます。 Wakeonlan はマジック パケットを Wake-on-LAN 対応のイーサネット アダプタとマザーボードに送信し、リモート コンピュータのスイッチをオンにします。
誤って、再起動する代わりにシステムをシャットダウンすると、Wakeonlan を使用してサーバーの電源をリモートでオンにすることができます。また、24 時間年中無休で稼働している必要のないサーバーがある場合は、いつでもリモートでサーバーの電源を入れたり切ったりすることができます。
この記事では、Wake-On-LAN の概要と Wakeonlan 機能のセットアップ手順について簡単に説明します。
Wake-On-LAN の概要
- マシンが LAN に接続されていて、そのマシンの MAC アドレスがわかっている場合は、Wakeonlan を使用できます。
- お使いの NIC は wakeonlan 機能をサポートしている必要があり、
シャットダウンする前に有効にする必要があります。ほとんどの場合、NIC ではデフォルトで wakeonlan が有効になっています。 - 同じネットワーク (LAN) に接続されている別のマシンからマジック パケットを送信する必要があります。マジック パケットを送信するには root アクセスが必要です。 wakeonlan パッケージをマシンにインストールする必要があります。
- 停電のためにシステムがクラッシュすると、初めてこの機能を使用してマシンの電源を入れることができなくなります。ただし、最初の初回起動後、何らかの理由でサーバーがシャットダウンした場合は、wakeonlan を使用して有効にすることができます。
- WakeonLan は wol とも呼ばれます。
NIC で wol がサポートされているかどうかを確認します
遠隔地から電源を入れたいサーバーで以下のethtoolコマンドを実行します。
# ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg [ Note: check whether flag g is present ]
Wake-on: g [ Note: g mean enabled. d means disabled ]
Current message level: 0x00000001 (1)
Link detected: yes Wake-on をサポートしている場合 が g の場合、NIC カードで wol 機能のサポートが有効になります。
イーサネット カードで wol オプションを有効にする
デフォルトでは、ほとんどのマシンで Wake-on が g に設定されます。そうでない場合は、ethtool を使用して、以下に示すように g フラグを NIC カードの wol オプションに設定します。
# ethtool -s eth0 wol g
注: root として ethtool を実行する必要があります。そうしないと、次のエラー メッセージが表示される場合があります。
$ /sbin/ethtool eth0
Settings for eth0:
Cannot get device settings: Operation not permitted
Cannot get wake-on-lan settings: Operation not permitted
Current message level: 0x000000ff (255)
Cannot get link status: Operation not permitted 別のマシンに wakeonlan パッケージをインストールする
サーバーをオンにするためにマジック パケットを送信する必要があるマシンに、wakeonlan パッケージをインストールします。
# apt-get install wakeonlan
リモート サーバーの MAC アドレスを書き留めます
リモートでオンにするサーバーの MAC アドレスを書き留めます。
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:16:k5:64:A9:68 [ Mac address ]
inet addr:192.168.6.56 Bcast:192.168.6.255 Mask:255.255.255.0
inet6 addr: fe80::216:17ff:fe6b:289/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3179855 errors:0 dropped:0 overruns:0 frame:0
TX packets:2170162 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3832534893 (3.5 GB) TX bytes:390304845 (372.2 MB)
Interrupt:17 最後に、物理的なアクセスなしでマシンの電源をリモートでオンにします
サーバーが起動していない場合は、同じ LAN に接続されている別のマシンから次のコマンドを実行します。マジック パケットが送信されると、リモート システムが起動を開始します。
# wakeonlan 00:16:k5:64:A9:68
この記事は の開発者、SathiyaMoorthy によって書かれました。 エンタープライズ postgres クエリ アナライザー。postgresql ログを解析して html レポートを生成するための効率的なツールであり、postgres 設定の微調整と sql クエリに使用できます。 The Geek Stuff は、あなたのヒントやゲスト記事を歓迎します。