web-dev-qa-db-ja.com

タスクスケジューラからServer 2012 R2 Run Programがプログラムを実行していない

プログラム(DBバックアッププログラム)を実行しようとしているスケジュールされたタスクがあります。不明な理由により、タスクログにすべてがスケジュールどおりに実行されたと記載されていても、実際にプログラムを実行できません。

何が悪いのですか?設定を変更し、プログラムへのUNCパスを使用し、別の管理者アカウントを試し、NETWORK SERVICEアカウントを使用しました。失敗。プログラムを実行するためのセキュリティ権限に関係しているようですが、解決できません。

誰かがこのプログラムをタスクスケジューラから実行する方法を理解するのを手伝ってくれる?ありがとうございました!

-OS:サーバー2012 R2
-ログイン中にタスクを実行すると(手動またはログイン中にスケジュールどおり)、すべて正常に実行されます。
-DBバックアッププログラムにはログがありますが、ログに何も記録されておらず、タスクが実行されたときにログアウトされています。
-DBバックアッププログラムにはUIがありません。
-DBバックプログラムは、タスクスケジューラによって実行されることを目的としており、全国の他のユーザーによって正常に実行されます。
-タスクを実行するように設定されたユーザーは、完全な管理者資格情報を持つ管理者です。タスクはローカルのビルトイン管理者によっても実行されましたが、結果はありませんでした。
-プログラム、フォルダー、および親フォルダーはすべて、adminグループへのアクセスを許可します。

一般:
ユーザー:管理者アカウント
ユーザーがログオンしているかどうかにかかわらず実行します
最高の特権で実行
構成:Vista、Server 2008
トリガー:
毎日、午前3時、有効
アクション:
プログラムを開始します: "C:\ Program Files(x86)\ Rock Gym Pro\Backup.exe"
条件:
コンピューターがAC電源で動作している場合のみタスクを開始します
コンピューターがバッテリー電源に切り替わったら停止します
設定:
タスクをオンデマンドで実行できるようにします
タスクが3日より長く実行される場合は停止します
要求されたときに実行中のタスクが終了しない場合は、強制的に停止します
履歴:
3:00 AM-タスクスケジューラ起動タスク "\ RGP Backup"、インスタンス "C:\ Program Files(x86)\ Rock Gym Pro\Backup.exe"、プロセスID 3496。
3:00 AM-タスクスケジューラは、ユーザー「DOMAIN\Admin」の「\ RGP Backup」タスクの「{206e1cd6-db27-49f7-b143-ca1228f59c74}」インスタンスを開始しました。
3:00 AM-タスクスケジューラは、タスク "\のインスタンス" {206e1cd6-db27-49f7-b143-ca1228f59c74} "でアクション" C:\ Program Files(x86)\ Rock Gym Pro\Backup.exe "を起動しましたRGPバックアップ」。
3:00 AM-タスクスケジューラはタスク "\ RGP Backup"、インスタンス "{206e1cd6-db27-49f7-b143-ca1228f59c74}"、アクション "C:\ Program Files(x86)\ Rock Gym Pro\Backup.exe」と戻りコード0。
3:00 AM-タスクスケジューラは、ユーザー「DOMAIN\Admin」の「\ RGP Backup」タスクの「{206e1cd6-db27-49f7-b143-ca1228f59c74}」インスタンスを正常に終了しました。

6
Edgeworks

直接的な解決策ではありませんが、回避策で解決することになりました。

プログラムC:\ Program Files(x86)\ Rock Gym Pro\Backup.exeは実際にプログラムを起動するプログラムですC:\ Program Files(x86)\ Rock Gym Pro\RockGymPro.exe引数付き/ backup

したがって、機能しなかったアクションを開始する代わりに:
プログラムを開始します: "C:\ Program Files(x86)\ Rock Gym Pro\Backup.exe"

私の新しい行動は:
プログラムを開始します: "C:\ Program Files(x86)\ Rock Gym Pro\RockGymPro.exe/backup"

今はすべてうまくいきます。他の設定やユーザーアカウント/パスワードに変更はありません。

0
Edgeworks

私はあなたが選択したときに同様のソフトウェアがうまく動くように懸命に努力しています:

ユーザーがログオンしているかどうかにかかわらず実行

2つの異なるソフトウェア(SyncBackとsynctoy)を使用した結果、どちらの場合もサードパーティのソフト関連の問題でした(ソフトの問題ではなく、考慮すべき事項)。

例として、実行するタスクを作成した場合:

"C:\ Program Files(x86)\ Rock Gym Pro\Backup.exe"

domain\user1として、いくつかのパラメータlik -R "MyBackup"を使用しますが、domain\administratorなどの別のユーザーからタスクを構成しました。

また、「-R "MyBackup"のようなパラメーターを管理者として設定しますソフトウェアは、管理者フォルダー(usr/administrator/appdata/roaming/...)の下に「MyBackup」設定ファイルを作成します。 doman\user1として実行されます。プログラムは、user1フォルダーで「Mybackup」設定ファイルを検索します。

その結果、user1からソフトウェアを構成したことがないため、user1 appdataまたはその他のフォルダーにファイルは存在しないため、何も起こりません。

これを解決するには、フォルダーに作成するために、サーバーにそのユーザーとしてログオンする必要があります、そのユーザーからスクリプトをテストします(スケジュールされたタスクで必要な場合は、「ユーザーがログオンしているかどうか」オプションがアクティブになっている場合)、管理者ユーザーからタスクを設定し、user1として実行するように設定します。そうすれば、タスク実行時にソフトウェアが「MyBackup」ファイルを見つけて問題なく実行されます。

これは私の問題でした。これのログがどこにもない(またはそれらを見つけることができなかった)ために見つけるのは困難でした。タスクを実行しても何も起こらず、最終的に「Task Executed Successfuly」と表示されました。

私が助けたかどうか私に知らせてください...アルゼンチンから申し訳ありません私の英語のイム。

1
Matias

スクリプトを実行しているサーバーで、ローカルセキュリティを無効にしますポリシー-> セキュリティオプション-> ネットワークアクセス:のパスワードと資格情報の保存を許可しないネットワーク認証

これにより、スケジュールされたタスクが環境内のリモートサーバー上のサービスを制御できるようになりました。

0
MikeT

ユーザーがログインしている場合にタスクが実行されていると思います。タスクオプションを「ログオンしているユーザーが存在するかどうかにかかわらず実行する」に変更しても、実行されません。

履歴ログは、タスクisが実行中であることを示していますが、ログインしているユーザーがいない場合でも実行するように設定されているため、タスクの実行を確認したり、タスクのユーザーインターフェイスを操作したりすることはできません。

ユーザーインターフェイスを持つタスクは、ユーザーがログオンしている場合にのみ実行されるように設定する必要があります。 (ログインしているユーザーがいない場合、誰がユーザーインターフェイスを操作しますか?)

おそらく、これはあなたが受け取ることを期待する答えではありません:-(しかし、私はそれが問題を明確にすることを望みます。

0
user3165438