ですから、私はスクリプト作成には役に立たないということから始めましょう。ご容赦ください。
企業全体で Symantec Endpoint Protection (SEP) を使用していますが、Citrix XenServer 5.5 と SEP 11 に問題があり、警告なしに SEP が VM へのほとんどすべてのアクセスを停止するようです。通常、ファイルと印刷またはプリント サーバー VM があるため、サイトでのすべての印刷が停止するか、すべてのファイル アクセスが停止します。
それが発生した場合、VM に ping を実行でき (Nagios は問題ないと判断します)、SNMP ポーリングなどの他の多くのチェックは引き続き機能します (HP SIM は問題ないと判断します) が、ドメイン ユーザーによる RDP アクセスとログインは拒否されるため、使用する必要があります。 XenCenter にアクセスし、ローカル アカウントでログインします。ログオンしたら、「SMC -stop」を実行してから「SMC -start」を実行して、関連するすべての SEP サービスを停止および開始するだけです。
現在、24 時間年中無休のサービス デスクがありますが、XenCenter へのアクセスは許可されていないため、電話は直接第 3 レベルのサポートに渡され、午前 2 時にこのような単純なことで起こされたくありません。
リモートでコマンドを実行できるため、コンピューター名の入力を求めるだけのスクリプト (任意の言語) の形式を考えます。入力すると、' SMC -Stop 'が実行され、15 秒間一時停止し、' SMC -start ' と Echo の " Symantec Endpoint Protection Services Restarted」は完璧であり、私とチーム メイトは時々完全な夜の睡眠を取ることができます.
これまでのところ、他のスクリプトを解体することはできませんが、以下を思いつきましたが、まだテストする機会がなかったので、正しく動作するかどうかさえわかりません (私はスクリプトが苦手だと言いました)
strComputer = InputBox("Name of computer to stop SEP Services on:", "Run SMC -stop")
If strComputer = "" Then
Wscript.Quit
End If
Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.run "cmd.exe /c SMC -Stop"
MsgBox "Waiting 15 Seconds before restarting SEP Services"
WScript.Sleep 15000
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.run "cmd.exe /c SMC -Start"
Set oShell = Nothing
MsgBox "Symantec Endpoint Protection Services Restarted"*
与えられた助けを優先してください。