Sun ロゴ      前へ      目次      索引      次へ     

Sun ONE Calendar Server 6.0 インストールガイド (Solaris 版)

第 3 章
Calendar Server データの移行

SunTM ONE Calendar Server 6.0 には、次の移行ユーティリティがあります。

図 3-1 に、Calendar Server 移行ユーティリティの実行フローを示します。


警告

移行ユーティリティを実行する前に、必ずご購入先のテクニカルサポートまたは顧客サービスの担当者に問い合わせて、お手持ちのユーティリティが最新のバージョンであることを確認してください。

お使いのサイトが Calendar Server の限定仮想ドメインモードまたは複数インスタンスに対応するように設定されている場合は、ご購入先の顧客サービス担当者に問い合わせて移行要件の評価を受け、それらの要件をサポートする特定の移行ユーティリティがお手元にあることを確認してください。


図 3-1 Calendar Server 移行ユーティリティの実行フロー

さまざまな Calendar Server 移行ユーティリティの実行フローを示します。


cs5migrate ユーティリティ

Calendar Server 5.x から Calendar Server 6.0 にアップグレードしている場合は、Calendar Server 6.0 の実行前に cs5migrate ユーティリティを実行する必要があります。cs5migrate ユーティリティの機能は次のとおりです。

移行の所要時間

cs5migrate による移行にかかる時間は、さまざまな要因で変化します。第 1 に cs5migrate では、スキーマ属性を更新するため、LDAP ディレクトリサーバーにアクセスする必要があります。そのため LDAP サーバーへのネットワーク接続が移行時間に大きく影響します。可能な限り、LDAP サーバーへの高速ネットワーク接続を使用し、その他のネットワークトラフィックが最小のときに cs5migrate を実行してください。

移行シナリオ Sun FireTM (UltraSPARCTM III Cu、12 CPU、750MHz、メモリ 12G バイト、浮動小数点プロセッサ付、20G バイトのスワップファイルスペースで Solaris 8 OS を使用) では、次の Calendar Server 5.x カレンダデータベースを約 1 時間 15 分で移行しました。

cs5migrate の構文

csmig ユーティリティは、次の構文を使用します。

cs5migrate [-q] [-d] [-r] [-l min|max] source-directory target-directory

-q を指定すると非出力モードになります。非出力モードでは、エラーが検出された場合にのみ情報が表示されます。移行処理が正常に完了した場合、情報は表示されません。

-d を指定するとドライランモードになります。ドライランモードでは、データの移行やデータベースのアップグレードは行われません。実際に移行を実施したときの cs5migrate の処理内容が報告されるだけです。

-r を指定すると、繰り返し発生するイベントのマスターコンポーネントを作成します。

-l min|max では、ログモードと移行ログ (cs5migrate.log) の詳細レベルを指定します。

-t オプションは、現在のリリースでは実装されていません。

source-directory は、Calendar Server 5.x データベースファイルが格納されたディレクトリを指定する必須パラメータです。

target-directory は、新しい Calendar Server 6.0 データベースファイルが作成される既存のディレクトリを指定する必須パラメータです。

重要 cs5migrate の実行前に、target-directory を作成する必要があります。

移行プロセス

cs5migrate の実行前に、次の手順に従ってください。

次の手順に従って、cs5migrate を実行します。

  1. Solaris またはその他の UNIX システムの場合は、Calendar Server を実行するユーザー名 (例: icsuser) とグループ名 (例: icsgroup) を指定してログインします。
  2. 必要に応じて stop-cal コマンドを使って Calendar Server サービスを停止します。
  3. 必要に応じて target-directory を作成します。target-directorycs5migrate の実行前に存在している必要があります。
  4. cs5migrate を実行します。構文については、「cs5migrate の構文」を参照してください。
  5. たとえば、Solaris システムでは、次を入力します。

    ./cs5migrate -q -l max /var/opt/SUNWics5/csdb511
      /var/opt/SUNWics5/csdb60

    この例では、移行前に /var/opt/SUNWics5/csdb60 ディレクトリが存在している必要があります。

    移行ステータスについては、cs5migrate.log ファイルで確認してください。移行中にエラーが発生した場合や、カレンダデータベースエントリを移行できない場合は、cs5migrate によってその旨が cs5migrateerror.log に書き込まれます。

  6. cs5migrate では ics.conf ファイルを変更しないため、cs5migrate の実行が終了したら、ics.conf ファイルの caldb.berkeleydb.homedir.path パラメータが移行したデータベースを示している必要があります。
  7. 移行したデータベースディレクトリを指すようにパラメータを設定し直すか、移行したデータベースファイルをパラメータが示すディレクトリに移動します。

  8. LDAP データキャッシュオプション (local.ldap.cache.enable = "yes") または CLD キャッシュオプション (caldb.cld.cache.enable = "yes") を使用している場合は、cs5migrate の実行後、ターゲットディレクトリに ldap_cache および cld_cache ディレクトリを作成します。
  9. 移行したデータベースファイルのアクセス権を確認します。cs5migrateicsuser として実行した場合は、アクセスに問題はありません。スーパーユーザー (root) として実行することは推奨されませんが、その場合は、アクセス権を設定し直さなければならないことがあります。
  10. start-cal コマンドを使用して Calendar Server を再起動します。


csmig ユーティリティ

csmig ユーティリティは、カレンダデータベースの各カレンダに所有者を割り当て、必要に応じて各カレンダ ID (calid) を所有者にマッピングします。

csmig ユーティリティでは、ホスト (仮想) ドメインおよび LDAP Calendar Lookup Database (CLD) プラグインを使用できます。移行したデータベースのカレンダは、このプラグインを使用してアクセスできます。LDAP CLD プラグインはカレンダを多数のバックエンドサーバーに配布することによってカレンダデータベースの水平方向のスケーラビリティを提供します。LDAP CLD プラグインの詳細については、『Sun ONE Calendar Server 管理者ガイド』を参照してください。

このマニュアルでは、次のトピックを取り上げます。

csmig の機能

csmig 移行ユーティリティには次の機能があります。

csmig 要件

csmig を使用する際の要件は次のとおりです。

csmig の構文

csmig ユーティリティでは、次の構文を使用します。

csmig [ -t DestinationDB ] [ -b Backend-DWPHost ]
      [ -o OutputFile ]  [ -e ErrorFile ] [ -m MappingFile ]
        -c calendarOwner -r resourceOwner { migrate|dryrun }

-t DestinationDB は、csmig が生成する宛先ターゲットデータベースを指定します。デフォルトは、MigratedDB です。

-b Backend-DWPHost は、DWP バックエンドホストサーバーの名前を指定します。この名前は、ics.conf ファイルに指定された DWP バックエンドホストサーバーと一致している必要があります。

-o OutputFile には、発生したすべてのエラーと同様に、画面への csmig 出力を捕らえる、出力ファイルを指定します。デフォルトは、MigrateOut です。

-e ErrorFile には、csmig が出力するすべてのエラーと、解決できないデータベースエントリが書き込まれます。データベースエントリが解決されない場合は、宛先データベースには書き込まれません。デフォルトは、MigrateError です。

-m MappingFile は、LDAP スキーマのエントリを更新するために要求される変更をリストするドライランモードで生成される出力マッピングファイルです。内容は、次のようになります。

Old calid = jsmith New calid = jsmith:basketball

マッピングファイルでは LDAP スキーマに望ましい変更がリストされるだけです。csmig ではスキーマに実際の変更を加えません。

移行モードでは、MappingFile は使用されません。

-c calendarOwner には、所有者のないユーザーカレンダに付与する所有者名を指定します。

-r resourceOwner には、所有者のないリソースカレンダに付与する所有者名を指定します。

csmig 移行手順

構成内のすべてのサーバーに Calendar Server 6.0 をインストールしてから、csmig を実行して、既存の Calendar Server および LDAP データを新しい Calendar Server 6.0 および LDAP データに移行します。適切に動作するためには、LDAP CLD プラグインが必要です。csmig を使用してカレンダデータを移行する推奨手順は次のとおりです。

  1. LDAP ディレクトリサーバーの設定 インデックスを追加すると、LDAP データ上の移行およびカレンダ検索のパフォーマンスが向上します。
  2. テストドライランの実行 ドライランは、移行時の csmig の実行内容を報告しますが、実データは移行しません。ドライランを行ったあとで、エラーを訂正したり、未解決カレンダを処理する計画を決定できます。
  3. 実働データの移行 本番稼動の間、csmig はカレンダデータベース (.db ファイル) および LDAP データ (ユーザーおよびグループ設定の変更データ) の icsSubscribedicsCalendaricsCalendarOwnedicsFreeBusyicsSet、および uid (リソースカレンダ用) を移行します。移行のあとで、すべてのカレンダリソースに LDAP エントリが作成されます。

LDAP ディレクトリサーバーの設定

パフォーマンスを向上させるには、次の 2 つの新しいインデックスを slapd.ldbm.conf ファイルに追加します。

slapd.ldbm.conf ファイルでインデックスを作成することについての詳細は、ディレクトリサーバーに付属のマニュアルを参照してください。

テストドライランの実行

ステージングサーバー上で実行したテストドライランは、何が移行されるのかを報告しますが、実働データベースを実際に移行することはありません。ドライランによって実働データベースを移行する計画を決定することができます。たとえば、所有者を持たない「orphan」カレンダを処理する方法を決定できます。

csmig を使用してテストドライランを実行するには、次の手順に従います。

  1. icsuser (または設定中に指定した Calendar Server 実行時ユーザー ID) としてログインします。csmig をスーパーユーザー (root) として実行すると、移行したファイルのアクセス権を設定し直さなければならないことがあります。
  2. ステージングサーバー上で、必要に応じて Calendar Server 6.0 をインストールします。
  3. カレンダデータベースのスナップショットをステージングサーバーにコピーします。
  4. LDAP サーバーをインストールして実働 LDAP 環境を模倣します。slapd.ldbm.conf ファイルの新しいインデックスとともに、このサーバー上に LDAP データベースのスナップショットをインストールします。
  5. cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリに移動します。
  6. 所有者を持たないユーザーカレンダに多目的の calid を作成します。たとえば、Solaris システムでは、次のコマンドは orphancalid を使用してユーザーを作成します。
  7. ./csuser -g orphan -s adminuser -y password -l en -c orphan create orphan

  8. 必要に応じて、stop-cal コマンドを使って Calendar Server を停止します。
  9. csdb check コマンドを実行してデータベースに破損がないかを検査します。破損が検出された場合、csdb rebuild を実行してデータベースを再構築します。
  10. dryrun オプションを使用して csmig コマンドを実行します。たとえば、Solaris システムでは、次を入力します。
  11. ./csmig -b sesta.com -o csmig.out -e csmig.errors -m csmig.map -c orphan -r calmaster dryrun

    このコマンドを使用すると、orphan に所有者のないユーザーカレンダを割り当てて、calmaster に所有者のないリソースカレンダを割り当てます。

    出力マッピングファイル (csmig.map) を確認します。マッピングファイルには LDAP スキーマのエントリ更新に望ましい変更がリストされています。

  12. 出力、マッピング、およびエラーファイルを検査します。検出したすべての LDAP 問題またはエラーを解決します。実際の移行の前に、未解決カレンダを処理する方法を決定します。次のようないくつかのオプションがあります。
    • 移行の前に、すべての不必要なカレンダを削除します。
    • すべての未解決カレンダに所有者を割り当てます。
    • -c および -r オプションを使って、csmig が移行時にカレンダの所有者を割り当てられるようにします。
  13. 実働カレンダデータベースを実際に移行する前に、ステージングサーバーにカレンダデータベースを移行することを推奨します。この手順によって、実働データベースを移行する前にデータがどのように移行されるのかを正確に確認し、問題があれば訂正することができます。
  14. たとえば、Solaris システムでは、次のコマンドによってカレンダデータベースが /var/opt/SUNWics5/testcsdb/ ディレクトリに移行されます。

    ./csmig -t /var/opt/SUNWics5/testcsdb/ -b sesta.com -o csmig.out -e csmig.errors -m csmig.map -c orphan -r calmaster migrate

  15. テスト移行が終了した後、移行したデータベースをcaldb.berkeleydb.homedir.path パラメータによって指定された /csdb ディレクトリにコピーします。あるいは、このパラメータを編集して移行したデータベースの新しい位置を示すように編集します。そのあと、下記のチェックを実行します。
    • 新しいカレンダデータベースで csdb check を実行します。移行したデータベースのイベントおよび予定の数は、移行前の合計と一致する必要があります。
    • icsCalendarOwned エントリの検索およびエントリの数がカレンダの移行前の数と一致することを確認します。
    • Calendar Express にログインして移行したデータベースのカレンダのいくつかを検証します。

テスト移行が成功した場合は、実働データベースを移行する準備ができています。

実働データの移行

csmig を使用して実働データベースを移行するには、次の手順に従います。

  1. icsuser (または設定中に指定した Calendar Server 実行時ユーザー ID) としてログインします。csmig をスーパーユーザー (root) として実行すると、移行したファイルのアクセス権を設定し直さなければならないことがあります。
  2. cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリに移動します。
  3. 必要に応じて、stop-cal コマンドを使って Calendar Server を停止します。
  4. 次のデータのバックアップを作成します。
    • カレンダデータベース (.db ファイル)。
    • LDAP データ: slapd データベースディレクトリおよび LDAP データベース。
    • ics.conf ファイル。この手順は実際には必要ありませんが、元の構成に戻す必要がある場合に利用できます。
  5. migrate オプションを使用して csmig を実行します。たとえば、Solaris システムでは、次のコマンドで、カレンダデータベースを /var/opt/SUNWics5/newcsdb/ ディレクトリに移行します。
  6. ./csmig -t /var/opt/SUNWics5/newcsdb/ -b sesta.com -o csmig.out -e csmig.errors -m csmig.log -c orphan -r calmaster migrate

  7. エラーファイルに含まれている、すべての未解決カレンダを確認のうえ、「テストドライランの実行」の手順 10 の記述を基にした計画に従って、それらを解決しておきます。
  8. 新しい移行したデータベースを caldb.berkeleydb.homedir.path パラメータによって指定された /csdb ディレクトリにコピーします。あるいは、このパラメータを編集して移行したデータベースの新しい位置を示すように編集します。
  9. csdb check コマンドを実行して移行したデータベースを検査します。何らかの破損が示された場合は、csdb rebuild を実行してデータベースを再構築します。
  10. ics.conf ファイル内の以下の構成パラメータに変更を加えて、LDAP CLD プラグインを有効にします。
    • service.dwp.enable = "yes"
    • service.dwp.port = "9779"
    • csapi.plugin.calendarlookup = "y"
    • csapi.plugin.calendarlookup.name = "*"
    • caldb.cld.type = "directory"
    • caldb.dwp.server.default = "default-server-name"
    • caldb.dwp.server.server-hostname.ip = "server-hostname" (ローカルサーバーを含む各バックエンドサーバーにて)
    • caldb.cld.cache.enable = "yes" (CLD キャッシュオプションを使用する場合)
    • caldb.cld.cache.homedir.path は、CLD キャッシュディレクトリの位置を指定します。デフォルトは、cal_svr_base/var/opt/SUNWics5/csdb/cld_cache です。

      このディレクトリが正確であることを確認するか、あるいは CLD キャッシュを別の位置にする場合は、このパラメータを修正します。

      LDAP CLD プラグインに対する構成パラメータの設定の詳細については、『Sun ONE Calendar Server 管理者ガイド』を参照してください。

  11. start-cal コマンドを使用して Calendar Server を再起動します。
  12. Calendar Server にログインし、いくつかの移行したカレンダを検査することにより、設定が正常に動作していることを検証します。検査中アラームを無効にするには、ics.conf ファイルにある次の各パラメータを「no」に設定します。
    • caldb.serveralarms = "no"
    • caldb.serveralarms.dispatch = "no"
    • service.ens.enable = "no"
    • service.notify.enable = "no"
    • ine.cancellation.enable = "no"
    • ine.invitation.enable = "no"
    • service.admin.alarm = "no"

csmig の使用上のヒントおよびトラブルシューティング

この節では、csmig の使用上のヒントおよびトラブルシューティングの方法について説明します。

 

csmig ドライランカレンダの所有者をカレンダの所有者にしない場合

たとえば、tchang:myCalendar という名前のカレンダに、カレンダデータベースで所有者として jsmith があり、csmig ドライランがマッピングを jsmith:tchang_myCalendar として表示しているとします。このカレンダ名を tchang:myCalendar のまま保持し、所有者の割り当てを tchang にします。

解決策

移行の前に、cscal ユーティリティを使用してカレンダ tchang:myCalendar の所有者を tchang に変更します。このようにすると、移行の際、このカレンダは tchang:myCalendar にマッピングされ、tchang の LDAP エントリに icsCalendarowned が追加されます。

LDAP カレンダ検索が正常に動作しない場合

移行のあとで、LDAP カレンダ検索が有効になっているが、カレンダ検索ダイアログボックスはまったく結果を返さないか、部分的な結果だけを返します。

解決策

LDAP カレンダ検索を有効にすると、Calendar Server は (&(objectclass=icscalendaruser)(icscalendarowned=*substr*)) を検索します。

次のフィルタを使用して LDAP データで 2 つの異なる検索を手動で実行して出力を比較します。

サーバーは、icsCalendaruser オブジェクトクラスを含むフィルタを使用するため、LDAP サーバーはスキーマ検査が使用不可の状態で配置されいくつかのカレンダエントリが icsCalendaruser オブジェクトクラスを持たないでプロビジョンされた可能性があります。

csmig ドライランが重複するカレンダ名を表示する場合

csmig ドライランマッピングファイルおよび出力ファイルから、重複するカレンダ名の存在を確認できます。たとえば、元のデータベースでは、jsmith は次のカレンダを所有します。

ドライランの実行により、移行時に 2 つのカレンダがマージされることがわかります。結果カレンダは次のように示されます。

出力ファイルには次の警告メッセージが含まれます。

Error modifying calendar properties, error=2

解決策

2 つのカレンダをマージしない場合は、移行の前に basketball の所有者を jsmith 以外のユーザーに変更します。これにより、2 つの別々のカレンダのデータ整合性が保たれます。

複数の orphan カレンダを個別に所有者に割り当てる方法

csmig は、デフォルトで、すべての orphan カレンダを単一の所有者に割り当てます。しかし、orphan カレンダを複数の所有者に割り当てたい場合もあります。

解決策

csmig は、コマンド行からはマッピングファイルを受け付けません。ただし、移行の前に、元のデータベースで orphan カレンダに所有者を割り当てることができます。すべての orphan カレンダのドライランマッピングファイルを検査します。その後、移行の前に cscal ユーティリティを使用して orphan カレンダに所有者を割り当てます。dryrun モードで再び csmig を実行して新しい所有者を検証します。

カレンダユーザーをほかのバックエンドサーバーに移動する方法

ユーザーをバックエンドサーバー間で移動する方法は?

解決策

カレンダユーザーを移動するためには、元のサーバーから各ユーザーカレンダをエクスポートし、そのカレンダを新しいサーバーにインポートします。カレンダを移動させたら、元のサーバーにあるカレンダを削除できます。ユーザーの移動手順の詳細については、『Sun ONE Calendar Server 管理者ガイド』を参照してください。


csvdmig ユーティリティ

csvdmig ユーティリティは、ホスト (仮想) ドメインを使用するサイトの Calendar Server データベースおよび LDAP ディレクトリサーバーデータベースを変更します。csvdmig ユーティリティでは、次のようにドメイン名をユーザー ID に追加します。

 


警告

csvdmig ユーティリティは、元の場所から別の場所への、実際のデータの移行はしません。このユーティリティは、それぞれ現在の場所にある、カレンダデータベースと LDAP ディレクトリサーバーを修正します。

したがって、csvdmig の実行に先立ち、Calendar Server データベースと LDAP ディレクトリサーバーデータベースの両者について、バックアップが必要になります。


 

csvdmig の構文

csvdmig ユーティリティは、次の構文を使用します。

csvdmig [-t DestinationDB] [-c ConfigFile] [-e ErrorFile] [-m MappingFile]
  migrate [DB | LDAP]

-m MappingFile はマッピングファイルを指定する入力パラメータです。デフォルトは、MigrateMapping です。

マッピングファイルは、既存のユーザーをそれぞれのドメインにマップする入力テキストファイルです。csvdmig の実行前にマッピングファイルを作成する必要があります。新旧の値の間に空白文字を入れ、1 行に 1 エントリずつ指定してください。次に、例を示します。

user1 user1@sesta.com
user2 user2@siroe.com
user3 user3@sesta.com
...
user-n user-n@siroe.com

-c ConfigFile は Calendar Server の設定ファイルを指定する入力パラメータです。デフォルトは、ics.conf ファイルです。

-t DestinationDB は、移行後のデータベースの場所を指定する出力パラメータです。デフォルトは、MigratedDB です。

-e ErrorFile は、解決できないエラーを格納するエラーファイル名を指定する出力パラメータです。デフォルトは、MigrateError です。

DB | LDAP では、Calendar Server データベース (DB) と LDAP ディレクトリサーバー (LDAP) のどちらを変更するかを指定します。デフォルトはカレンダデータベース (DB) です。

csvdmig の実行例


ics2migrate ユーティリティ

ics2migrate 移行ユーティリティでは、iPlanet Calendar Server 2.x のカレンダデータと LDAP ユーザー基本設定を Calendar Server 6.0 に移行できます。

この節では、次の項目について説明します。

 

移行要件

Calendar Server 2.x から 6.0 に移行する際のハードウェアおよびソフトウェア要件は次のとおりです。

ソースマシンと移行先マシンは、別々のサーバーであっても同一のサーバーであってもかまいません。サポート対象のプラットフォームについては、『Sun ONE Calendar Server リリースノート』を参照してください。

移行対象

次の表に、Calendar Server 2.x のデータと、ics2migrate を使ってこれらのデータを Calendar Server 6.0 へ移行する方法を説明します。

表 3-1 Calendar Server 2.x のデータの移行

Calendar Server 2.x のデータ

Calendar Server 6.0 の移行結果

カレンダプロパティ (calprops)  

Calendar Server calprops データベースを更新します。

イベント

Calendar Server events データベースを更新します。

予定

Calendar Server todos データベースを更新します。

アラーム

イベントと予定を書き込んで alarms データベースを更新します。

次の表に、Calendar Server 2.x LDAP 属性と、ics2migrate を使ってこれらの属性を Calendar Server 6.0 へ移行する方法を説明します。

表 3-2 LDAP 属性の移行 

Calendar Server 2.x LDAP の属性

Calendar Server 6.0 の LDAP 属性

nswcalUser *

icsCalendarUser *

nswcalCalID

icsCalendar

nswcalExtendedUserPrefs  

icsExtendedUserPrefs

ceCalList **

icsSubscribed

ceAgendaList **

icsSet

ceDefaultAgenda **

icsDefaultSet

ceDefaultTZID **

icsTimeZone

ceFirstDayWeek **

icsFirstDay

* オブジェクトクラス

** 元は nswcalExtendedUserPrefs の一部

移行プロセス

ics2migrate の手順は次のとおりです。

 


警告

ics2migrate のインストール前に、csbackup、Sun StorEdge Enterprise BackupTM ソフトウェア、Legato Networker などのユーティリティを使用して、カレンダデータベースをバックアップしてください。

db_upgrade は、カレントディレクトリ内でデータベースをアップグレードすることから、カレンダデータベースのバックアップは、とても重要です。アップグレードの実行中に問題が発生した場合、処理中のデータベースが、修復不可能な状況に陥ってしまう可能性があるからです。


 

2.x カレンダデータベースのアップグレード

Calendar Server 6.0 では Sleepycat Software の Berkeley DB バージョン 3.2.9 が必要です。カレンダデータベースをバージョン 3.2.9 にアップグレードするために、ics2migrate の実行前に Berkeley DB db_recover および db_upgrade ユーティリティを使用する必要があります。Calendar Server 6.0 では、次のディレクトリに Berkeley DB ユーティリティがあります。

cal_svr_base/opt/SUNWics5/cal/tools/unsupported/bin

Berkeley DB ユーティリティの詳細については、次の Web サイトを参照してください。

http://www.sleepycat.com/docs/utility/index.html

 

データベースをバージョン 3.2.9 にアップグレードするには :

  1. Solaris またはその他の UNIX システムの場合は、Calendar Server を実行するユーザー名 (例: icsuser) とグループ名 (例: icsgroup) を指定してログインします。
  2. 必要に応じて 2.x Calendar Server を停止します。
  3. カレンダ 2.x データベースをバックアップしていない場合は、バックアップします。
  4. 次の場所に古い共有ファイル (__db_name.share) またはログファイル (log.*) があれば、削除します。
  5. cal_svr_base/opt/SUNWics5/cal/lib/http

    cal_svr_base/var/opt/SUNWics5/csdb

  6. db_upgrade ユーティリティを実行して、2.x カレンダデータベースをバージョン 3.2.9 にアップグレードします。カレントディレクトリが 2.x カレンダデータベースと同じディレクトリでない場合は、-h オプションを使用して、データベースファイルの場所を示します。
  7. db_upgrade はすべての 2.x データベースファイル (alarms.db、calprops.db、events.db、および todos.db) で実行する必要があります。また、db_upgrade は、Calendar Server を構成するフロントエンド、バックエンドのすべてのサーバー上で実行してください。サーバーがカレンダデータベースに直接接続されていない場合も、この処理を省略することはできません。

  8. データベースファイルのある csdb ディレクトリで Calendar Server 2.x の caldb.conf ファイルを探し、ファイルの先頭の行を次のように書き換えます。
  9. 元の値: caldb.version "1.0.0 [BerkeleyDB]"

    新しい値: caldb.version= "1.0.0 [BerkeleyDB]"

    注 : このファイルが csdb ディレクトリにない場合は、テキストエディタでファイルを作成し、先頭の行に新しい値を設定してください。

データの移行

次の手順で ics2migrate を実行します。

  1. ics2migrate の存在するディレクトリに移動します。
  2. ics2migrate の構文の構文を使用して ics2migrate を実行します。
  3. 移行後、ics.conf ファイルの caldb.berkeleydb.homedir.path パラメータが移行したデータベースを示していることを確認します。
  4. csdb check コマンドを実行します。また必要に応じて csdb rebuild コマンドを実行して、カレンダデータベースを再構築します。
ics2migrate の構文
Calendar Server 2.x のデータベースと LDAP ユーザー基本設定の両方を移行する場合

ics2migrate [-q] [-s def|none] [-f def|none] [-l min|max] source target

Calendar Server 2.x データベースだけを移行する場合

ics2migrate [-q] [-m db] [-s def|none] [-f def|none] [-l min|max] source target

LDAP ユーザー基本設定だけを移行する場合

ics2migrate [-q] [-m ldap]


構文を表示するには、オプションを付けないで ics2migrate と入力します。


 

表 3-3 は、ics2migrate オプションとその説明の一覧です。

表 3-3 ics2migrate オプション 

ics2migrate オプション

説明

[-q]

非出力モードで実行します。移行が成功した場合、ics2migrate はコンソールに情報を表示しません。移行が失敗した場合、ics2migrate はエラーだけを表示します。

デフォルトは、冗長モードです。

[-m db|ldap]

db カレンダデータベースだけを移行します。

ldap LDAP ユーザー基本設定だけを移行します。

デフォルトでは、カレンダデータベースと LDAP ユーザー基本設定の両方が移行されます。

[-s def|none]

def ユーザーのデフォルトカレンダに対してだけスケジュール設定アクセス権を付与します。

none すべてのユーザーカレンダに対し、スケジュール設定アクセス権を付与しません。

デフォルトでは、全カレンダに対するスケジュール設定アクセス権が付与されます。

[-f def|none]

def ユーザーのデフォルトカレンダに対してだけ空き時間/予定あり設定アクセス権を付与します。

none すべてのユーザーカレンダの空き時間/予定あり設定アクセス権を拒否します。

デフォルトでは、全カレンダに対する空き時間/予定あり設定アクセス権が付与されます。

[-l min|max]

min データ移行に関する最小限の統計情報を記録します。最小限の統計情報とは、各カレンダのカレンダ ID、一次所有者、イベントおよび予定の数です。

max データ移行に関する最大限の統計情報を記録します。最大限の統計情報とは、最小限の統計情報に、各イベントと予定の出席者数、各イベントと予定のアラーム数が加わったものです。

ics2migrate は、cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリにある ics2migrate.log に統計情報を記録します。

デフォルトの場合、ics2migrate は移行統計情報をコンソール上に表示し、ログファイルは生成しません。

source

Calendar Server 2.x データベースファイルが格納されているディレクトリ。

-m db オプションが指定されている場合、または -m オプションが省略されている場合には、source が必要です。

target

Calendar Server 6.0 データベースファイルが格納されているディレクトリ。

-m db オプションが指定されている場合、または -m オプションが省略されている場合には、target が必要です。

移行結果のチェック

移行処理が終了したら、その結果をチェックします。

移行例

カレンダデータベースと LDAP ユーザー情報の両方の移行

LDAP ユーザー情報と Calendar Server 2.x データベースの両方を移行します。Calendar Server 2.x のデータベースは /var/opt/SUNWicsrv/2x_db ディレクトリに、6.0 のデータベースは /var/opt/SUNWics5/50_db ディレクトリに格納されます。

すべてのカレンダに対する空き時間および予定あり設定アクセス権のスケジュール設定を付与し、ics2migrate.log というログファイルに最小限の統計情報を記録します。

ics2migrate /var/opt/SUNWicsrv/2x_db /var/opt/SUNWics5/50_db -l min

非出力モードでの移行

上記の例と同じ移行を非出力モードで行います。ics2migrate は、移行統計情報をコンソール上に表示することもログファイルを生成することも行いません。

ics2migrate -q /var/opt/SUNWicsrv/2x_db /var/opt/SUNWics5/50_db

カレンダデータベースだけの移行

2x_db ディレクトリ (カレントディレクトリに対して相対的) に格納されている 2.x カレンダデータベースだけを移行し、/var/opt/SUNWics5/50_db ディレクトリに 6.0 データベースを作成します。

ics2migrate -m db 2x_db /var/opt/SUNWics5/50_db

LDAP ユーザー情報だけの移行

Calendar Server 2.x LDAP ユーザー情報だけをバージョン 6.0 の形式に移行します。

ics2migrate -m ldap

カレンダデータベースと LDAP ユーザー情報の両方の移行

LDAP 情報とカレンダデータベース情報の両方を指定ディレクトリに移行します。各ユーザーのデフォルトカレンダに対してだけスケジュール設定アクセス権を付与し、サーバー上の全カレンダに対する空き時間/予定あり設定アクセス権を付与せず、統計情報をログファイルに生成することもありません。

ics2migrate -s def -f none 2x_db 50_db


ncs4migrate ユーティリティ

この節では、ncs4migrate 移行ユーティリティを使用して Netscape Calendar Server 4.x カレンダデータを Sun ONE Calendar Server へ移行する方法について説明します。

Netscape Calendar Server 4.x カレンダは、開発元が Corporate Software & Technologies Int. Inc. であることから、CS&T カレンダとも呼ばれています。

ncs4migrate ユーティリティのコピーが必要な場合は、Sun テクニカルサポート担当者またはお客様窓口まで連絡してください。ncs4migrate を取得したら、それを cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリにコピーします。

この節では、次の項目について説明します。

移行要件

移行するには、次のハードウェアとソフトウェアが必要です。

ソースマシンとターゲットマシンは、別々のサーバーであっても同一のサーバーであってもかまいません。サポート対象のプラットフォームについては、『Sun ONE Calendar Server リリースノート』を参照してください。

移行対象

次の表で、ncs4migrate が Netscape Calendar Server データを Calendar Server 6.0 に移行する方法を示します。

表 3-4 Netscape Calendar Server 4.0 データの移行 

Netscape Calendar Server 4.0 のデータ項目

Calendar Server 5.0 の移行結果

会議、イベント、およびリソースとユーザーに関するメモ

イベントとして移行

仕事

todo (タスク) として移行

アクセス (セキュリティ) 権限

移行期間中は無視。指名および指名権は移行されません。

ユーザーカレンダとリソースカレンダの場合、ncs4migrate は、次のように ics.conf ファイル内のアクセス制御文字列を使用します。

ユーザーカレンダの場合、ncs4migratecalstore.calendar.default.acl を使用して Calendar Server 5.0 におけるプライバシー設定を次のとおりに設定します。

  • Calendar の所有者: 空き時間の確認、スケジュール、読み込み、削除、変更
  • その他のすべてのユーザー: 空き時間の確認およびスケジュール

リソースカレンダの場合、ncs4migrateresource.default.acl を使用して Calendar Server 5.0 におけるプライバシー設定を次のとおりに設定します。

  • リソースの所有者: 空き時間の確認、スケジュール、読み込み、削除、変更
  • その他のすべてのユーザー : 空き時間の確認、スケジュール、読み込み

プライバシー設定とその変更方法については、Calendar Express のオンラインヘルプを参照してください。

注 : 移行を開始する前に、ics.conf ファイルに定義されている文字列が次のとおりであることを確認してください。

calstore.calendar.default.acl の正しい文字列は、次のとおりです。

@@o^a^r^g;@@o^c^wdeic^g;@^a^sf^g;@^c^^g

resource.default.acl の正しい文字列は、次のとおりです。

@@o^a^r^g;@@o^c^wdeic^g;@^a^rsf^g;@^c^^g

ファイルアタッチメント

移行処理中は無視されます。警告メッセージがログファイルに出力されます。

グループ

移行されない

移行手順

Calendar Server 5.0 データベースのバックアップ

移行処理をはじめる前に、以下の手順を行ってカレンダデータベースの整合性を確保することをお勧めします。

  1. csbackup、Sun StorEdge Enterprise BackupTM、Legato Networker などのユーティリティを使って、カレンダデータベースのバックアップを作成します。
  2. 詳細については、『Sun ONE Calendar Server 管理者ガイド』を参照してください。

  3. カレンダデータベースに対して csdb ユーティリティの check コマンドを実行し、データベースが壊れていないかどうかをチェックします。check コマンドによって破損箇所が検出された場合は、csdb ユーティリティの rebuild コマンドを実行してデータベースを再構築します。
  4. csdb および csbackup ユーティリティについては、『Sun ONE Calendar Server 管理者ガイド』を参照してください。

移行準備

ncs4migrate ユーティリティを実行する前に、ターゲットマシン上で以下の手順を実行します。

  1. スーパーユーザー (root) としてログインするか、システムに対する管理権限を持つユーザーとしてログインします。
  2. cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリに移動します。
  3. ncs4dirpaths.dat というテキストファイルを作成し、Netscape Calendar Server 4.0 データベースを指す完全修飾ディレクトリパスを指定します。たとえば、次のように入力します。
  4. /apps/ncs/calendar/unison/db/nodes/N0/perm

    Netscape Calendar Server 4.0 データベースが入っているディレクトリを検出するには、unison.dbd ファイルを検索します。

    必要に応じ、ncs4migrate がノードにアクセスするために必要な条件を満たしてノードにアクセスし、Netscape Calendar Server 4.0 データベースが入っているディレクトリを読み込みます。


    $CAL_HOME などの変数はパス名の中で使用しないでください。変数は、移行処理時に解決されません。


    複数のノード上のデータのための ncs4dirpaths.dat ファイルを作成する方法については、「複数のノードからのデータの移行」を参照してください。

  5. 選択したユーザーだけを移行する場合には、同じ cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリ内に ncs4userfilter.dat というユーザーフィルタファイルを作成します。ncs4userfilter.dat は、移行対象のユーザーを指定するテキストファイルです。次のいずれかの形式で、1 行につき 1 名のユーザーを指定します。
    • Netscape Calendar Server カレンダシステムの node-number:user id (nscalxitemid 属性)
    • ユーザーの UID 属性
    • 次は、ncs4userfilter.dat ファイルのエントリの例です。

      caluser1
      caluser2
      10000:00256
      10000:00257

      1 つの ncs4userfilter.dat ファイルの中で両方の形式を使用できます。

  6. LDAP サーバーが稼動していることを確認してください。
  7. 移行処理中にカレンダデータベースが更新されないようにするため、iPlanet Calendar Server を停止してください。ただし、Netscape Calendar Server は、稼動中でも停止中でもかまいません。

以上で、Netscape Calendar Server 4.0 データの移行準備が完了しました。

データの移行

ターゲットマシン上で、次の手順を行います。

  1. スーパーユーザー (root) として、またはシステムに対する管理権限を持つユーザーとしてログインし、必要に応じて cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリに移動します。
  2. コマンド行に ncs4migrate と入力します。
  3. ncs4migrate ユーティリティにより、表 3-5 に示されたオプションとともに「ようこそ」メニューが表示されます。

    : ncs4migrate は、(E)xport および (I)mport オプションを表示しますが、これらのオプションはサポートされていないので使用しないでください。

    表 3-5 ncs4migrate ユーティリティオプション 

    ncs4migrate オプション

    説明

    (E)xport

    Netscape Calendar Server 4.0 を中間ファイルにエクスポートします。

    (I)mport

    中間ファイルからカレンダデータベースにデータをインポートします。

    (S)kip

    中間ファイルをスキップします。Netscape Calendar Server 4.0 から Calendar Server 5.0 に 一度に 1 レコードずつ移行します。

    (L)ogging = ON|OFF

    ログの設定を行います。ログファイル名は、ncs4migrate_yyyymmdd-hhmmss.log です。
    デフォルトは ON です。

    (V)erbose = ON|OFF

    冗長ログを設定します。デフォルトは OFF です。

    ディスク容量を節約するため、OFF のままにしておくことをお勧めします。

    (D)ebug = ON|OFF

    デバッグログを設定します。デフォルトは OFF です。

    (Q)uiet = ON|OFF

    画面出力の設定を行います。デフォルトは OFF です。

    (T)erminate = TRUE|FALSE  

    LDAP データベースに含まれていないユーザーが Netscape Calendar Server 4.0 データベース内に存在する場合には終了します。デフォルトは FALSE です。

    (O)nly = TRUE|FALSE

    ユーザーフィルタファイル ncs4userfilter.dat で指定されているユーザーだけを移行します。デフォルトは FALSE です。

    O と M が TRUE である場合、ncs4migrate は所有者と出席者のどちらかとしてフィルタファイル中に参加者があるイベントを移行します。イベントは、そのすべての出席者のカレンダに移行されます。

    (M)igrate = TRUE|FALSE

    ユーザーフィルタファイルに指定されているユーザーを移行します。デフォルトは FALSE です。

    (B)ypass = TRUE|FALSE

    ユーザーフィルタファイルに指定されているユーザーの移行をバイパスします。デフォルトは FALSE です。

    (A)ny = TRUE|FALSE

    どんな組み合わせの Netscape Calendar Server セキュリティアクセスレベルによっても、Calendar Server におけるアクセス権が許可されます。デフォルトは TRUE です。FALSE の場合、3 つのアクセスレベルがすべて存在している必要があります。(H)elp を参照してください。

    (U)ser

    ユーザーフィルタファイル ncs4userfilter.dat を表示します。
    フィルタリングのON|OFF を切り替えるには、O オプションを使用します。デフォルトは OFF です。

    (P)ath

    Netscape Calendar Server 4.0 データベースのパスファイル。ファイル名は、ncs4dirpaths.dat です。

    (H)elp

    ヘルプ画面を表示します。

    (E)xit

    プログラムを終了します。

  4. ncs4migrate メニューで S オプションを指定すると、全ユーザーが移行されます。ユーザーフィルタファイル (ncs4userfilter.dat) に指定されているユーザーだけを移行する場合には、O オプションを指定します。
  5. 移行ログファイルを監視して移行ステータスをチェックします。詳細については、「移行ログファイルのチェック」を参照してください。
  6. 移行処理が終了したら、移行したカレンダデータベースを「移行データのチェック」のとおりにチェックします。
複数のノードからのデータの移行

Netscape Calendar Server 4.0 のデータを複数のノードから移行するには、ターゲットマシン上で次の手順を行います。

  1. スーパーユーザー (root) として、またはシステムに対する管理権限を持つユーザーとしてログインし、各ノードの Netscape Calendar Server 4.0 データベースディレクトリを ncs4migrate の実行場所であるマシンにコピーします。Netscape Calendar Server 4.0 の各ディレクトリには unison.dbd ファイルが入っています。
  2. Netscape Calendar Server 4.0 データを各ノードから直接移行することも可能ですが、そのためには、他のノード上の Netscape Calendar Server 4.0 データに ncs4migrate がアクセスするための要件を、まず最初に満たす必要があります。

  3. cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリに移動します。
  4. 全ノードからのデータについて、ディレクトリパス名を ncs4dirpaths.dat ファイルに指定します。たとえば、次の ncs4dirpaths.dat ファイルには、3 つのノードのディレクトリパスが入っています。
  5. /apps/ncs/calendar/unison/db/nodes/N0/perm
    /apps/ncs/calendar/unison/db/nodes/N1/perm
    /apps/ncs/calendar/unison/db/nodes/N2/perm

  6. 移行ユーティリティを実行するには、コマンド行に ncs4migrate と入力します。
  7. ncs4migrate メニューで S オプションを指定すると、全ユーザーが移行されます。ユーザーフィルタファイル (ncs4userfilter.dat) に指定されているユーザーだけを移行する場合には、O オプションを指定します。
  8. 移行ログファイルを監視して移行ステータスをチェックします。詳細については、「移行ログファイルのチェック」を参照してください。
  9. 移行処理が終了したら、移行したカレンダデータベースを「移行データのチェック」のとおりにチェックします。
移行ログファイルのチェック

ncs4migrate ユーティリティは、cal_svr_base/opt/SUNWics5/cal/sbin ディレクトリにある次の名前を使用してログファイルを生成します。

ncs4migrate_yyyymmdd-hhmmss.log

yyyymmdd-hhmmss は、移行開始時刻を示すタイムスタンプです。

ncs4migrate ユーティリティの実行に時間がかかる場合は、ログファイルのサイズを確認してください。ファイルのサイズが増え続けていれば、ユーティリティはまだ実行中です。


ログファイルが大きくなりすぎないようにするには、ncs4migrate の verbose (V) オプションを使用してください。


移行データのチェック

移行処理が終了したら、ターゲットマシン上で次の手順を行います。

  1. csdb ユーティリティの check コマンドをカレンダデータベースに対して実行し、データベースが壊れていないかをチェックします。check コマンドによって破損箇所が検出された場合は、csdb ユーティリティの rebuild コマンドを実行してデータベースを再構築します。
  2. csdb ユーティリティの check コマンドと rebuild コマンドの詳細については、マニュアル Web サイトの『Sun ONE Calendar Server 管理者ガイド』を参照してください。

  3. 必要であれば、Calendar Server を再起動します。
  4. Calendar Express を使用すれば、移行したカレンダデータベースにアクセスできます。


csrename ユーティリティ

csrename ユーティリティは、カレンダユーザーの名前を次のように変更します。

csrename ユーティリティは、次のディレクトリに格納されています。

cal_svr_base/opt/SUNWics5/cal/sbin

csrename を実行する前に、次の操作を行います。

csrename を実行するには、icsuser (または設定中に指定した Calendar Server 実行時ユーザー ID) としてログインする必要があります。csrename をスーパーユーザー (root) として実行する場合は、新しいデータベースファイルのアクセス権を設定し直さなければならないことがあります。LDAP ディレクトリサーバー属性を変更するには、そのディレクトリに対して管理権限が必要です。

フロントエンド / バックエンドサーバー設定がある場合は、各バックエンドサーバーで csrename を実行する必要があります。

csrename の構文

csrename を実行するには次の構文を使用します。

csrename [-t DestinationDB ] [-c ConfigFile ] [-e ErrorFile ] -m MappingFile rename [DB|LDAP]

-t DestinationDB は、変換されたユーザー名で新しいデータベースが生成される生成先ディレクトリを指定します。デフォルトは、MigratedDB です。

csrename の実行後、ics.conf ファイルの caldb.berkeleydb.homedir.path パラメータが生成先データベースを示している必要があります。caldb.berkeleydb.homedir.path が生成先データベースディレクトリを指すように設定し直すか、パラメータが示すディレクトリに生成先データベースファイルを移動してください。

-c ConfigFile は Calendar Server の設定ファイルを指定する入力パラメータです。デフォルトは、ics.conf ファイルです。

csrename では設定ファイルの caldb.berkeleydb.homedir.path パラメータを使用して、入力カレンダデータベースの場所を特定します。カレンダデータベースのデフォルトの場所は cal_svr_base/var/opt/SUNWics5/csdb です。

-e ErrorFile は、csrename が解決できないすべてのエラーまたはデータベースエントリを書き込むファイルです。デフォルトは、MigrateError です。

-m MappingFile は入力マッピングファイルを指定します。デフォルトは、MigrateMapping です。

入力マッピングファイルは、既存のユーザー ID を新しいユーザー ID にマップするテキストファイルです。

csrename の実行前にマッピングファイルを作成する必要があります。新旧の値の間に空白文字を入れ、1 行に 1 エントリずつ指定してください。たとえば、次のように入力します。

tchang tc897675
jsmith js963123
...
bkamdar bk548769

DB|LDAP は更新されるデータベースを指定します。

csrename の例



前へ      目次      索引      次へ     


Copyright 2003 Sun Microsystems, Inc. All rights reserved.