• ベストアンサー

WindowsからUNIXサーバのプロセス起動方法?

環境:Windows2000Server、UNIXサーバ WindowsサーバからUNIXサーバのプロセス(EXE及びシェル)を起動したいのですが、出来ますか? 前提条件としてWindowsとサーバ間はネットワークの 割り当てがされていないのです。 VBのプログラムからサーバIPまたはサーバ名からUNIXサーバプロセス起動したいのです。

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

  • ベストアンサー
  • shige_70
  • ベストアンサー率17% (168/946)
回答No.2

ソケットのご質問をされた方ですよね。 ソケットの方はうまくいきましたでしょうか? うまくいったのでしたら、プロセスを起動するサーバプロセス(デーモン)の作成に挑戦してみては如何でしょうか? ソケットでrecv()した内容をコマンドラインと見なして、そのままsystem()で実行すればokです。 ただ、system()はコマンドラインの解釈からfork(),exec(),wait()までの一連の流れをまとめたお手軽関数です。勉強のために本格的にやるならご自分でコマンドラインをargv形式に分解してからexecvp()等で直接起動します。exec()系システムコールは失敗しない限り絶対に戻ってこないことに注意してください。 あと、外(インターネット)から接続できる環境にある場合はこの手のサービスはそのままセキュリティホールになりますので、認証などいろいろ考えてやらないと恐ろしいことになる可能性がありますから十分注意してください。

akira_akira
質問者

補足

今回もありがとうございます。大変助かります。 ソケットの通信は出来ました。ありがとうございます。 セキュリティホールについて、例えばsystemコール用の ポートを(例えば7500とか)openします。 そのときに認証とは、受け側APで最初に認証(パスワード)みたいなデータを送信してもらい、大丈夫かどうを 行うってことですか?

その他の回答 (1)

  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.1

とりあえずUNIXの種類ぐらいは書いておいたほうが良いです。 >出来ますか? という質問に関しては出来ます。 ネットワークの割り当ては関係ありません。 ネットワークの割り当てはWindows共有ファイルの話です。 一番簡単な方法としてはtelnetを使うことですかね。 UNIX側でtelnetのデーモンを起動しておく必要はありますが。

関連するQ&A

専門家に質問してみよう