Systemwalker Centric Manager 使用手引書 監視機能編 - UNIX共通 - - Microsoft(R) Windows NT(R)/ Microsoft(R) Windows(R) 2000/ Microsoft(R) Windows Server(TM) 2003 -
目次 索引 前ページ次ページ

第5章 障害を復旧する> 5.2 リモートからコマンドを発行する

5.2.2 リモートコマンドを実行する

Systemwalker Centric Managerのシステム監視エージェントがインストールされているノードに対して、リモートコマンドを実行することができます。

リモートコマンドを発行できるノー

リモートコマンドを発行できるノードは、以下の操作で確認できます。Systemwalkerコンソールから、ノードプロパティダイアログボックスの[Systemwalker Centric Manager]タブを表示します。“Systemwalker Centric Managerがインストールされている”チェックボックスがチェックされていることを確認します。または、Systemwalkerコンソールをリスト表示して、“詳細”カラムに“S”という文字列が表示されていることを確認します。


リモートコマンドの応答がエラーになるような場合は、以下のことを確認してください。

リモートコマンドを発行する前に確認メッセージを表示する

  1. Systemwalkerコンソール[監視]で、ノードを右クリックし、ポップアップメニューの[操作]-[指定オブジェクト]-[リモートコマンド]を選択します。

    →[リモートコマンド]ウィンドウが表示されます。

  2. [オプション]メニューの[確認ダイアログを表示する]を選択し、ONにします。

    →リモートコマンドを発行する前に以下のメッセージボックスが表示されます。

■リモートコマンドを発行する

単一ノードに対してリモートコマンドを発行す

  1. Systemwalkerコンソール[監視]で、ノードを右クリックし、ポップアップメニューの[操作]-[指定オブジェクト]-[リモートコマンド]を選択します。

    →[リモートコマンド]ウィンドウが表示されます。

  2. [実行コマンド]を入力するか、[コマンド一覧]からコマンドを選択します。
  3. [実行]ボタンをクリックします。

    →選択しているノード上でコマンドが実行されます。

    →コマンドの実行結果(標準出力)は[コマンド結果]フィールドに出力されます。

リモートコマンドを発行するときのカレントディレクトリは、以下のとおりです。

環境変数は、一括起動でシステム監視エージェントが起動されたときの環境です。

リモートコマンドグループに定義したコマンドを発行す

  1. 監視マップに表示されているノードを右クリックし、ポップアップメニューの[操作]-[指定オブジェクト]-[リモートコマンド]を実行します。

    →[リモートコマンド]ウィンドウが表示されます。

  2. 対象ノードにリモートコマンドグループを定義していると、リモートコマンドグループに対して設定したコマンドボタンを選択できます。
  3. コマンドボタンを選択します。

    →リモートコマンドグループに定義されたコマンド名、コマンドラインがコマンド一覧、実行コマンド欄に自動的に入力され、選択しているノード上でコマンドが実行されます。

    →コマンドの実行結果(標準出力)は、[コマンド結果]フィールドに出力されます。

複数のノードに対してリモートコマンドを発行す

  1. 監視マップに表示されているノードを、複数選択します。以下のどちらかの方法で、ノードを選択します。
  2. 右クリックメニューの[操作]-[指定オブジェクト]-[リモートコマンド]を実行します。

    →[リモートコマンド]ウィンドウが表示されます。

  3. 実行コマンドを入力し、[実行]ボタンをクリックします。

    →選択した複数のノード上でコマンドが実行されます。

    →コマンドの実行結果(標準出力)はコマンド結果フィールドに出力されます。

■リモートコマンド結果を確認する

リモートコマンドの実行結果を検索す

Systemwalker Centric Managerのシステム監視をインストールしているノードに対して、リモートコマンド検索を実行することができます。

  1. [操作]メニューから[リモートコマンドの検索]を選択します。

    →[リモートコマンド検]ウィンドウが表示されます。
    [リモートコマンド検索]ウィンドウには、最大1000行のコマンドおよびコマンド応答を表示することができます。1000行を超える場合には、メッセージが表示され、検索開始日時から1000行分のコマンド応答が表示されます。コマンド応答がない場合には、その旨、メッセージが表示されます。

    [リモートコマンド検索]ウィンドウでは、次のように表示されます。

    No:
    リモートコマンドを発行したときに付加される識別子が表示されます。
    日時:
    メッセージが発生した日時が表示されます。
    フォルダ:
    コマンド発行先ノードが所属するフォルダの表示名が表示されます。
    表示名:
    コマンド発行先ノードの表示名が表示されます。
    結果:
    発行コマンドおよび発行コマンドに対する応答が表示されます。
  2. [リモートコマンド検索]ウィンドウで[操作]メニューから[条件指定]を選択します。

    →[条件指定(リモートコマンド検索)]ダイアログボックスが表示されます。

  3. [検索開始日時]および[検索終了日時]を入力し、[実行]ボタンをクリックします。

    →選択しているノードで過去に実行されたリモートコマンドの実行結果ログの中から、検索条件に当てはまるログが、[リモートコマンド検索]ウィンドウに表示されます。

    →[リモートコマンド]ウィンドウおよび[リモートコマンド検索]ウィンドウで得られた実行結果は、CSV形式で保存することができます。リモートコマンド表示結果CSV保存ファイルの形式については、“Systemwalker Centric Manager リファレンスマニュアル”を参照してください。

リモートコマンドを実行すると、コマンドの実行結果が一時的に多量に発生することがあるため、業務やネットワークに悪影響を及ぼさないように十分な注意が必要です。INS回線などの契約回線を利用し監視する場合には、契約回線以上のノード数にリモートコマンドを発行すると、リモートコマンドの投入に失敗します。

リモートコマンドの実行結果をクリップボードへコピーする

リモートコマンドの実行結果をテキストエディタ等へ貼り付ける場合に、クリップボードへコピーします。

  1. [操作]メニューから[クリップボードへコピ]を選択します。

    クリップボードに貼り付ける形式は以下のとおり。

    1行目:“No.”、“フォルダ”、“表示名”の間をタブ(\t)区切りで表示

    2行目以降:“結果”を一覧の上から順に表示

    以後、実行コマンド毎に繰り返す

    [コピー例]

    1\tBCMTEST3\自部門\10.90.151.0\t運用管理サーバ\n
    ls\n
    devices\n
    doe\n
    etc\n
    export\n
    floppy\n
    home\n
    コマンドが終了しました 終了コード= 0\n
    2\tBCMTEST3\自部門\10.90.151.0\t運用管理サーバ\n

リモートコマンドの実行結果を整列する

リモートコマンドの実行結果を[No.]で整列(昇順)して表示します。

  1. [オプション]メニューから[コマンド結果を[No.]で整]を選択します。

    →コマンド結果一覧が[No.]で整列して表示されます。

メニューの選択状態は、Systemwalkerコンソール終了時に「終了時の状態保存」がONの場合は、保存します。

■リモートコマンドフィルタ機能について

監視システムから発行されたコマンドを実行するかどうかを判定するスクリプトを、コマンドフィルタとして登録することができます。必要に応じてスクリプトを作成し登録してください。

登録は[Systemwalker Centric Manager]-[環境設定]-[システム監視設定]から、[通信環境定義]を起動し[動作設定]の詳細にあるコマンドシェルで行います。なお、Windows(R)でバッチを登録する場合、バッチファイルを実行するためにファイルの前に"cmd"コマンドを指定する必要があります。

UNIXで使用するシェルスクリプトの例

以下のシェルスクリプトは"reboot","shutdown"の文字列を含むコマンドの実行が拒否されます。

#! /usr/bin/sh

if [ "${1}" = "-c" ]
then
shift 1
else
exit 1
fi

CMD=`echo ${1}`
#Please edit under this line #
CMD=`echo ${CMD} | grep -v "reboot"`
CMD=`echo ${CMD} | grep -v "shutdown"`
#Please edit upper this line #

if [ "${CMD}" = "" ]
then
echo "command(${1}) canceled !"
exit 1
fi

/usr/bin/sh -c "${1}"

Windows(R)で使用するバッチファイルの例

以下のバッチファイルは"del"、"erase"コマンドの実行が拒否されます。

@echo off
if "%1" == "del" goto ERR
if "%1" == "erase" goto ERR
goto CMD

:ERR
echo command(%*) canceled !
exit 1

:CMD
cmd /c %*

発行するリモートコマンドについての注

発行するコマンドについては、以下のことに注意してください。

10個以上のノードにリモートコマンドを発行する場

10個以上のノードを選択してリモートコマンドを発行した場合には、多数の実行結果が混在して、コマンドの応答結果が参照しにくくなります。また、一時的に実行結果が多発して、ネットワークの負荷が高くなるおそれがあります。このため、コマンドの実行結果は表示されず、コマンドの復帰コードだけが表示されます。

リモートコマンドの復帰コー

リモートコマンドで実行するコマンドの復帰コードは、0〜255で表現されます。0〜255以外のコードの場合、下1バイトコードが表示されます。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 1995-2005