ファイル転送プロトコル・モード

ファイル転送プロトコル (ftp) モードを使用して、転送パッケージを生成することができます。DCM はその転送パッケージを generate_directory からリモート宛先データベースの転送パスに送信します。転送パッケージは ftp コマンドを使用して送信されます。このコピーは、転送パッケージを生成する Rational® Synergy エンジンによって実行されます。

ユーザー指定のオプション: ホスト名 (Host Name)、OS、パス

ファイル転送プロトコル・モードは、ソース・データベースのエンジンが宛先データベースのファイル・システムにアクセスできない場合に使用します。ファイル転送プロトコル・モードを使用すると、認証されていないユーザーが匿名ログインを使用して、セキュアな装置にある特定のディレクトリーにデータを転送できるようになります。このモードでは、認証されたユーザーが自分のログイン ID を使用してデータを転送することもできます。

DCM は「ホスト名 (Host Name)」フィールドを ftp サーバーの名前として使用します。ftp サービスが宛先マシン上で実行されている必要があります。

注: Windows エンジンからの ftp 転送用に、Microsoft では Windows 2000 Server 用の BackOffice インターネット・スイートを提供しています。また、サード・パーティー製のサーバーも使用可能です。詳しくは、ご使用のサービスに関する資料を参照してください。

DCM は「OS」フィールドを内部目的のみに使用します。

DCM は転送パスを使用して、ftp ディレクトリーのパスを指定します。 転送パスに空白の値を使用した場合は、宛先データベースのデフォルト・パス receive_directory が想定されます。

注: UNIX サーバーに接続された Windows クライアントから ftp 転送を開始しないでください。この操作を行うと、転送が失敗します。失敗の原因は、サーバー・ファイル・システムにある DCM 転送パッケージをクライアントが認識できないためです。

サイトによっては、セキュリティー制限が設けられている場合があります。そのような場合には、データの送信先がステージング・エリアのみに限定されていることがあります。このステージング・エリアを receive_directory として指定してください。

注: DCM で ftp コマンドを使用する前に、それらのコマンドを手動で試行してください。

UNIX エンジンからの FTP

UNIX マシンから ftp 転送を開始する際には、エンジンまたはクライアント・プロセスがユーザーの介入なしに宛先マシンにログインできなければなりません。ホスト名、ユーザー名、およびパスワードの各ログイン引数を ftp コマンドに指定する必要があります。 ログイン引数はソース・マシン上の .netrc ファイルに入力します。

例えば、以下に示す .netrc ファイルのエントリーでは、ESX ftp サーバーに匿名で転送するためのログイン引数を指定しています。

      machine ftp.ESX.com
      login anonymous
      password dcm_transfer

セキュリティーを強化するため、他のログインとパスワードの組み合わせを .netrc ファイルに入力できます。

DCM はまず、ccm_root のホーム・ディレクトリーにある .netrc ファイルを使用して、エンジンからの転送を試行します。 エンジンからの転送が失敗した場合、DCM は転送実行者のホーム・ディレクトリーにある .netrc ファイルを使用して、クライアントからの転送を試行します。

UNIX エンジンの ftp 転送の場合は、Korn シェル (ksh -c) を使用してこれらの ftp コマンドが実行されます。

      ftp @host < @infile

ここで、@infile は構成された一時コマンド・ファイルに置き換えられ、@host は「ホスト名 (Host Name)」フィールドの値に置き換えられます。

このコマンド・ファイルの構成では、最初に以下のいずれかの内容が取得されます。

以下のコマンドが追加されます。

      put <data_file> <data_file>
      put <preview_file> <preview_file>
      put <info_file> <info_file>
      get <info_file> <temp_file>
      quit

最後の get コマンドは、DCM が DCM 情報ファイルをリモート・マシンから取得されたファイルと比較できるようにする目的で実行されます。この比較が行われる理由は、転送が失敗した場合や、接続が正常に確立されなかった場合でも、多数の FTP 実装が正常終了の状況コードであるゼロを返すためです。

注: UNIX ftp サーバーによっては、転送パッケージ・ファイル名での "#" 文字の使用をサポートしていない場合があります。このため、UNIX から UNIX への ftp 転送の場合、DCM によってこれらの文字が "@" に自動的に変換されます。受信操作では、いずれのフォーマットの転送パッケージ・ファイル名も処理することができます。 また、.netrc ファイルは rwx------ (つまり、所有者のみによる読み取り/書き込み/実行) でなければなりません。

Windows エンジンからの FTP

Windows マシンから ftp 転送を開始する際には、エンジンまたはクライアント・プロセスがユーザーの介入なしに宛先マシンにログオンできなければなりません。Windows の組み込み ftp コマンドは、無人の ftp 転送をサポートしています。

組み込みコマンドは以下のとおりです。

      ftp -n -s:@infile @host

ここで、@infile は構成された一時コマンド・ファイルに置き換えられ、@host は「ホスト名 (Host Name)」フィールドの値に置き換えられます。

サーバー ccm.ini ファイルの [Options] セクションに以下のような行を入力すると、別の ftp コマンドを使用することができます。

      DCM_NT_FTP_CMD=your_command

このコマンド・ファイルの構成では、最初に以下のいずれかの内容が取得されます。

以下のコマンドがファイルの内容に追加されます。

      put <data_file> <data_file>
      put <preview_file> <preview_file>
      put <info_file> <info_file>
      get <info_file> <temp_file>
      quit

最後の get コマンドは、DCM が DCM 情報ファイルをリモート・マシンから取得されたファイルと比較できるようにする目的で実行されます。この比較が行われる理由は、転送が失敗した場合や、接続が正常に確立されなかった場合でも、多数の FTP 実装が正常終了の状況コードであるゼロを返すためです。

注: UNIX ftp サーバーによっては、DCM 転送パッケージ・ファイル名での "#" 文字の使用をサポートしていない場合があります。このため、Windows から UNIX への ftp 転送の場合、DCM によってこれらの文字が "@" に自動的に変換されます。受信操作では、いずれのフォーマットの転送パッケージ・ファイル名もサポートされます。

フィードバック