rsync の手順
rsync ツールは、増分的な高速ファイル転送を可能にするオープンソースツールです。rsync ツールの詳細については、以下の Web サイトを参照してください。
rsync は、大半の UNIX 製品でデフォルトで使用できます。また、PTC によってサポートされているすべての UNIX オペレーティングシステムを対象とした事前コンパイルソフトウェアのインターネットアーカイブにも収録されています。rsync を使用できない場合は、ほかの方法でシステムを複製できます。
以下に、Windchill システムをコピーする際に保持する項目について、多くのツールが該当する追加規則を示します。
• Windchill アプリケーションで使用する HTTP Server と Embedded Servlet Engine は、各アプリケーションを含んでいるディレクトリ構造全体をコピー先のマシンにコピーする、またはコピー先のマシンと同期することによって再配置できます。Windows の場合、「開始」メニューエントリは自動的に作成されませんが、手動で作成できます。HTTP Server、Embedded Servlet Engine、または Windchill 用に作成された Microsoft Windows サービスは、手動で再構築する必要があります。UNIX の場合、さまざまな Windchill コンポーネントを起動および停止するための rc スクリプトは、インストールディレクトリ以外のディレクトリに配置できます。たとえば、各種の /etc ディレクトリなどに配置できます。これらのファイルも手動でコピーし、保持する必要があります。
• さまざまな Windchill ファイルのタイムスタンプを保持する必要があります。大半のバックアップツールとアーカイブツール (zip、tar、rar など) には、ファイルのタイムスタンプを保持する機能が用意されています。システムをコピーするためのツールの詳細については、次の Web サイトで rsync のドキュメンテーションを参照してください。
rsync では、rsync クライアントと rsync サーバー間の通信に独自のプロトコルが使用されます。rsync クライアントを rsync サーバーに接続する主な方法は、以下の 2 とおりです。
• 最初の方法は、次の Web サイトにある rsync manpage に USING RSYNC-DAEMON FEATURES VIA A REMOTE-SHELL CONNECTION として記載されています。
• 2 番目の方法は、STARTING AN RSYNC DAEMON TO ACCEPT CONNECTIONS として記載されています。
リモートシェル接続を使用した rsync デーモンへの接続
|
通常、Windows システムでは、リモートシェルアクセスは有効化されていません。そのため、この方法は一般的に UNIX および Linux システムでのみ使用します。
|
rsync クライアントは、リモートシェル接続を使用して rsync サーバーをリモートで起動できます。何度も使用しない場合は、これが最も簡単な方法です。その理由を以下に示します。
• rsync サーバーのコンフィギュレーションファイルを設定する必要がない。
• rsync クライアントはサーバーを自動的に起動するので、ソースシステムでサーバーを手動で起動する必要がない。
rsync サーバーをリモートで起動する場合、サーバーでリモートシェルを使用できる必要はありません。rsync をサポートしているリモートシェルは、rsh と ssh です。この方法を使用するには、rsh や ssh などのリモートシェルを使用可能かどうかを、UNIX システム管理者に確認してください。
ソースシステムをターゲットシステムと同期するには、次の形式のコマンドをターゲットシステムで実行します。
rsync -av -e [ssh or rsh] [user]@[sourcesystemhostname]:[absolute path to
application]/][target path to application]
たとえば、windchillserver という名前のターゲットシステムで ssh を使用し、ファイルを所有するユーザーが wcadmin であるとします。この場合は、次のコマンドを入力します。
rsync -av -e ssh wcadmin@windchillserver:/source/windchill/ /destination/windchill
このコマンドを実行すると、Windchill サーバー上のユーザー wcadmin として ssh 経由で接続し、rsync サーバーを起動します。クライアントは、/location/to/windchill をターゲットシステム上のローカルディレクトリ /location/to/windchill と同期します。rsh を使用している場合、-e ssh を -e rsh に置き換えてください。
推奨オプションである -av を使用すると、アーカイブモードが有効になり、詳細度が追加されます。アーカイブモードでは、ファイル内のすべてのディレクトリが /location/to/windchill に再帰的にコピーされ、シンボリックリンク、タイムスタンプ、ファイルのアクセス許可、ファイルのオーナーシップ、および特定の UNIX ファイルタイプがすべて保持されます。
/location/to/windchill が存在し、現在ソースシステムにないファイルが含まれている場合は、-delete 引数を追加して、これらのファイルを削除できます。-delete 引数を使用すると、ターゲットディレクトリの内容がソースディレクトリの内容と同一になります。
rsync デーモンへの手動接続と接続の受け入れ
リモートシェル機能を使用できない場合、または 1 つのソースシステムから複数のマシンをリモート同期する必要がある場合、rsync デーモン (rsyncd) は最も効果的なソリューションです。これは Windows の場合であり、通常はリモートシェルアクセスは有効化されていません。
サーバー上の rsyncd.conf ファイルの例を次に示します。
use chroot = no
[windchill]
path=/location/to/windchill
comment= Windchill application
この rsyncd.conf ファイルでは、/location/to/windchill が示す場所で [Windchill] モジュールが定義されます。
use chroot = no ディレクティブが必要となるのは、root 以外のユーザーとして rsync デーモンを実行する場合だけです。
rsync デーモンは次のコマンドで起動できます。
rsync --daemon --config=[path to rsyncd.conf file]
デフォルトでは、rsync ポートは 873 です。このポートにバインドするにはルート権限が必要です。ルート権限がなくてもバインドできるようにするには、次の行を追加します。
--port=[some port higher than 1024]
rsync デーモンの設定の詳細については、次の Web サイトで rsyncd.conf のマニュアルページを参照してください。
rsync デーモンが起動した後、rsync クライアントを使用してデーモンに直接接続し、同期を実行できます。同期を実行するには、次のコマンド形式を使用します。
rsync -av rsync://[source system]:[rsync daemon port]/[rsync module] /location/to/windchill
たとえば、windchillserver 上で実行されているサンプルの rsyncd.conf ファイルを使用して、rsync デーモンを設定するとします。この場合は、次のコマンドを入力します。
rsync -av rsync://windchillserver:873/windchill /location/to/windchill
rsync デーモンがデフォルトポートで実行されている場合、ポート部分 (:873) は省略できます。
その他の rsync コマンドオプションと rsync デーモンコンフィギュレーションファイルのパラメータについては、rsync のドキュメンテーションで説明されています。rsync のドキュメンテーションは、次の Web サイトにあります。
高度な rsync 設定が必要な場合は、rsync のドキュメンテーションを参照してください。