0

Nagios を使用して、Windows マシンが「再起動モード」にあるかどうかを確認しています。つまり、パッチがインストールされており、サーバーを再起動する必要があります。スターター スクリプトと処理スクリプトの 2 つの PowerShell スクリプトがあります。

スターター スクリプトは、サーバーが再起動モードかどうかを確認します。そうであれば、次のコマンドを実行し、処理スクリプトを開始します。

Write-Host "Reboot Required"
start-process powershell ".\sched_downtime.ps1 --reboot"
exit 1

再起動モードでない場合は、次のことが開始されます。

write-host "Patches Pending Installation"
start-process powershell ".\sched_downtime.ps1 --update"
exit 1

これを Windows サーバーから手動で実行すると、すべて正常に動作します。次のコマンドを使用して、Nagios サーバーからこれを実行しようとすると:

check_nrpe -H patching-test -p 5666 -c check_wu_update_status -t 120

最初のスクリプトのみが実行されます。スクリプト 2 に何を入れても、nrpe を使用してスクリプト 1 でスクリプト 2 を開始するようには見えません。空のテキスト ファイルを作成するなど、非常に単純なものである可能性があります。Windows Server 2008、R2 で PowerShell 3 を実行しています。

4

1 に答える 1

0

問題が解決しました。次を追加して、作業ディレクトリを指定する必要がありました。

-workingdirectory "c:\path\to\scripts"

Windowsボックスから手動で実行した場合と同様に、相対パスは機能しないようです。

于 2013-09-25T22:46:58.600 に答える