• ベストアンサー
  • すぐに回答を!

ネットワークドライブを見るバッチをタスクで実行不可

「ネットワークドライブ経由で他サーバ(仮にサーバB)のファイルを削除する」バッチを作成しました。 このバッチをサーバAへ置き、手動で実行すると上手く動くのですが、 タスクスケジューラに設定して実行すると失敗してしまいます。 確認用に下記ロジックを試してみると、  dir "Z:\files" (Zがネットワークドライブ) 手動ではファイル一覧が表示され、タスクからだと何も表示されず終わります。 サーバAへはAdministratorでログインしており、タスクを実行するアカウントも Administratorを使用し、もちろんAdministrators権限も持っています。 実行環境はwindows server 2003 です。(サーバAB両方共) 一つ気になる点としては、サーバAへはリモートデスクトップでログインしています。 このあたりの複合的な要素で権限が変わっているのかもしれませんが確認方法が判らず 困っております。 タスクからでも同様に動かせる方法や、バッチ上から実行中アカウントを知る方法など ご存知の方がいらっしゃいましたらご回答をお願い致します。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数11580
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.2

手動では動くけどタスクスケジューラでは動かないという場合は、作業ディレクトリを指定してないという場合が多いようですが、指定していますか。 「タスクスケジューラ バッチファイル」で検索するといろいろなケースが見つかります。 下記など参考になるかと思います。 http://tobysoft.net/wiki/index.php?Windows%2FVista%2F%A5%BF%A5%B9%A5%AF%A5%B9%A5%B1%A5%B8%A5%E5%A1%BC%A5%E9%A1%BC%A4%C7%A5%D0%A5%C3%A5%C1%A5%D5%A5%A1%A5%A4%A5%EB%A4%F2%BC%C2%B9%D4%A4%B9%A4%EB%CA%FD%CB%A1 http://mroom.cool.ne.jp/nikki/archives/000059.html http://webcache.googleusercontent.com/search?q=cache:6Ryof9huGB8J:blogs.wankuma.com/rapt/archive/2010/04/22/188276.aspx+%E3%82%BF%E3%82%B9%E3%82%AF%E3%82%B9%E3%82%B1%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%A9+%E3%83%90%E3%83%83%E3%83%81%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB&cd=3&hl=ja&ct=clnk&gl=jp&source=www.google.co.jp

共感・感謝の気持ちを伝えよう!

質問者からのお礼

分かりづらい質問で申し訳ないです。 改めて要点を整理させて頂きます。 ・手動ではバッチは正常に実行される。 ・タスクで実行すると、バッチ自体は実行されるがエラーとなってしまう。 ・エラーとなる箇所はネットワークドライブにアクセスしてファイルを削除するという処理 ・ネットワークドライブにアクセスするだけのバッチ(dir "Z:\files"のみ書いたバッチ)  で動作を確認したらタスク実行の場合何も表示されず終了してしまう。 以上となります。説明下手で申し訳ないですが分かりづらい点がありましたら 再度ご指摘願います。

関連するQ&A

  • Windows Server 2008からのタスクでうまくバッチがうま

    Windows Server 2008からのタスクでうまくバッチがうまく動作しない。 こんにちは。 Windows Server 2008からのタスクでうまくバッチがうまく動作しなくて困っております。 状況としましては: ・AサーバとBサーバがある。 ・Bサーバには特定のファイルがおいてあるCフォルダが存在。 ・AサーバからAdministrator権限でCフォルダまでネットワークドライブを作成。 ・AサーバのタスクスケジューラでCフォルダのファイルを取得しに行く  バッチファイルを作成(xcopyです) ところが、バッチを手動起動した際にはうまく動作するのですが、 タスクから起動するとCフォルダが見えないのかうまく動作しません。 ちなみにバッチは起動します。 なにかご意見があれば教えて頂ければ大変助かります。

  • 2008Serverでタスクが実行されない

    ファイルをコピーするバッチをタスクスケジューラにて日次実行しているのですが、 時としてタスクが実行されていないことがあります。 該当タスクが実行されていないときは、「履歴」タブにログの情報はありません。 また、イベントビューアーにも関連すると思われるログはありませんでした。 手動で実行した場合、問題なくタスクを実行できます。 タスク実行時はAdministratorでログインしてロックをかけている状態です。 サーバはWindows Server2008 Standardです。 原因や対処法などご存知の方がいらっしゃいましたら、 ご教授の程、よろしくお願い致します。

  • タスクが実行されない原因で考えられるのは?

    XPでタスクスケジューラーを使って、ごく簡単なbat file を一日一回実行させようとしています。 bat file の内容は特定のフォルダのファイルを削除するだけのものですが、タスクスケジューラー上から手動でタスクを実行したり、見ている前では時間指定をも動作するのに、肝心の早朝での実行を後で確認すると動作していないのです。ログを確認しても特にエラーは確認できず、次回実施時間のみが更新されています。実施ユーザーを変更したり、admin にしたりを試しましたが結果は同じでした。同時にスタートアップから起動しているバックアップソフトは動作しているので、アカウントのログインログアウトも関係ないのかなと思っています。何か原因と思われるような事柄、あるいは確認すべき点ありましたらアドバイスお願いします。

その他の回答 (1)

  • 回答No.1

まず基本的なこと。 ネットワークドライブって、誰に対してのドライブ? 基本的にユーザー情報なので、システムとしてはマウントしていないんだけど? しかも、ネットワークドライブていっているけど、どうやってまうんとしているんだろう? タスクにnet useで作成して、それで、切断してみればわかるでしょう。 それに、ちゃんとログに失敗のヒントでていますよ。ログをまずみましょう。もし出ていないのなら、出るように設定してからためしましょう。 >リモートデスクトップでログインしています さらに関係がわからない。どこかどう関係してるか書いていない。そのリモートディスクトップ上から実行??? ちゃんと説明しようね。。。。。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

>ネットワークドライブって、誰に対してのドライブ? 1行目の通り、他サーバ(仮にサーバB)です。サーバBのあるフォルダにZドライブを 割り付け、その直下のfilesフォルダにアクセス、という形です。 >しかも、ネットワークドライブていっているけど、どうやってまうんとしているんだろう? windows server 2003ですので、普通にサーバB上でネットワークドライブを作成しているの ですが、マウント手順によって何か気になる点が出てきますでしょうか? >タスクにnet useで作成して、それで、切断してみればわかるでしょう。 すいません、何が判るのでしょうか。 >それに、ちゃんとログに失敗のヒントでていますよ。ログをまずみましょう。もし出ていないのなら、出るように設定してからためしましょう。 ご指摘のログとは何のログを指していますでしょうか。例として挙げたdirコマンドに ついてでしたら、一切ログは出ておりません。 >>リモートデスクトップでログインしています >さらに関係がわからない。どこかどう関係してるか書いていない。そのリモートディスク>トップ上から実行??? 「サーバAへはリモートデスクトップでログイン」と書いている通りです。 サーバAでの作業は全てリモートデスクトップを通して行っている、というだけなのですが、 リモートデスクトップを経由する事で、何かしらの制限(リモート作業に対する セキュリティの為、自動的に一部権限に制限が掛かる等)があったりするかも、 という一案を述べてあるに過ぎません。 以上、その他不明点などありましたらご指摘ください。

関連するQ&A

  • バッチをタスクで実行

    お世話になります。 現在、XP端末にてバッチをタスクスケジューラにて実行してます。 3分間隔で実行しておりますが、タスクにバッチファイルを直接指定するとプロンプト画面が表示されてしまうため、バッチファイルのショートカットを作成し、タスクにはそのショートカットを指定しております。 で、今回Win7端末に当該タスクを移行するのですが、XP端末よりバッチファイル及びショートカットをコピー致しました。タスクスケジューラに登録しようとしましたが、XPと何か違います。。 XPだと『実行するファイル名』の箇所にショートカットを指定することができますが、Win7だとショートカットを指定しても、バッチファイルのパスに変わってしまいます。 例えば、c:\test.batへのショートカット.lnk を選択しても、c:\test.bat に変わります。 よって、タスクが実行されるとプロンプト画面が表示されることになります。 なお、手動でパス(c:\test.batへのショートカット.lnk)を入力し、タスクを実行すると実行結果が『指定されたファイルが見つかりません』とエラーになってしまいます。 パスを:\test.batへのショートカット としても同エラーになります。 どのようにすれば、タスクにショートカットを指定できるのでしょうか。 ご教授の程、宜しくお願い致します。

  • スケジュールしたタスクが、ログオフ時に実行されないのはなぜ?

    1台のPCを家族で使用しています。 Windows XPを使っているのですが、時間がきたら自動実行できる「タスク」の機能を使うため、ユーザアカウントを作って家族に割り当てています。 私のアカウントには Administrator権限を与えておいてスケジュールを予約し、タスクが正常に動作することは確認しています。 ところが、家族が自分のアカウントでログインしてPCを使いそのあとログアウトしたときに、スケジュールさせたタスクが実行されていないことに気づきました。 タスクマネージャのログでエラーは出ていません。(というかその時間になにも記録されていません)ですが、タスクで作成されるはずのファイルがどこにもありません。 タスクは私のアカウントとパスワードがセットしてあり、私の名前でログインしなおしたり、起動時のまま(誰もログインしない状態のまま)にしておけばタスクは正常に動くようです。 これは仕様でしょうか?不具合でしょうか? タスクを使うにはユーザアカウントを作ってパスワードを作成しておかなければならないのに、ログオンしたままにしておかなければならないのはとても不自然に思えるのですが。 使っているのは Windows XP SP1です。

  • タスクの実行について

    いつもお世話になっております。 Windows2000Serverでタスクを実行させたいのですが実行されません。 [環境] ・Windows2000ServerはWindows NTドメインに参加しています。メンバ サーバです。 ・実行しようとしているタスクはサーバを再起動させるタスク。 ・毎週月曜日朝6時にタスクを実行させる設定になっていますが、  朝6時に実行されたとタスクには残りますが、実際は再起動されてい ません。状態もエラーは出ていません。(実行できていない場合は開 始できませんでした等出力されるはず) ・UPSに接続されていますが、UPSの機能を使い再起動できないため  このタスクを組んでいます。UPSで再起動の設定は解除済み。 ・タスク実行時のユーザ名はドメイン\administrator パスワードはドメインadminのパスワードを入力。 ・手動でタスクを実行すると正常に実行されます。 [タスクの詳細] ・reboot.batを実行させる設定。 バッチの記述[cscript c:\backupbat\restart.vbs /S サーバ名 /R] ・restart.vbs はマイクロソフトよりダウンロードしたもの。 これは何が原因でしょうか? restart.vbs もバッチの記述通りbackupbatフォルダにあります。 宜しくお願いします。

  • SQLServerのジョブからバッチをキックすると、「ホストファイルが開けません」と出る

    今日は三件目で恐縮です。 テスト環境では、正常に行えましたが、本番環境に移行すると・・・ SQLServerのジョブからバッチをキックすると、 「ホストファイルが開けません」とエラーが出るんですが、どうしたらよいのか判りません・・・どのたかご教授願います。 ●先ほどの質問 本題ですが、SQLのジョブでDBサーバから他サーバーのバッチを呼んでますが、共有ファイルを参照できなくて困ってます。共有ファイルはadmini権限です。 何方かお助け下さい。 環境は、 DBサーバー:[WIN2KSEVER(admini権限/パスワード共通)] [SQLserver2000(ローカルインストール、混合モード、ドメイン構成なし) 他サーバー:[WIN2KSERVER(admini権限/パスワード共通)] ●先ほどのお答え(takekanさんありがとうございました。) DBサーバーにインストールしたSQLServer2000のサービスアカウントが 「ローカルアカウント」という前提で話をすすめます。 以下の手順で確認をしてみてください。 1.DBサーバーにAdministratorでログインして、共有ファイルの中身を見れるか?  →パスワードを要求されるようであれば、Administratorのパスワードをそろえてください。そうすればパスワードを要求されることはないと思います。 2.DBサーバーにAdministratorでログインして、SQLServerのジョブで実行しているコマンドを、コマンドプロンプトから実行して、実行できるか?  →実行できなければ、手順1を再度確認 3.ジョブを実行して実行できるか? これで解消できるか確信は持てませんがご参考まで。 以上ですが宜しくお願いします。

  • タスクがSYSTEMアカウントで実行されません。

    タスクがSYSTEMアカウントで実行されません。 タスクスケジュールでバッチファイルを実行しているのですが、 タスクの実行アカウントをAdministratorにすると問題ないのですが、 SYSTEMアカウントにすると実行されません。 正確には、バッチファイルの中で、 ローカルのファイルをLAN上のファイルサーバにコピーすることができません。 Administratorアカウントでは問題ありません。 また、バッチファイルの中のコピー以外については、 SYSTEMアカウントでも実行されています。 何が原因かわかりますでしょうか。 よろしくお願いします。

  • タスク実行

    教えてください。 現在、WindowsServer2003である特定のサービスが実行されたのが確認された場合、タスクから特定タスクを実行する仕組みを作りたいと考えています。 具体的には、「タスクA」をタスクスケジューラにて定期実行し、サービスに「A.exe」というサービスが確認できた際、タスクに登録してある「タスクB」を実行したいです。 この「タスクA」にて実行させるスクリプトの中身を教えていただけないでしょうか。 個別のコマンドとして「タスクB」の実行は「schtasks /Run /tn "タスクB"」で起動出来ると思います。 サービス:「A.exe」の起動確認と「A.exe」の起動が確認できた後の処理方法がわかりません。 お分かりになるかたがいらっしゃいましたらお手数ですが教えてください。 よろしくお願いします。

  • XCOPYでネットワーク越しにコピーすると、「無効なドライブ指定です」と表示される

    下記のようなコマンドラインをバッチにし、タスクスケジューラで定期的に起動させています。 --------------------------------------------------------------- xcopy "C:\Documents and Settings\ユーザ名\デスクトップ\バックアップ" "\\同じWORKGROUPにある共有PC\ユーザ名\バックアップ" /s /e /y /k /g /d --------------------------------------------------------------- 目的は、サーバを立てたり、アークサーブなどの高度(高価)なソフトを使わずに、簡単に必要ファイルをバックアップしておこう、ということです。 ユーザは自分のPCのデスクトップの「バックアップ」フォルダに、バックアップしておきたいファイルを保存しておき、タスク(バッチ)は共有PCの同じツリー構造のディレクトリに差分コピーするだけの単純な作りです。 どのPCからも、共有PCは同じWORKGROUP内に見えておりますし、保存先フォルダにフルアクセス可能です。 しかし、一部のユーザのPCでは、「無効なドライブ指定です」と表示され、0個のファイルがコピーされました。と表示されます。つまり失敗しています。 ただ、タスクを手動実行させたり、バッチそのものを手動実行させるとなぜか成功するのです。 そこで質問です。 1.同じバッチ、タスクを登録しているのに、なぜユーザによって成功/失敗と分かれてしまうのでしょうか? 2.タスクで自動起動するのと、手動で起動するのとでは、OS上で何か違いがあるのでしょうか? お時間のある方、よろしくお願いいたします。

  • ”0xc0000142”のエラーでタスクスケジューラ実行中で固まる

    WinXPのタスクスケジューラでバッチが実行できません。 “タスク実行中”で止まってしまい、”0xc0000142”のエラーです。 タスクスケジューラから手動でタスクを実行出来、さらにログオンしていれば設定時間が来ると正常にジョブが流れます(当然、スケジューラはログオンしていなくても流れる様にチェックボックスは設定済み) バッチのログを取って調べてみると、MsAccessを起動する個所で止まっています。その行をコメントにすると正常終了。 アプリケーションの初期化失敗みたいです。Accessのファイルを別のものに替えてもダメ。レジストリを開いてサイズチェックOK。同サーバでAccessを起動する他のジョブは正常終了。正常に流れるバッチをコピーしてファイル名を変えてもダメ。 手詰まり状態です。どうすればいいか教えてください。

  • Windowsタスクについて

    Windows2003サーバでタスクを設定したのですが、ログアウトしている状態だと自動実行されません。 ログイン状態だと自動実行されます。 以下のような状況です。 教えていただけませんでしょうか。 ・タスクタブにある”ログオンしている場合にのみ実行する([実行する]がオンになっている場合)”についてはチェックを外しています。 ・バッチファイルからvbsのファイルをキックするように自動実行の設定をしています。  セキュリティタブではAdministratorsにフルコントロールのチェックが入っています。  バッチファイルとvbsのファイル自体にもAdministratorsにフルコントロールのチェックが入っています。 ・タスクを再作成してもやはり同じです。 ・その他のタスクについては自動実行され、問題ありません。   ・処理としては、ファイルのコピーを行っているのですが、  コピー先は、Terastation(NAS)先です。  ネットワークドライブとして割り当てています。 ・設定タブにある電源の管理については以下の通り設定しています。  (チェックを外す)  バッテリモードの場合、タスクを実行しない  バッテリモードが開始されたら、タスクを停止する  (チェックを入れる)  タスクの実行時にスリープを解除する。 よろしくお願い致します。  

  • タスクスケジューラーで実行されない

    WindwsosServer2012R2で下記のbatファイルをタスクスケジューラで実行しています。 ・タイミング 毎日 23:00 ・C:\TEST.batを実行する。 ・test.batの中身  xcopy C:\temp c:\temp2 /y /h /e tempフォルダの中にはaaaというフォルダがありその中にいくつかファイルがあります。 このバッチファイルを手動で行うと問題なく実行されるのですがタスクスケジューラーだと0×1と表示されxcopyは実行されていません。原因は何が考えられるでしょうか?