BOOK Preview

サーバー管理者のためのイベントログ運用の基本

第7章 OS関連のイベント

7.2 サービスの起動・停止に関するイベント
7.2.1 「サービス」について
7.2.2 管理ツールとサービスコントロールマネージャ
7.2.3 サービスコントロールマネージャが記録するイベント

毎日コミュニケーションズの書籍紹介ページへ
書籍情報のページ
2005/09/13

7.2 サービスの起動・停止に関するイベント

 サービスもシステム管理者にとって重要な管理要素のひとつです。

 この「サービス」という用語はいろんな分野で様々な使われ方としていますので、Windowsのシステム構成要素である「サービス」の概念について、まずは説明したいと思います。

7.2.1 「サービス」について

 「サービス」を簡単に表現すると、「OSが起動して、ユーザーがログオンしなくてもバックグラウンドで動作し続けるプログラム」と説明できます。UNIX/Linuxでいう「デーモン」と似たような位置付けと言えます。通常のパソコンで使用するアプリケーションは、ユーザーが画面を見ながら操作したりすることができます。使う人の入力情報と画面などの出力情報とのやり取りによって、コンピュータを動かしているという実感が得られる状態です。それに対して、サービスはコンピュータを使っている(動かしている)という実感があるようなものではありません。

 イベントログとの関係を考える上で、ポイントとなる「サービス」の特徴を三つ挙げてみます。

■バックグラウンドで動作する
 ユーザーのログオンに関係なく、サービスを制御する仕組みに呼び出されて起動します。ユーザーインターフェイスが無く、画面に何も出てこないために起動したサービスは水面下で稼動しているような印象を与えます。サービスは、その役割を果たす時に結果を画面に表示するのではなく、一般的に他のプログラムからの要求に対して持っている機能を提供することになるため、仕組みを知らない限りそのコンピュータを使っているユーザーにとってサービスの存在を実感させることは極めて少ないです。

■バッチ処理などと違い、基本的に起動し続ける。
 バッチファイルとかスクリプトファイルと言われる一連の処理(命令)を綴ったプログラムファイルでは、実行されると書かれている処理を実行し、一連の処理が終わると終了します。しかし、サービスはこれとは異なり、基本的にバックグラウンドで起動し続け、他からの要求に反応できるようになっています。

■管理ツールによって設定可能
 稼働状況が目に見えて判断することが難しいプログラムな為、「今動いているのかどうか」、「動き続けているのを一旦停止したい」などの確認や操作をするには専門のツールを使います。この専門ツールがOSの「管理ツール」の中にある、「サービス」の管理ツールです。

注釈
くれぐれも、TCP/IPアプリケーション(SMTP,HTTP,etc)のサービスポートとして使用される「サービス」と間違えないでください。

7.2.2 管理ツールとサービスコントロールマネージャ

 「サービス」の管理ツールを見ると、特に何もしていなくても最初から複数のサービスが一覧表示されています。

 一覧表示されている各サービスを見てみると、「状態」が「開始」になっているものもあれば、何も書かれていないものもありますし、「スタートアップの種類」を見ると、「自動」「手動」「無効」などがあります。

 「サービス」管理ツールの中で一覧に出てくる個々のサービスは、「サービスコントロールマネージャ(Service Control Manager)」によって管理されています。

図7.9 [サービス]の管理ツール
 
図7.10 サービスの仕組み

 [サービス]の管理ツールで、[Spooler]サービスのプロパティ画面[全般]を開いたところ。

 ここで、サービスの情報を参照したり、スタートアップの種類を設定する。

図7.11 [サービス]のプロパティ

 [サービス]の管理ツールで、[Spooler]サービスのプロパティ画面[ログオン]を開いたところ。

 ここでは、サービスがどのアカウントでログオンするのかを設定する。

図7.12 [サービス]のプロパティ画面[ログオン]タブ

 [サービス]の管理ツールで、[Spooler]サービスのプロパティ画面[回復]を開いたところ。

 ここでは、サービスコントロールマネージャがその[サービス]が異常停止しているのを発見したときの動作を設定します。

図7.13 [サービス]のプロパティ画面[回復]タブ

7.2.3 サービスコントロールマネージャが記録するイベント

 まずは、サービスにはどんな状態があるのかを右図に示します。

 [停止]はサービスが停止している状態、[開始]はサービスが動作中の状態を示します。中には[一時停止]という状態をサポートしたサービスもあります。

 少しややこしいことに、右図の矢印で表した[開始中]、[停止中]、[一時停止中]、[再開中]も、サービスの状態を表すものとして扱われています。

 サービスコントロールマネーは、サービスを制御するときと、その後そのサービスがどういう状態になっているかをシステムイベントに記録します。

* Windows2000では、この機能はサポートされていません。
 
図7.14 [サービス]の状態と状態遷移
   
図7.15 サービスを制御した時に記録するイベント

■サービスを制御(起動、停止、一時停止)したときに記録されるシステムイベントの例(成功例)

ソース名 種類 分類 イベントID ユーザー名 コンピュータ名 説明
@ ServiceControl Manager 情報 なし 7035 SS01-
VMW2003STD\
Administrator
SS01-VMW2003STD Print Spooler サービスは、正常に開始コントロールを送信しました。
A ServiceControl Manager 情報 なし 7036 N/A SS01-VMW2003STD Print Spooler サービスは、実行中状態に入りました。
B ServiceControl Manager 情報 なし 7035 SS01-
VMW2003STD\
Administrator
SS01-VMW2003STD Print Spooler サービスは、正常に停止コントロールを送信しました。
C ServiceControl Manager 情報 なし 7036 N/A SS01-VMW2003STD Print Spooler サービスは、停止状態に入りました。
D ServiceControl Manager 情報 なし 7035 SS01-
VMW2003STD\
Administrator
SS01-VMW2003STD Windows Management Instrumentation サービスは、正常に一時停止コントロールを送信しました。
E ServiceControl Manager 情報 なし 7036 N/A SS01-VMW2003STD Windows Management Instrumentation サービスは、一時停止状態に入りました。
F ServiceControl Manager 情報 なし 7035 SS01-
VMW2003STD\
Administrator
SS01-VMW2003STD Windows Management Instrumentation サービスは、正常に続行コントロールを送信しました。
G ServiceControl Manager 情報 なし 7036 N/A SS01-VMW2003STD Windows Management Instrumentation サービスは、実行中状態に入りました。

■制御(起動、停止、一時停止)したときに記録されるシステムイベントの例(失敗例)

ソース名 種類 分類 イベントID ユーザー名 コンピュータ名 説明
@ ServiceControl Manager エラー なし 7000 N/A SS01-VMW2003STD Print Spooler サービスは次のエラーのため開始できませんでした:
指定されたファイルが見つかりません。
A ServiceControl Manager エラー なし 7001 N/A SS01-VMW2003STD Windows Image Acquisition (WIA) サービスが依存している Shell Hardware Detection サービスは次のエラーのため開始できませんでした:
指定されたサービスは無効であるか、または有効なデバイスが関連付けられていないため、開始できません。

■サービスが異常停止したときに記録されるシステムイベントの例

ソース名 種類 分類 イベントID ユーザー名 コンピュータ名 説明
@ ServiceControl Manager エラー なし 7031 N/A SS01-VMW2003STD Print Spooler サービスは予期せず終了しました。これは 1 回発生しています。次の修正動作が 60000 ミリ秒以内に行われます: サービスの再開
A ServiceControl Manager 情報 なし 7036 N/A SS01-VMW2003STD Print Spooler サービスは、実行中 状態に入りました。
B ServiceControl Manager エラー なし 7031 N/A SS01-VMW2003STD Print Spooler サービスは予期せず終了しました。これは2回発生しています。次の修正動作が 60000ミリ秒以内に行われます: サービスの再開
C ServiceControl Manager 情報 なし 7036 N/A SS01-VMW2003STD Print Spooler サービスは、実行中状態に入りました。
D ServiceControl Manager エラー なし 7031 N/A SS01-VMW2003STD Print Spooler サービスは予期せず終了しました。これは 3 回発生しています。
 
コラム
Windows2000ではどうしたらいいの?

 サービスコントロールマネジャーがサービスへの制御とその結果のイベントを記録しないWindows 2000でも、そのサービス自身が起動や停止のイベントの記録をサポートしている場合には対処できます(8章のアプリケーションの関連イベントでも触れています)。

 もうひとつの方法は、セキュリティの監査を使って[サービスオブジェクト]の監査を仕掛ける方法です(9章のセキュリティの監査ログで少し触れています)。

 

 INDEX
  サーバー管理者のためのイベントログ運用の基本
  第7章 OS関連のイベント
    7.1 システムの停止、起動に関するイベント
  7.2 サービスの起動・停止に関するイベント
    7.3 その他のシステムログに記録されるイベント
 
インデックス・ページヘ  「BOOK Preview」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間