Wake-on-LANの使い方

2010/06/02Linuximport

Wake-on-LANを使ってLinuxサーバからWindowsクライアントをスリープ解除する

Wake-on-LANとはパソコンをLAN経由でリモート起動する操作のことです.
Linuxマシン(サーバ)から,同一LAN内のWindowsマシンを起動するのにどういうことをしたか,というのをメモしておきます.

Windowsマシン側の設定1 OSの設定

  1. コントロールパネルから下の画面を辿ってデバイスマネージャまでたどり着きましょう.

WS000001.JPG


WS000002.JPG


WS000003.JPG


WS000004.JPG




たどり着いたら,そこのネットワークアダプタのプロパティーの内,下に示したような項目を設定しましょう(マザーボードやNICによって異なります.).

WS000005.JPG


WS000006.JPG


WS000007.JPG


WS000008.JPG



追記.下の画面のように,「管理ステーションでのみ、コンピュータのスタンバイ状態を解除できるようにする」にもチェックを入れてください.そうしないと,スタンバイ状態に移行してすぐに勝手に復帰してしまいます.

WS000010.JPG

BIOSの設定

BIOSの設定も適切に行わないと,Wake-on-LANは働きません.
これもマザーボードによってことなります.
BIOSの設定画面で,電源管理やLANなどと書いてある項目をEnableにします.
これは勘でやってください.項目名を見ながらそれっぽいなと思ったところをいじると,それでたぶん当たります.

以上で,Windows側の設定は終わりです.

Linuxサーバ側の設定と操作

wakeonlanコマンドのインストール

コマンドラインで動作する,wakeonlanという名前そのままのプログラムがあるのでそれをインストールします.
Debianなら,aptitudeで簡単に導入できます.実はこれだけで準備完了です.

実際の使い方

Windowsマシンをスリープモードにした後,
Linuxサーバの端末上(もちろん遠隔地のクライアントからアクセスしていても構わない)で,
下のように入力します.一般ユーザで構いません.
username@BigOwl:~$ wakeonlan ○○:○○:○○:○○:○○:○○
なお,『○○:○○:○○:○○:○○:○○』は対象のWindowsマシンのMACアドレスです.
Windowsマシンでipconfigコマンドを使って調べるなどしてください.
そして,エンターを押すと,下のような表示が出て,Windowsマシンがスリープモードから立ち上がります.
username@BigOwl:~$ wakeonlan ○○:○○:○○:○○:○○:○○
Sending magic packet to 255.255.255.255:9 with ○○:○○:○○:○○:○○:○○
username@BigOwl:~$
使い道ですが,私の環境ではサーバ機はWANからSSHでアクセスできるようにしてあるので,
そこを基点に,Windowsマシンを必要なときにだけ起動して,
それ以外の時はスタンバイにしておくというようなことができます.省エネですね.

crontab

2010/05/14Linuximport
crontabはUNIX系OSにおける,定期的なプログラムの実行を行うためのコマンド.
このコマンドの利用により,『毎週土曜日,23:00に録画プログラムを起動して,録画を開始する』というようなことが可能になる.

このコマンドは,まず,次のように入力する.
BigOwl:~# crontab -e
すると,デフォルトのエディタ(私の環境の場合はvim)が起動して,crontabのファイルが開かれる(チルダ~はvimにおける,編集ファイル中の何も入力されていない(行も存在しない)部分であることを示す).
# m h  dom mon dow   command
~
~
~
~
~
この最初から存在する行は,コメント文である.行頭から,#はコメントを示す記号,mはmin,hはhour,domは日(たぶんday of the month),monは月,dowは曜日(day of the week),commandは実行したいコマンド・ファイル名という意味.


この書式に従って,実行したいコマンドとその実行時刻を記述する.
下の例では,毎日3時25分に/root/analog.sh(webサーバのログ解析ソフトを実行するシェルスクリプト)を実行するような記述である.
# m h  dom mon dow   command
25 3 * * * /root/analog.sh
~
~
~
~
『Esc→:wq』でvimを終了すると,『crontab: installing new crontab』という表示が現れ,crontabが更新されたことがわかる.

analog

2010/04/22Linuximport

概要と簡単な使い方

これはログ解析ソフト.
通常はcronコマンドと併用して
自分のサイトにどんなアクセスがあったかを確認するといった用途に使うコマンド.
Debian Lennyでは,webサーバをインストール時に選択すると
標準でインストールされるようである(ただ私が忘れてるだけ?).

この記事では,以下のサイトの記事を大いに参考にしています(ここに書いてあることしかしていない?).
いきなりナウでヤングなWebサイトの管理をしろといわれても……~Webサーバアクセスログ調査編~

とりあえず,html形式で結果をはいてくれるので,保存して表示させたければ,以下のようにコマンドを打ってみる.
BigOwl:~# analog > analog.html
BigOwl:~# mv analog.html /var/www/
これで,自分のサーバのrootに行くと,その情報を閲覧できる.

設定

いろいろな設定が出来る.その設定ファイルは/etc/analog.cfgである.

例えば,これに以下を追加する.
LANGUAGE JAPANESE-UTF
SEARCHCHARCONVERT ON
DNS WRITE
DNSFILE dnsfile.txt
DNSLOCKFILE dnslock
DNSGOODHOURS 672

FULLBROWSER ON
FAILUSER ON
解説する.
LANGUAGE JAPANESE-UTF ←日本語 UTFで出力ページを作成
SEARCHCHARCONVERT ON ←検索語を日本語にコンバート
DNS WRITE            ←以下4行,DNSを表記するために記述
DNSFILE dnsfile.txt
DNSLOCKFILE dnslock
DNSGOODHOURS 672

FULLBROWSER ON       ←ブラウザ情報の記述
FAILUSER ON          ←ユーザ認証の失敗ログ

自動化の下準備

cronで自動実行するには,シェルスクリプトを作っておくと便利.
以下のようなスクリプトをanalog.shとして保存してみた.
#/bin/bash

mv /var/www/log/analog/index.html /var/www/log/analog/analog-`date '+%Y-%m%d-%H%M'`.html
analog > /var/www/log/analog/index.html