- PR -

shutdownコマンドをatコマンドで実行するには?

1
投稿者投稿内容
hide.skh
会議室デビュー日: 2003/03/01
投稿数: 6
お住まい・勤務地: 埼玉
投稿日時: 2004-02-05 18:02
非常に初歩的ですみません。

質問内容
サーバ:Windows Server 2003 Standard
クライアント:WindowsXP Pro という環境で、
定時にクライアントを一斉シャットダウンを行ないたい。
(atコマンド&shutdownコマンド)

現状:
サーバ上のatコマンドを使い、
シャットダウンコマンド(shutdown /s /m 円MachineName)を
実行しようと思っていたのですが、なぜかうまく動作しません。

シャットダウンコマンド単体、
及び、
シャットダウンコマンドを束ねたバッチファイル
をDOSプロンプトから直接実行する分には正常に動作しています。

at 時刻 shutdown /s /m 円MachineName
at 時刻 cmd /c shutdown /s /m 円MachineName
at 時刻 cmd /c "shutdown /s /m 円MachineName"
at 時刻 バッチファイル
いずれも全滅・・・(>_<)

※文中の「円」は”円マーク2個”を意味しています。


どなたかご教授下さい。
taro
ぬし
会議室デビュー日: 2003/10/20
投稿数: 316
投稿日時: 2004-02-05 18:32
こんにちは。
環境がないので確認できませんが、これが関係ありそうではないですか?

Shutdown.exe コマンドを起動してもコンピュータが自動的にシャットダウンしない
http://support.microsoft.com/default.aspx?scid=kb;ja;821287
Cluster
ぬし
会議室デビュー日: 2003/03/06
投稿数: 289
お住まい・勤務地: 大阪
投稿日時: 2004-02-05 19:20
#あまり詳しくないのでカンですが(^^;

コマンドプロンプトで上手く動いて、ATコマンドで上手く動かないのなら、
権限の問題じゃないでしょうか?
コマンドプロンプトで動かすときはそのときのログインユーザの権限で動きますが、
ATコマンドで動かすときは、Task Schedulerサービスのログオンアカウントで
実行されるはずです。(デフォルトではシステムアカウント)

外してたらごめんなさい(^^;
hide.skh
会議室デビュー日: 2003/03/01
投稿数: 6
お住まい・勤務地: 埼玉
投稿日時: 2004-02-06 15:55
taroさん、Clusterさん返信ありがとうございます。
無事解決しました。

<途中の状況>
まず、KB821287の修正モジュールを入手してみましたが、改善しませんでした。

そこで、Task Schedulerサービスの実行アカウントの件を調べてみたところ、
その通りでした。
ところが「サービス」画面から実行アカウントの変更を試みたら、
他のプロセスと関連があるらしく変更が許可されませんでした。

仕方ないのでWindowsのヘルプを調べたところ、
「タスク」画面(GUI)から変更できることを発見!

という訳で解決策は


<解決策>−−−−−−−−−−−−−−−−−−−
1:タスク画面を開く
2:詳細設定 → ATサービスのアカウント
3:ローカルシステムアカウント以外の任意指定を行なう(admin等)
−−−−−−−−−−−−−−−−−−−−−−−−
でOKでした。


<補足>
この状態はTask Schedulerサービスはローカルシステムアカウントで実行され、
ATコマンドのジョブ(?)のみ、上記権限を与えたアカウントで実行されるようになっているようです。

不思議なのは、
ATコマンド(CUI)なのに、
「タスク」画面(GUI)からでないとATコマンドの権限を変更できないという部分です。
僕の調べ方が悪いのでしょうけれども…。
1

スキルアップ/キャリアアップ(JOB@IT)