PsExecでPowerShellをリモート実行。
Windows2003サーバーでデプロイ作業を全自動にするべくリモートでコマンドを実行する方法を物色してたのですが、FreeSSHd+SharpSSHで玉砕。SUAはさすがに怖いのでもっとお手軽な方法を探してたらPsExecというのがあるらしい。
で、早速実行してみたらPowerShellを使うとShellの起動途中でハングアップしてるくさい。
でで、調べてみたら↓にあるような特殊な書き方をしないといけないらしい。
http://www.leeholmes.com/blog/UsingPowerShellAndPsExecToInvokeExpressionsOnRemoteComputers.aspx
なんで、リモートで"ls"を実行したい場合なんかは↓みたいな感じ。
./PsExec \\serverName cmd /c "echo . | powershell ls"
んで、サーバー同士では確認が取れたのでローカルからサーバーに投げてみたらアクセス拒否.....
もうシネ。いつになったらコマンド実行できるんだーーーーーー。
でも、このPsExecって管理者共有を使ってリモートのWindows/system32にコピった後に、サービスを登録してコマンド実行してサービスを消すって事をしてるらしい。いろんな意味ですごいな。