rlc999
21
この手順でNAS用の新しいWindows資格情報を削除・追加してみましたが、うまくいきませんでした。実際にやってみると、事前にWindows資格情報は存在していませんでした。各マシンの起動に使っているユーザー名とパスワードをNASにも同じように追加したところ、オンラインでNASにアクセスする際は問題なく動作しました。ですが、Windowsスケジューラーは資格情報の提示方法を何らかの形で変更しているか、またはコンソール/オフライン経由でアクセスした場合にNAS側の応答が異なるようです。資格情報のユーザー名をあらゆるバリエーションで試し、さらにスケジューラーにNASで設定したアカウントを使わせようとしましたが、どれもうまくいきませんでした。とてももどかしいです。
とはいえ、Qsync方式であれば、設定とテストを行うことで自分のニーズに合いそうです。
現在ログインしているユーザーは、スクリプトを処理しているユーザーと同じですか?(もし違う場合、認証情報は別のアカウントに保存されます)
タスクマネージャーには、タスクを実行するユーザーIDを設定するオプションがあります。(「ユーザーまたはグループの変更」ボタン)
rlc999
24
そうですね。これについていろいろ試してみました。NASにはアクセス権限を持つユーザーを1人追加しています。PCの起動時に使用するアカウントと同じユーザー名とパスワードを設定しています。Windowsのスケジューラーでこれを使おうとしましたが、うまくいきません。以前使っていた古いQNAP NASでは、スクリプトはスケジューラーで問題なく動作していて、IPアドレスとアクセスしたいフォルダ(例:\\192.168.12.150\folder)を使えば大丈夫でした。しかし新しいQNAPでは、これがもう機能しません。
そこで、スケジューラーでユーザーアカウントをここで説明されているように設定してみました。PCとNASの両方で定義されているユーザー名を使ったり、NAS名付き(例:NAS93494949\name)、PC名付き(例:User-PC12\name)、IPアドレス付き(例:192.168.12.150\name)など、いろいろ試しましたが、どれもうまくいきませんでした。
ひとつ質問があります。QNAPのログを確認してみましたが、ログインに失敗した場合(パスワードを間違えた時など)は記録されていました。しかし、スケジューラーがアクセスしようとして失敗した場合のログは見つかりませんでした。もしログにどんな認証情報が提示されて拒否されたか表示されていれば、原因を突き止められると思ったのですが、その方法が見つかりません。何か見落としていることはありますか?
スケジューラーで履歴を有効にして、その出力を確認しましたか?
スクリプトの出力をログファイルに > や 2> を使ってリダイレクトすることは試しましたか?
rlc999
26
履歴をオンにして何が表示されるか確認できます。もし認証情報の提示方法が表示されるなら、役立つかもしれません。
スクリプトの出力をリダイレクトする方法は(少なくとも私には)分かりません。これはvbsスクリプトなので、「wscript」インタープリターで実行されます。私は更新内容をテキストファイルに書き出すように作成しました。オフラインで動作するため、何をしたか、何が起こったかを確認する唯一の方法です。エラーについては、エラーが発生したことと、コードおよびテキストの説明を書き出すようにしています。このNASアクセスの問題については、スクリプトがターゲットフォルダーを見つけられなかった/アクセスできなかったという内容しか表示されません。
もう一つ考えたことがあります。新しいQNAPでは、二重のネットワークログインを防止している可能性があります。Scheduler(スケジューラー)経由でスクリプトを実行していますが、同じアカウントでオンラインログインした状態でテストしています。NASに2番目のユーザーを作成し、Schedulerがその別のアカウントを使うように設定することも試せるかもしれません。そうすれば、同じユーザーが2回目の接続を試みることはなくなります。単なる仮説ですが、試してみる価値はありそうです。
タスクスケジューラで実行されるコマンドを修正して、前述のリダイレクトをファイルに追加し、そのファイルを確認できると思います。履歴オプションについてはあまり見たことがありませんが、何か有用な機能があることを期待しています。
NA9D
28
NASには好きなだけログインを作成できます。私はいつも複数持っています。