前へ    目次    索引    次へ
iPlanet Messaging Server 5.1 管理者ガイド

第 10 章 メッセージストアを管理する


この章では、メッセージストアおよびメッセージストア管理のインターフェースについて説明します。この章には、以下の節があります。


概要

メッセージストアには、特定の Messaging Server インスタンスに対するユーザメールボックスがあり、そのサイズは、メールボックス、フォルダ、およびログファイルの数が増えるに従って大きくなります。メッセージストアのサイズを制御するには、各メールボックスのサイズ (ディスク容量) を制限する、各メールボックスに保存できるメッセージの合計数を制限する、ストア内におけるメッセージの存続期間を設定するなどの方法があります。

システムを使用するユーザの数が増えるにつれ、必要なディスク容量も増加します。サーバがサポートするユーザ数によっては、複数の物理ディスクが必要な場合もあります。また、ユーザベースが非常に大きい場合は、それぞれ異なるメッセージストアを持つ複数の Messaging Server インスタンスが存在している場合もあります。同様に、複数のホストドメインがある場合は、1 つのサーバインスタンスを 1 つの大きなドメイン専用に設定する必要が生じることもあります。このような設定では、ドメインごとにストア管理者を割り当てることができます。

iPlanet Messaging Server には、iPlanet Console のインターフェースのほかに、メッセージストア管理用の一連のコマンドラインユーティリティが備わっています。表 10-1 は、これらのコマンドラインユーティリティの説明です。ユーティリティの使い方については、「メンテナンスと復元のプロシージャを実行する」および『Messaging Server リファレンスマニュアル』を参照してください。


表 10-1 メッセージストアに関するコマンドラインユーティリティ


ユーティリティ

説明

configutil

ストアの設定パラメータを指定および変更します。

hashdir

特定のユーザのメッセージストアを含むディレクトリを検出します。

mboxutil

メールボックスの表示、作成、削除、名前の変更、移動、およびディスク容量使用状況の報告を行います。

MoveUser

ユーザアカウントをメッセージングサーバ間で移動します。

readership

共有 IMAP フォルダの読者に関する情報を収集します。

reconstruct

損傷があるか、または壊れたメールボックスを再構築します。

stored

バックグラウンドタスクおよび日常的なタスクを実行し、ディスクから保存されているメッセージを消去します。

imsbackup

ディスクに保存されているメッセージのバックアップを作成します。

imsrestore

バックアップされたメッセージをリストアします。


メッセージストアディレクトリのレイアウト



図 10-1 は、1 つのサーバインスタンスにおけるメッセージストアディレクトリのレイアウトを示しています。メッセージストアは、メールボックスの内容に迅速にアクセスできるように設計されています。各ディレクトリの詳細については、表 10-2 を参照してください。

図 10-1 メッセージストアディレクトリのレイアウト


ディレクトリパスは、たとえば以下のようになります。

サーバ-ルート/msg-インスタンス/store/partition/primary/=user/53/53/=mack1


表 10-2 メッセージストアディレクトリの説明


場所

内容/説明

サーバ-ルート/msg-インスタンス/
store/

メッセージストアの最上位ディレクトリ。このディレクトリの中には mboxlistuser、および partition サブディレクトリがあります。

.../store/mboxlist/

サーバ上のメールボックスおよびその制限容量に関する情報を保存するデータベース (Berkley DB) があります。

folder.db ファイルには、メールボックスが保存されているパーティションの名前、ACL、および store.idx ファイルの部分的な情報のコピーが含まれています。folder.db には、各メールボックスにつき 1 つずつエントリが作成されます。

quota.db ファイルには、ディスクの制限容量および使用状況に関する情報が含まれています。quota.db2 ファイルには、各ユーザにつき 1 つずつエントリが作成されます。

peruser.db には、ユーザごとのフラグに関する情報が含まれています。これらのフラグは、各ユーザがメッセージを開封または削除したことを示します。

subscr.db には、ユーザ購読に関する情報が含まれています。

.../store/user/

各ユーザが購読する IMAP フォルダに関する情報が含まれています。各ユーザに関する情報は、ユーザid.sub ファイルに保存されます。これらのファイルは迅速に検索できるようハッシュ構造になっています。特定のユーザのファイルが含まれているディレクトリを探すには、hashdir ユーティリティを使用します。

.../store/partition/

デフォルトの primary パーティションがあります。このディレクトリには、管理者が定義したサブパーティションを追加することもできます。

/サブパーティション/=user/

パーティションのサブディレクトリに含まれるすべてのユーザメールボックスが含まれています。メールボックスは迅速に検索できるようにハッシュ構造で保存されています。ある特定のユーザのメールボックスが含まれているディレクトリを探すには、hashdir ユーティリティを使います。

/=user/ハッシュディレクトリ/ハッシュディレクトリ/ユーザid/

ユーザid が示すユーザの最上位メールフォルダ。デフォルトドメインの場合、ユーザid 部分はユーザid のみとなり、ホストドメインの場合、ユーザid 部分は ユーザid@ドメインとなります。メッセージはこのメールフォルダに配信されます。

/ユーザid/フォルダ

ユーザ定義のフォルダです。

/ユーザid/store.idx

/ユーザid/ ディレクトリに保存されているメッセージに関する情報を提供するインデックスです。このファイルには、メッセージ数、メールボックスに対して設定されているディスク容量の制限、メールボックスがメッセージを受け取った最終時刻、メッセージフラグ、ヘッダや MIME 構造を含む可変長の情報、各メッセージのサイズなどの情報が含まれています。また、各ユーザの mboxlist 情報のバックアップコピーやディスク制限容量情報のバックアップコピーも含まれています。

/ユーザid/store.usr

フォルダにアクセスしたユーザのリストがあります。リストされている各ユーザについて、フォルダへの最終アクセス時間、開封したメッセージのリスト、およびユーザが削除したメッセージのリストなどが含まれています。

/ユーザid/store.exp

図 10-2 には示されていません。消去されたがディスクには残っているメッセージファイルのリストがあります。このファイルは、消去されたメッセージがある場合にのみ表示されます。

/ユーザid/store.sub

図 10-2 には示されていません。ユーザ購読に関する情報が含まれています。

/ユーザid/nn/

メッセージid.msg のフォーマットでメッセージを保存するハッシュディレクトリ。nn00 から 99 までのいずれかの数字を示します。

たとえば、1 から 99 までのメッセージは 00 ディレクトリに保存され、100 から 199 までのメッセージは 01 ディレクトリに、9990 から 9999 までのメッセージは 99 ディレクトリに、10000 から 10099 までのメッセージは 00 ディレクトリに、それぞれ保存されます。


ストアのメッセージクリーンアップ方法



ストアでは、以下の 3 つの段階を経てメッセージのクリーンアップが行われます。

  1. 削除 : 削除するメッセージにクライアントがマークを付けます。この時点でクライアントは、このマークを外すことによってメッセージをリストアできます。

  2. 消去 : マークが付いているメッセージをクライアント (または指定した存続期間決定ポリシー) がメールボックスから消去します。いったん消去されたメッセージをクライアントがリストアすることはできませんが、この時点ではまだメッセージはディスクに残っています (同じメールボックスに接続している別のクライアントがメッセージを入手することは可能です)。

  3. クリーンアップ : stored ユーティリティによって、消去後 1 時間以上経ったメッセージがディスクからすべてクリーンアップされます。


ストアへの管理者アクセスを指定する

メッセージストア管理者は、ユーザのメールボックスを表示またはモニタしたり、メッセージストアへのアクセスを制御することができます。ストア管理者はすべてのサービス (POP、IMAP、HTTP、SMTP) へのプロキシ認証特権を持つため、あらゆるユーザ特権を使って任意のサービスに対する認証を受けることができます。これらの特権により、ストア管理者はストア管理ユーティリティを実行できます。たとえば、MoveUser を使用して、ユーザのアカウントやメールボックスをシステム間で移動できます。

この節では、Messaging Server のメッセージストアへのアクセス特権を制御する方法について説明します。


他のユーザがストアにアクセスする管理者特権を持っている場合もあります。たとえば、サイトが Delegated Administration (DA) 製品を使用している場合、最上位の DA 管理者はデフォルト設定によってメールシステム内にあるすべてのメッセージングサーバのストアにアクセスする特権が与えられています。また、DA ドメイン管理者は、デフォルト設定によってそのドメインのストアにアクセスする特権が与えらています。DA 管理者の詳細については、『Messaging Server Provisioning Guide』および DA 関連のマニュアルを参照してください。



管理者は以下のタスクを実行できます。

管理者によるストアへのアクセスを制御するには、configutil コマンドまたはコンソールを使用します。

コンソールを使用する場合は以下の手順に従います。

  1. コンソールで、設定する Messaging Server を開きます。

  2. [環境設定] タブをクリックし、左ペインで [メッセージの保存] を選択します。

  3. 右ペインで [管理者] タブをクリックします。


管理者を追加する

コンソール- コンソールを使用して管理者エントリを追加するには、以下の手順に従います。

  1. [管理者] タブをクリックします。

    このタブには既存の管理者 ID のリストが表示されます。

  2. [管理者 UID]ウィンドウの横にある [追加] ボタンをクリックします。

  3. [管理者 UID] フィールドに、追加する管理者のユーザ ID を入力します。

    iPlanet Directory Server が認識できるユーザ ID を使用してください。

  4. [OK] をクリックして [管理者] タブに表示されるリストに管理者 ID を追加します。

  5. [管理者] タブの [保存] をクリックして、変更した管理者リストを保存します

コマンドライン- コマンドラインユーティリティを使用して管理者エントリを追加するには、以下の手順に従います。

configutil -o store.admins -v "adminlist"

adminlist はカンマ区切りの管理者 ID リストです。複数の管理者を指定する場合は、リストを引用符で囲む必要があります。


管理者エントリを変更する

コンソール- コンソールを使用して既存のメッセージストア管理者 UID リストを変更するには、以下の手順に従います。

  1. [管理者] タブをクリックします。

  2. [管理者 UID]ウィンドウの横にある [編集] ボタンをクリックします。

  3. [管理者 UID] フィールドの内容を必要に応じて変更します。

  4. [OK] をクリックして変更内容を有効にし、[管理者の編集]ウィンドウを閉じます。

  5. [管理者] タブの [保存] をクリックして、変更したリストを保存します。

コマンドライン- コマンドラインユーティリティを使用して既存のメッセージストア管理者 UID リストのエントリを変更するには、以下の手順に従います。

configutil -o store.admins -v "adminlist"


管理者エントリを削除する

コンソール- コンソールを使用してメッセージストア管理者 UID リストからエントリを削除するには、以下の手順に従います。

  1. [管理者] タブをクリックします。

  2. [管理者 UID] リストで、削除するエントリを選択します。

  3. [削除] をクリックして選択したエントリを削除します。

  4. [保存] をクリックして変更した管理者リストを保存します。

コマンドライン- コマンドラインユーティリティを使用してメッセージストア管理者を削除するには、以下の手順に従います。

configutil -o store.admins -v "adminlist"


メッセージストア制限容量の概要



この節では、以下の内容について説明します。


ユーザに対する容量の制限

メッセージストアのサイズを制限するには、各ユーザメールボックスのサイズを制限します。そのためには、以下のような方法があります。

制限容量に関する情報は、LDAP 属性および設定変数として保存されます。制限が有効になっている場合、Messaging Server はメッセージをストアに追加する前に、制限容量を超えていないことを確認するために、制限容量キャッシュおよび設定ファイルをチェックします。また、制限に関する通知が有効になっている場合は、ユーザのディスク使用容量が制限に達すると、そのユーザにエラーメッセージが送られます。使用容量が制限容量に近づきつつあるユーザに対して警告メッセージを送るようにサーバを設定することも可能です。

特定の制限容量をデフォルトとして全ユーザに対して設定するか、またはユーザごとに制限を設定することができます。Messaging Server は、使用容量が制限容量を超過しているかどうかを判断する際、まず該当するユーザに対して制限が設定されているかどうかをチェックし、設定されていない場合は、全ユーザに対して設定されているデフォルトの制限容量をチェックします。

ユーザメッセージの合計サイズまたは合計数が制限容量を超過している場合、そのユーザ宛てのメッセージは、次のいずれかの状況になるまでメッセージキュー内に維持されます。(1) ユーザのメッセージの合計サイズまたは合計数が制限以下になった場合、サーバはユーザにメッセージを配信します。(2) 未配信のメッセージが指定猶予期間以上キュー内に維持されており、かつユーザのメールボックスが依然として制限容量を超過している場合、メッセージはサーバによって返送されます。


制限容量に達していないアカウントに対して配信する場合は、メッセージサイズのチェックは行われません。あるメッセージが配信されたことによってアカウントが制限以上の容量に達しても、ユーザはそのメッセージを受信できます。ただし、その次のメッセージはキュー内で待機することになります。



メッセージがユーザまたはメンテナンスポリシー (存続期間決定ポリシーなど) によって削除および消去されると、ディスク容量に余裕ができます。


ドメインとファミリグループに対する容量の制限

特定のドメインやドメイン内のファミリグループに対してディスク制限容量を設定することもできます。これらの制限は強制的なものではありませんが、ディスク使用容量を確認するのに便利です。詳細については、『Delegated Administrator User's Guide』を参照してください。


テレフォニアプリケーションサーバに関する例外

統合化されたメッセージング要件をサポートするために、Messaging Server はメッセージストアによって課された制限容量を無効にし、テレフォニアプリケーションサーバ (TAS) など、ある種のエージェントを通して送られたメッセージを配信できます。TAS が受け取ったメッセージは特別な MTA チャネルにルーティングされ、制限容量に関わらずストアに配信されます。TAS チャネルを設定する方法については、第 8 章「チャネル定義を設定する」を参照してください。


メッセージストアの制限容量を設定する



すべてのユーザに対してデフォルトの制限容量を設定するには、iPlanet Console または configutil コマンドを使用します。また、ユーザ、ファミリグループ、ドメインなどに対して個別に容量を制限することも可能です。

このマニュアルでは、制限容量のデフォルトを設定する方法について説明します。ユーザ、ファミリグループ、ドメインなどに対して個別に容量を制限する方法については、『Delegated Administrator's User Guide』を参照してください。

この節では、以下のタスクについて説明します。

iPlanet Console を使用する場合 :

  1. iPlanet Console で、設定する Messaging Server を開きます。

  2. [環境設定] タブをクリックし、左ペインの [メッセージの保存] を選択します。

  3. 右ペインの [制限容量] タブをクリックします。


ユーザに対するデフォルトの制限容量を設定する

制限容量のデフォルト設定は、個別に制限容量を設定されていないすべてのユーザに適用されます。個別に設定されている場合は、その設定がデフォルト設定に優先します。

コンソール- コンソールを使用してデフォルトの制限容量を設定するには、以下の手順に従います。

  1. [制限容量] タブをクリックします。

  2. ユーザに対するデフォルトの制限容量を設定するには、[デフォルトのユーザディスク制限容量] フィールドで以下のいずれかのオプションを選択します。

    無制限 : ユーザが使用できるディスク容量を制限しない場合は、このオプションを選択します。

    サイズ制限 : ユーザが使用できるディスク容量を特定のサイズに制限するには、このオプションを選択します。ボタンの横にあるフィールドに数値を入力し、ドロップダウンリストで [メガバイト] または [キロバイト] を選択します。

  3. メールボックスに保存できるメッセージの数を指定するには、[デフォルトのユーザメッセージ制限容量] ボックスに数値を入力します。

  4. [保存] をクリックします。

コマンドライン- ディスク容量を特定のサイズに設定するには、以下の手順に従います。

configutil -o store.defaultmailboxquota -v [ -1 | 数値 ]

-1 は無制限を示し、数値 は制限する場合のバイト数を示します。

メッセージの合計数に対してデフォルトの制限容量を設定するには、以下の手順に従います。

configutil -o store.defaultmessagequota -v [ -1 | 数値 ]

-1 は無制限を示し、数値 は制限する場合のバイト数を示します。


制限容量と通知を有効にする

制限容量と通知はそれぞれ有効または無効にできます。サーバの動作は、表 10-3 に示される設定変数に基づいて決定されます。

表 10-3 制限容量と通知


制限オン

制限オフ

通知オン

メッセージは指定の猶予期間保留され、時効になった時点で拒否されます。メールボックスには追加されません。

IMAP SELECT、IMAP APPEND、SMTP sendmail メカニズムおよび配信コマンドはエラーメッセージを表示します。

メッセージはストアに配信され、メールボックスに追加されます。

IMAP SELECT、IMAP APPEND、SMTP sendmail メカニズムおよび配信コマンドはエラーメッセージを表示しません。

通知オフ

メッセージは指定の猶予期間保留され、時効になった時点で拒否されます。メールボックスには追加されません。

IMAP SELECT コマンド、配信コマンド、および SMTP sendmail メカニズムはエラーメッセージを表示しません。

IMAP APPEND コマンドはエラーメッセージを表示します。

メッセージはストアに配信され、メールボックスに追加されます。

IMAP SELECT、IMAP APPEND、SMTP sendmail メカニズム、および配信コマンドはエラーメッセージを表示しません。


制限容量を有効にする

コンソール- コンソールを使用して制限容量を有効にするには、以下の手順に従います。

  1. [制限容量] タブをクリックします。

  2. [制限容量実施の有効化] チェックボックスをオンにします。

    このボックスはトグルとして機能します。制限を無効にするには、このチェックボックスをオフにします。

  3. [保存] をクリックします。

コマンド ライン- コマンドラインユーティリティを使用して制限容量を有効にするには、以下の手順に従います。

configutil -o store.quotaenforcement -v [ yes | no]

no と指定すると制限容量は有効になりません。


制限容量に関する通知を有効にする

コンソール- コンソールを使用して制限容量に関する通知を有効にするには、以下の手順に従います。

  1. [制限容量] タブをクリックします。

  2. [制限容量有効化の通知] チェックボックスをオンにします。

    このボックスはトグルとして機能します。通知を無効にするには、このチェックボックスをオフにします。

  3. [保存] をクリックします。

コマンドライン- コマンドラインユーティリティを使用して制限容量に関する通知を有効にするには、以下の手順に従います。

configutil -o store.quotanotification -v [ yes | no ]
configutil -o store.quotaexceededmsg -v message

上記のコマンドで message (メッセージ) が設定されないと、制限容量に関する警告 メッセージはユーザに送信されません。


制限容量に関する警告メッセージを定義する

制限容量を超過したユーザに対して送る警告メッセージは、以下の方法で定義できます。警告メッセージはユーザのメールボックスに配信されます。

コンソール- コンソールを使用して制限容量に関する警告メッセージを定義するには :

  1. [制限容量] タブをクリックします。

  2. ドロップダウンリストから使用する言語を選択します。

  3. ドロップダウンリストの下にあるメッセージテキストフィールドに、警告メッセージを入力します。

  4. [保存] をクリックします。

コマンドライン- コマンドラインユーティリティを使用して制限容量に関する警告メッセージを定義するには :

configutil -o store.quotaexceededmsg -v メッセージ

メッセージには必ず RFC 822 準拠のフォーマットを使用してください。

警告メッセージ発行の頻度を指定するには :

configutil -o store.quotaexceedmsginterval -v 数値

数値は日数を示します。たとえば、3 と指定すると、警告は 3 日ごとに送られます。


制限容量に関する警告のしきい値を指定する

制限容量のしきい値を設定することで、IMAP ユーザが制限容量に達する前に警告メッセージを送ることができます。ユーザのディスク使用容量が指定したしきい値を超過すると、サーバがユーザに警告メッセージを発行します。

クライアントが IMAP ALERT メカニズムをサポートしている場合は、IMAP ユーザがメールボックスを選択する度に画面にメッセージが表示されます (メッセージは IMAP ログにも記録されます)。

コンソール- コンソールを使用して制限容量のしきい値を指定するには :

  1. [制限容量] タブをクリックします。

  2. [制限容量の警告のしきい値] フィールドに、警告のしきい値とする数値を入力します。

    この数値は、許可されている制限容量に対するパーセント値を示します。たとえば、この値を 90 パーセントに指定すると、ユーザのディスク使用容量が制限容量の 90 パーセントに達したときに警告が発行されます。デフォルトは 90 パーセントに設定されています。この機能を無効にするには、100 パーセントに指定します。

  3. [保存] をクリックします。

コマンドライン- コマンドラインユーティリティを使用して制限容量のしきい値を指定するには :

configutil -o store.quotawarn -v 数値

数値 は、許可されている制限容量に対するパーセント値を示します。


猶予期間を設定する

ユーザメールボックスのサイズまたはメッセージ数が制限を超過すると、サーバは指定した期間 (猶予期間) そのメールボックス宛てのメッセージをキュー内に保持し、その後返送を開始します。メッセージは、以下のいずれかの状況になるまでキュー内で待機します。

コンソール- コンソールを使用してキューにメッセージを保管する猶予期間を設定するには、以下の手順に従います。

  1. [制限容量] タブをクリックします。

  2. [制限容量超過時の猶予期間] フィールドに数値を入力します。

  3. ドロップダウンリストで [] または [時間] を選択します。

  4. [保存] をクリックします。

コマンドライン- コマンドラインユーティリティを使用して猶予期間を設定するには :

configutil -o store.quotagraceperiod -v 数値

数値 は時間数を示します。


存続期間決定ポリシーを指定する



存続期間決定ポリシーは、サーバディスクの使用を制御するもう 1 つの手段です。このポリシーを設定することで、メッセージがメールボックスに保持される期間を制御できます。ディスクの総容量に限りがある場合は、存続期間決定ポリシーを設定してストアからメッセージを削除することをお勧めします。ただし、メッセージがストアから削除される際、ユーザに対する警告は発行されません。存続期間決定ポリシーを設定する場合は、ユーザに前もって通知しておく必要があります。

存続期間規則は、以下の条件に基づいて作成できます。

1 つのメールボックスに対して複数の規則を適用した場合、期間に関する規則はすべて有効と見なされますが、最も厳しい条件のものが最優先されます。たとえば、あるメールボックスに対して次の 2 つの規則が設定されているとします。1 つはメールボックスに保存できるメッセージの数を 1000 件と規定し、もう 1 つは 500 件と規定しています。この場合期間が過ぎると、サーバはメールボックスに 500 件を残し、それ以外のメッセージをすべて削除します。また、別の例として、1 つの規則は合計 10 万バイト分のメッセージを 3 日間維持すると規定し、もう 1 つの規則は合計 1000 バイト分のメッセージを 12 日間維持すると規定しています。この場合、サーバは 10 万バイト分のメッセージを 3 日間保持します。3 日間にわたってメールボックスに保持されるメッセージ以外、すなわち超過分はすべて削除されます。特定のメールボックスに特定の規則を適用するには、exclusive パラメータを使用します。

コンソール- コンソールを使用して新規規則を作成するには :

  1. iPlanet Console で、設定する Messaging Server を開きます。

  2. [環境設定] タブをクリックし、左ペインの [メッセージの保存] を選択します。

  3. 右ペインの [存続期間] タブをクリックします。

  4. [追加] をクリックして[規則の追加]ウィンドウを開きます。

  5. 作成する規則の名前を入力します。

  6. 規則を適用するターゲットフォルダを選択します。

    パス名、ファイル名、または部分的な文字列を入力できます。以下の IMAP ワイルドカードを使用することもできます。

    * - どのような組み合わせの文字にも一致します。
    % - スラッシュを除き、どのような組み合わせの文字にも一致します。

    新しい規則は、指定したパターンに一致するフォルダにのみ適用されます。

  7. 新しく作成した規則だけをターゲットフォルダに適用するには、[除外] ボックスをオンにします。

  8. フォルダサイズに基づいて規則を作成するには、以下の操作を実行します。

    • [メッセージの件数] フィールドに、フォルダが古いメッセージを削除することなく保持できるメッセージ数の上限を入力します。

    • [フォルダサイズ] フィールドにフォルダサイズを入力し、ドロップダウンリストで [キロバイト] または [メガバイト] を選択します。

    フォルダサイズが指定値を超過すると、サイズが指定値以下になるまで超過分のメッセージは古い順に削除されます。

  9. メッセージの存続期間に基づいて規則を作成するには、[日数] フィールドにフォルダがメッセージを保持する期間を数値で入力します。

  10. メッセージサイズに基づいて規則を作成するには、以下の操作を実行します。

    • [メッセージサイズの制限] フィールドにフォルダが保持できるメッセージサイズの上限を入力し、ドロップダウンリストで [キロバイト] または [メガバイト] を選択します。

    • [猶予期間] フィールドに、超過分のメッセージがフォルダ内に残る期間を数値で入力します。

    猶予期間が過ぎると、サーバは超過分のメッセージを削除します。

  11. [OK] をクリックして新しい規則を存続期間規則のリストに追加し、[追加]ウィンドウを閉じます。

  12. [保存] をクリックして、存続期間規則のリストを保存します。

コマンドライン- コマンドラインユーティリティを使って新規規則を作成する場合は、以下のコマンドを使用します。名前 は規則名を示します。

規則を適用するターゲットフォルダを指定するには :

configutil -o store.expirerule.名前.folderpattern -v パターン

たとえば、パターン部分を user/* と指定するとすべてのフォルダに規則が適用され、user/%@siroe.com/* と指定すると siroe.com ドメイン内のすべてのユーザのすべてのフォルダに、user/%/Trash と指定すると全ユーザのごみ箱フォルダにそれぞれ規則が適用されます。

ターゲットフォルダに他の規則が適用されないように設定するには :

configutil -o store.expirerule.名前.exclusive -v [ yes | no ]

古いメッセージを削除することなく、フォルダに保持できるメッセージの数の上限を指定するには :

configutil -o store.expirerule.名前.messagecount -v 数値

フォルダサイズを指定するには :

configutil -o store.expirerule.名前.foldersizebytes -v 数値

数値はバイト数を示します。

メッセージの存続期間を指定するには :

configutil -o store.expirerule.名前.messagedays -v 数値

数値は日数を示します。

メッセージサイズを指定するには :

configutil -o store.expirerule. 名前.messagesize -v 数値

数値はバイト数を示します。

超過分のメッセージをフォルダに保持する期間を指定するには :

configutil -o store.expirerule. 名前.messagesizedays -v 数値

数値は日数を示します。


メッセージストアのパーティションを設定する



特に設定を変更しない限り、すべてのユーザメールボックスは msg-インスタンス/store/partition/ ディレクトリに保存されます。partition ディレクトリは論理ディレクトリであり、1つまたは複数のサブパーティションが含まれることもあります。サブパーティションを単数または複数の物理ドライブにマッピングすることも可能です。インストール時、partition ディレクトリには primary パーティションというサブパーティションが 1 つだけ作成されます。

partition ディレクトリには、必要に応じてパーティションを追加できます。たとえば、以下に示すように、1 つのディスクにパーティションを追加してユーザを整理できます。

msg-インスタンス/store/partition/mkting/
msg-インスタンス/store/partition/eng/
msg-インスタンス/store/partition/sales/

必要なディスク容量が増加するに従い、これらのパーティションをそれぞれ異なる物理ディスクドライブにマップする必要が生じることもあります。

各ディスクにそれぞれメールボックス数を制限しておくことをお勧めします。メールボックスを複数のディスクに分散することで、配信に必要な時間を短縮できます (ただし、SMTP の承認レートが速くなるとは限りません)。各ディスクに割り当てられるメールボックスの数は、ディスクの総容量と各ユーザに与えるディスク容量によって変化します。たとえば、ユーザあたりのディスク容量を少なくすると、各ディスクに割り当てられるメールボックスの数は増加します。

メッセージストアに複数のディスクが必要な場合は、RAID (Redundant Array of Inexpensive Disks) 技術を利用して管理を簡素化できます。RAID 技術を使用すると、複数のディスクにデータが分散している場合でも、あたかも 1 つの論理ディスクを使用しているかのように全ディスクを管理できます。また、RAID 技術は、障害復旧用にメッセージストアのバックアップを作成するために利用することもできます。


より迅速なディスクアクセスを実現するためには、メッセージストアとメッセージキューをそれぞれ異なるディスクに配置する必要があります。




パーティションを追加する

パーティションを追加する際には、ディスク上のパーティション保存場所 (絶対物理パス) と論理名 (パーティションニックネーム) を指定します。

パーティションニックネームを使用すると、物理パスにかかわらず、ユーザを論理パーティション名にマップできます。パーティションニックネームは、ユーザアカウントを設定する際や、ユーザにメッセージストアを割り当てる際に使用できます。ニックネームには英数字を使用します (ただし、大文字は使用できません)。

パーティションを作成および管理するには、物理パスに指定されている場所への書き込み特権が与えられているユーザ ID を使用する必要があります。


パーティションを追加したら、サーバをいったん停止してから再起動することにより、設定情報を更新してください。



コンソール- コンソールを使用してストアにパーティションを追加するには :

  1. iPlanet Console で、設定する Messaging Server を開きます。

  2. [環境設定] タブをクリックし、左ペインの [メッセージの保存] を選択します。

  3. 右ペインの [パーティション] タブをクリックします。

  4. [追加] ボタンをクリックします。

  5. パーティションのニックネームを入力します。

    これはパーティションの論理名です。

  6. パーティションのパスを入力します。

    これはパーティションの絶対パス名です。

  7. このパーティションをデフォルトとして指定するには、[デフォルトのパーティションにする] ボックスをオンにします。

  8. [OK] をクリックしてパーティション設定エントリを有効にし、ウィンドウを閉じます。

  9. [保存] をクリックしてパーティションリストを保存します。

コマンドライン- コマンドラインユーティリティを使用してストアにパーティションを追加するには :

configutil -o store.partition.ニックネーム.path -v パス

ニックネームはパーティションの論理名を示し、パスはパーティション保存場所の絶対パス名を示します。

デフォルトプライマリ パーティションのパスを指定するには :

configutil -o store.partition.primary.path -v パス


メールボックスを別のディスクパーティションに移動する

特に設定を変更しない限り、メールボックスは primary パーティション内に作成されます。このパーティションの容量が一杯になると、メッセージを保存することができなくなります。この問題には、次のような対応策があります。

可能な限り、容量管理ソフトを使用して、システムにディスク容量を追加する方法をお勧めします。これは、ユーザへの影響を最も少なく抑えられるためです。しかし、次の手順に従って、メールボックスを別のパーティションに移動することもできます。

  1. 移行プロセス中は、ユーザがメールボックスに接続されていない状態にします。

    ユーザに通知を出して、メールボックスの移動作業を行う前にログオフし、作業期間中にログオンしないように指示します。または、ユーザがログオフした後、POP、IMAP、および HTTP のサービスを使用できないように mailAllowedServiceAccess 属性を設定します。詳細は、次の URL を参照してください。

    http://docs.iplanet.com/docs/manuals/messaging/ims50/pg/users.htm#19110

    mailAllowedServiceAccess を設定し て POP、IMAP、HTTP へのアクセスを拒否しても、ユーザがすでにメールボックスに接続している場合に、その接続が切断されることはありません。このため、メールボックスを移動する前に、すべての接続が切断されていることを確認してください。



  2. 次のコマンドを使用して、ユーザのメールボックスを移動します。

    mboxutil -r user/<userid>/INBOX user/<userid>/INBOX <oartition_name>

    userid はユーザ ID、partition_name はパーティション名を示します。

    例:

    mboxutil -r user/ofanning/INBOX user/ofanning/INBOX secondary

  3. 移動したユーザの LDAP エントリ内の mailMessageStore 属性を、新しいパーティションの名前に設定します。

    例: mailMessageStore: secondary

  4. ユーザにメッセージストアへの接続が再開されたことを通知します。必要に応じて、POP、IMAP、および HTTP サービスを使用できるように mailAllowedServiceAccess 属性を変更します。


メンテナンスと復元のプロシージャを実行する

この項では、メッセージストアのメンテナンスタスクおよび復元タスクに使用するユーティリティについて説明します。サーバからの警告などを見逃さないよう、常に postmaster メールを読むようにしてください。また、サーバのパフォーマンスを確認するために、ログファイル内の情報をモニタすることもできます。ログファイルの詳細については、第 12 章「ログ記録とログ解析」を参照してください。

この項では、以下の事項について説明します。


メールボックスを管理する

この節では、メールボックスの管理およびモニタに使用する mboxutilhashdir、および readership ユーティリティについて説明します。


mboxutil ユーティリティ

mboxutil コマンドは、メールボックスの典型的なメンテナンスタスクに使用します。これには、以下のタスクが含まれます。

また、mboxutil コマンドを使って、制限容量に関する情報を表示することもできます。詳細については、「制限容量をモニタする」を参照してください。

表 10-4 に、mboxutil コマンドのオプションを示します。構文や使用条件の詳細については、『Messaging Server リファレンスマニュアル』を参照してください。


表 10-4 mboxutil のオプション


オプション

説明

-a

ユーザに対して設定されているすべての制限容量に関する情報を表示します。

-c メールボックス

指定したメールボックスを作成します。

-d メールボックス

指定したメールボックスを削除します。

-g グループ

指定したグループに対して設定されている制限容量に関する情報を表示します。

-k mailbox コマンド

指定したメールボックスをフォルダレベルでロックし、指定したコマンドを実行し、コマンド終了後にロックを解除します。

-l

サーバ上にあるすべてのメールボックスのリストを表示します。

-p パターン

-l オプションと併用した場合、パターン に一致するメールボックス名だけを表示します。IMAP ワイルドカードを使用することも可能です。

-q ドメイン

指定したドメインに対して設定されている制限容量に関する情報を表示します。

-r 古い名前 新しい名前
[パーティション]

メールボックス名を古い名前から新しい名前に変更します。フォルダをあるパーティションから別のパーティションに移動するには、パーティションオプションを使用して移動先のパーティションを指定する必要があります。

このオプションは、ユーザの名前を変更するために使用できます。たとえば、mboxutil -r user/user1/INBOX user/user2/INBOX と指定すると、user1 のメールとメールボックスはすべて user2 に移動し、新しいメッセージが新しい INBOX に表示されるようになります (user2 が既に存在する場合は、この操作は失敗します)。

-u ユーザ

メッセージストア現在のサイズ、制限容量 (設定されている場合)、ディスク制限容量に対する使用容量の割合などのユーザ情報を表示します。

-x

-l オプションと併用すると、メールボックスのパスおよびアクセス制御に関する情報も表示できます。


メールボックス命名規則
メールボックスに名前を付ける際には、必ず user/ユーザid/メールボックスというフォーマットを使用してください。ユーザid はメールボックスの所有者であるユーザを示し、メールボックスはメールボックス名を示します。ホストドメインの場合、ユーザidユーザid@ドメインのフォーマットで指定します。

たとえば、以下のコマンドを使用すると、ユーザ ID がcrowe というユーザのために INBOX という名前のメールボックスを作成できます。INBOXcrowe 宛てのメールが配信されるデフォルトのメールボックスです。

mboxutil -c user/crowe/INBOX

重要 : INBOX というメールボックス名は、各ユーザのデフォルトメールボックス名として予約されています。INBOX は、大文字と小文字が区別されない唯一のフォルダ名です。その他のフォルダ名の場合は、すべて大文字と小文字が区別されます。



全ユーザの全メールボックスのリストを表示するには :

mboxutil -l

パスおよび ACL 情報と共に全メールボックスのリストを表示するには :

mboxutil -l -x

ユーザ daphne のデフォルトメールボックス INBOX を作成するには :

mboxutil -c user/daphne/INBOX

ユーザdelilah のメールフォルダ projx を削除するには :

mboxutil -d user/delilah/projx

ユーザ druscilla のデフォルトメールボックス INBOX およびその他のすべてのメールフォルダを削除するには :

mboxutil -d user/druscilla/INBOX

ユーザ desdemona のメールフォルダ memos の名前を memos-april に変更するには :

mboxutil -r user/desdemona/memos user/desdemona/memos-april

ユーザ dulcinea のメールフォルダ legal をロックするには :

mboxutil -k user/dulcinea/legal コマンド

コマンド はフォルダがロック中に実行されるコマンドです。

ユーザ dimitria のメールアカウントを別のパーティションに移動するには :

mboxutil -r user/dimitria/INBOX user/dimitria/INBOX パーティション

パーティションは移動先パーティションの名前です。

ユーザ dimitria のメールフォルダ personal を別のパーティションに移動するには :

mboxutil -r user/dimitria/personal user/dimitria/personal パーティション


hashdir ユーティリティ

メッセージストア内のメールボックスは、迅速な検索が行えるようにハッシュ構造で保存されています。したがって、特定のユーザのメールボックスのあるディレクトリを探すには、hashdir ユーティリティを使います。

このユーティリティは、特定のアカウントに割り当てられているメッセージストアを含むディレクトリを検出し、メッセージストアへの相対パス (例 : d1/a7/) を報告します。このパスは、ユーザ ID に基づくディレクトリレベルの 1 つ上のディレクトリレベルへの相対パスであり、パス情報は標準出力に送られます。

たとえば、ユーザ crowe のメールボックスへの相対パスを検索するには、以下のように指定します。

hashdir crowe


readership ユーティリティ

readership ユーティリティは、メールボックスの所有者以外のユーザで共有 IMAP フォルダ内のメッセージを読み込んだユーザの数を報告します。

IMAP フォルダの所有者が、他のユーザにフォルダ内のメッセージを読み込む許可を与えることがあります。所有者以外のユーザがアクセスできるフォルダは、共有フォルダと呼ばれます。管理者は readership ユーティリティを使って、所有者以外に何人のユーザが共有フォルダにアクセスしたかをチェックできます。

このユーティリティはすべてのメールボックスをスキャンし、各共有フォルダについて 1 行ずつ情報を出力します。出力行には、共有フォルダにアクセスしたユーザ数およびメールボックス名が表示され、ユーザ数とメールボックス名の間は空白文字によって区切られています。

ユーザ数は、特定の期間に共有フォルダにアクセスした識別可能な ID を持つユーザの数を示します。個人のメールボックスへのアクセスはこの数に含まれません。個人のメールボックスは、所有者以外にアクセスしたユーザがいない限り報告されません。

たとえば、過去 15 日間に共有 IMAP フォルダにアクセスしたユーザの総数を調べるには、以下のように指定します。

readership -d 15


制限容量をモニタする

mboxutil ユーティリティを使用して、ユーザのディスク使用状況および制限容量の上限をモニタできます。mboxutil ユーティリティは、設定されている制限容量の上限のリストを生成し、ユーザのディスク使用状況に関する情報を提供します。各情報は、キロバイト単位で表示されます。

ユーザに対して設定されている制限容量に関する情報をすべて表示するには、以下の手順に従います。

mboxutil -a

crowe というユーザに対して設定されている制限容量に関する情報を表示するには :

mboxutil -u crowe

siroe.com ドメインに対して設定されている制限容量に関する情報を表示するには :

mboxutil -q siroe.com


ディスク容量をモニタする

システムがディスク使用容量をモニタする頻度、および警告を発行する条件を指定できます。ディスク使用容量のモニタおよび通知発行を設定するには、configutil コマンドを使用して警告に関する属性を設定します。属性の詳細については、表 10-5 を参照してください。


表 10-5 警告に関するディスク容量属性


ディスク容量属性

デフォルト値

alarm.diskavail.msgalarmstatinterval

3600 秒

alarm.diskavail.msgalarmthreshold

10 パーセント

alarm.diskavail.msgalarmwarninginterval

24 時間

システムが 600 秒ごとにディスク使用容量をモニタするように設定するには :

configutil -o alarm.diskavail.msgalarmstatinterval -v 600

使用可能なディスク容量が 20 パーセント以下になったらサーバが警告を発行するように設定するには :

configutil -o alarm.diskavail.msgalarmthreshold -v 20

警告に関する属性を設定する方法については、『Messaging Server リファレンスマニュアル』を参照してください。


stored ユーティリティを使用する

stored ユーティリティは、サーバに対して以下のモニタタスクおよびメンテナンスタスクを実行します。

stored ユーティリティは、自動的に毎日午後 11 時にクリーンアップや有効期限関連の操作を実行します。これらの操作の頻度を高くすることも可能です。

また、stored ユーティリティは、メールボックスデータベースやログファイルのバックアップ作成にも使用できます。バックアップを作成しておくと、データベースが壊れても再構築することなく復元できます。データベースのバックアップを作成するには、configutil コマンドを使用し、以下のパラメータ値を指定します。

configutil -o local.store.snapshotinterval -v 数値

数値stored がデータベースのバックアップを作成する頻度を指定するための値であり、分単位の間隔を示します。

configutil -o local.store.snapshotpath -v パス

パスはバックアップコピーの場所を示します。

表 10-6 に、stored オプションの一覧を示します。また、その下には一般的な使用例が記されています。構文や使用条件の詳細については、『Messaging Server リファレンスマニュアル』を参照してください。


表 10-6 stored オプション


オプション

説明

-c

消去されたメッセージをディスクからクリーンアップします。1 回だけ実行して終了します。-c オプションは繰り返し実行されるものではないため、-1 オプションを指定する必要はありません。

-d

デーモンとして動作し、システムチェック、警告の有効化、デッドロックの検出、およびデータベースの修復を行います。

-1

1 回だけ実行して終了します。

-n

トライアルモードでしか実行できません。メッセージ存続期間のカウントやクリーンアップは行いません。1 回だけ実行して終了します。

-v

詳細モード出力を行います。

-v -v

さらなる詳細モード出力。

有効期限ポリシーをテストするには :

stored -n

存続期間のチェックやクリーンアップを 1 回だけ実行するには :

stored -l -v

自動クリーンアップや有効期限関連操作の時刻を変更するには (configutil ユーティリティを使用) :

configutil -o store.expirestart -v 21

たとえばメールボックスリストデータベースが壊れた場合など、stored ユーティリティを再起動する必要が生じることもあります。UNIX で stored を再起動するには、コマンドラインで以下のように指定します。

サーバ-ルート/msg-インスタンス/stop-msg store
サーバ-ルート/msg-インスタンス/start-msg store

サーバデーモンがクラッシュした場合は、すべてのデーモンを停止し、stored を含むすべてのデーモンを再起動する必要があります。


メールボックスやメールボックスデータベースを修復する

メールボックスが損傷した場合は、reconstruct ユーティリティを使って、メールボックスまたはメールボックスデータベースを再構築し、矛盾を修正できます。

reconstruct ユーティリティは、メールボックスまたはマスターメールボックスファイルを再構築し、矛盾を修正するためのユーティリティです。このユーティリティを使うと、メッセージストア内のデータ損傷がどのようなものであっても、ほぼ確実に復元できます。ただし、トランザクションの完遂や不完全なトランザクションのロールバックなど、低レベルのデータベース修復は stored -d で実行されることに注意してください。

表 10-7 に、reconstruct の各オプションを示します。構文や使用条件の詳細については、『Messaging Server リファレンスマニュアル』を参照してください。


表 10-7 reconstruct のオプション


オプション

説明

-f

整合性チェックを行わず再構築を強行します。また、このオプションは、整合性チェックを実行し、問題がなかった場合に再構築を強行する場合にも使用できます。

-m

高レベルの整合性チェックおよびメールボックスデータベースの修復を行います。スプール領域のすべてのメールボックスをチェックし、必要に応じてメールボックスデータベースのエントリを追加または削除します。エントリの追加/削除を行った場合は、データベースが再構築時にチェックポイントされるようにするには、このオプションと stored -d を併用します。

-n

整合性チェックを行いますが、問題が検知された場合でも修復は行いません。このオプションは主にデバッグ目的で使用するものですが、ストアをチェックするために使用することも可能です。

-o

孤立したアカウント、つまり 対応するエントリが LDAP にないメールボックスがメッセージングサーバホストに存在するかどうかをチェックします。たとえば、-o オプションは、LDAP から削除されたか、または別のサーバホストに移されたユーザの受信箱を検出します。孤立したアカウントがあると、reconstruct は標準出力に以下のコマンドを書き込みます。

mboxutil -d user/ユーザid/INBOX

-o -d ファイル名

-d ファイル名-o オプションと併用されている場合、reconstruct は指定したファイルに mboxutil -d コマンドを書き込みます。孤立したアカウントを削除するためにこのファイルをスクリプトファイルにすることも可能です。

-p パーティション

パーティション名を指定します。このオプションは、最初の reconstruct に使用できます。

-q

制限容量サブシステム内の矛盾 (制限容量ルートが不正確なメールボックスや、使用容量に関する報告が不正確な制限容量ルートなど) を修正します。-q オプションは、他のサーバプロセスが実行中の場合でも実行できます。

-r [メールボックス]

整合性チェックを行い、必要に応じて指定したメールボックス (1 つまたは複数) のパーティション領域を修復します。-r オプションは、必要に応じて指定メールボックス内のサブメールボックスの修復も行います。メールボックス引数を指定せずに -r オプションを使用すると、ユーティリティは必要に応じてデータベース内の全メールボックスのスプール領域を修復します。


メールボックスを再構築する

メールボックスを再構築するには、-r オプションを使用します。このオプションは、以下のような場合に使用してください。

5.0 リリースでは、reconstruct -r は整合性チェックを実行し、結果を報告し、問題が検出された場合にのみ再構築を実行します。したがって、このリリースでは、reconstruct ユーティリティのパフォーマンスが向上していると言えます。

reconstruct は、以下の例のように使用できます。

daphne というユーザのメールボックスに対してスプール領域を再構築するには :

reconstruct -r user/daphne

メールボックスデータベースにリストされているすべてのメールボックスに対してスプール領域を再構築するには :

reconstruct -r

ただし、メッセージストアの規模が大きいと、メールボックスデータベースにリストされているすべてのメールボックスに対してスプール領域を再構築するのに非常に長い時間がかかります (「reconstruct のパフォーマンス」を参照してください)。万一の場合に備える最善の方法として、メッセージストア用に複数のディスクを使用することもできます。この方法を利用すると、1 つのディスクに問題が発生しても、メッセージストア全体が影響を受けることはありません。したがって、ディスクが損傷した場合でも、-p オプションを以下のように使用して、ストアを部分的に再構築するだけで済みます。

reconstruct -r -p サブパーティション

引数として指定されているメールボックスが primary パーティションにある場合にのみ再構築を実行するには :

reconstruct -p primary mbox1 mbox2 mbox3

primary パーティション内のすべてのメールボックスを再構築する必要がある場合には :

reconstruct -r -p primary

整合性チェックを省略してフォルダの再構築を強行するには、-f オプションを使用します。ユーザフォルダ daphne の再構築を強行するには :

reconstruct -f -r user/daphne

修復を行わず、全メールボックスのチェックだけを実行するには (-n オプションを使用) :

reconstruct -r -n


メールボックスをチェック/修復する

メールボックスデータベースの高レベルな整合性チェックおよび修復を実行するには :

reconstruct -m

-m オプションは、以下のような場合に使用します。


孤立したアカウントを削除する

孤立したアカウント (対応するエントリが LDAP に存在しないメールボックス) を検索するには :

reconstruct -o

コマンド出力 :

  reconstruct: Start checking for orphaned mailboxes
  mboxutil -d user/test/annie/INBOX
  mboxutil -d user/test/oliver/INBOX
  reconstruct: Found 2 orphaned mailbox(es)
  reconstruct: Done checking for orphaned mailboxes


孤立したメールボックスの削除に使用するスクリプトファイルに変換できる、孤立したメールボックスのリストを含む orphans.cmd という名前のファイルを作成するには :

reconstruct -o -d orphans.cmd

コマンド出力 :

  reconstruct: Start checking for orphaned mailboxes
  reconstruct: Found 2 orphaned mailbox(es)
  reconstruct: Done checking for orphaned mailboxes



reconstruct のパフォーマンス

reconstruct があるタスクを完了するために必要な時間は、以下の要素に左右されます。

reconstruct -r オプションは最初の整合性チェックを実行します。再構築するフォルダの数によっては、このチェックで reconstruct のパフォーマンスが向上することもあります。

たとえば、ユーザ数が 2400、メッセージストアのサイズが 85 GB、サーバが POP、IMAP、または SMTP アクティビティを実行中という状況で実験した場合、以下のような結果が報告されています。


ユーザのアカウントを移動する

MoveUser ユーティリティは、ユーザのアカウントをメッセージングサーバ間で移動するためのユーティリティです。ユーザアカウントを移動する場合は、ユーザのメールボックスおよびそこに含まれるメッセージも同じサーバに移動する必要があります。また、MoveUser は、メールボックスの移動に加え、mailhost 新しい名およびメッセージストアパスを反映するために Directory Server のエントリを更新します。

MoveUser ユーティリティを使用するには、MoveUser コマンドに -a オプションを含め、認証を受ける必要があります。正当なメッセージストア管理者であれば誰でも MoveUser コマンドを実行できます。ユーザにストア管理者特権を与えるには以下の方法があります。

表 10-8 に、MoveUser の各オプションを示します。また、その後にはオプションの使用例が記されています。構文や使用条件の詳細については、『Messaging Server リファレンスマニュアル』を参照してください。


表 10-8 MoveUser のオプション


オプション

説明

-a デスティネーションプロキシユーザ

デスティネーションメッセージングサーバのプロキシ認証ユーザ。

-A

LDAP エントリに他の電子メールアドレスを追加しません。

-d デスティネーションメールホスト

デスティネーションメッセージングサーバ

-D バインドdn

dn を指定した ldapURL にバインドします。

-F

メールボックスの移動に成功した場合に、ソースメッセージングサーバからメッセージを削除します。このオプションを指定しなかった場合、メッセージはソースメッセージングサーバに残ります。

-h

指定したコマンドに関するヘルプを表示します。

-l ldapURL

Directory Server との接続を確立するための URL。

-L

Messaging Server のライセンスを追加します (まだ設定されていない場合)。

-m デスティネーションメールドロップ

デスティネーションメッセージングサーバのメッセージストアパス。指定されていない場合は、デフォルトが使用されます。

-n メッセージ数

一度に削除するメッセージの数。

-o ソースメールドロップ

ソースメッセージングサーバのメッセージストアパス。指定されていない場合は、デフォルトが使用されます。

-p ソースプロキシパスワード

ソースメッセージングサーバのプロキシ認証パスワード。

-s ソースメールホスト

ソースメッセージングサーバ。

-S

各ユーザ用に新しいメッセージストアパスを設定しません。

-u ユーザid

削除するメールボックスの所有者であるユーザの ID。-l オプションとは併用できません。

-U 新規ユーザid

メールボックスの移動先となる新しい (名前変更後の) ユーザ ID。

-v デスティネーションプロキシパスワード

デスティネーションメッセージングサーバのプロキシ認証パスワード。

-w バインドパスワード

-D オプションが指定する バインドdn のバインディングパスワード。

-x ソースプロキシユーザ

ソースメッセージングサーバのプロキシ認証ユーザ。

Directory Server siroe.com のアカウント情報に基づいて、すべてのユーザを host1 から host2 に移動するには :

MoveUser -l \
  "ldap://siroe.com:389/o=Siroe.com???\
  (mailhost=host1.domain.com)" \
  -D "cn=Directory Manager" -w パスワード -s host1 -x admin \
  -p
パスワード -d host2 -a admin -v パスワード


Directory Server siroe.com のアカウント情報に基づいて、1 人のユーザを、ポート 150 を使用する host1 から host2 に移動するには :

MoveUser -l \
  "ldap://siroe.com:389/o=Siroe.com???(uid=ユーザid)" \
  -D "cn=Directory Manager" -w パスワード -s host1:150 -x admin \
  -p パスワード -d host2 -a admin -v パスワード


Directory Server server1.siroe.com のアカウント情報に基づいて、ID が「s」で始まるすべてのユーザを host1 から host2 に移動するには :

MoveUser -l \
  "ldap://server1.siroe.com:389/o=Siroe.com???(uid=s*)" \
  -D "cn=Directory Manager" -w パスワード -s host1 -x admin \
  -p パスワード -d host2 -a admin -v パスワード


admin というユーザ ID がコマンドライン中で指定されている場合に、そのユーザのメールボックスを host1 から host2 に移動するには :

MoveUser -u uid \
  -s host1 -x admin -p パスワード \
  -d host2 -a admin -v パスワード


host1 のユーザ aldonzahost2 に移動し、ID を dulcinea に変更するには :

MoveUser -u aldonza -U dulcinea \
  -s host1 -x admin -p パスワード \
  -d host2 -a admin -v パスワード



メッセージストアをバックアップ、リストアする



バックアップおよびリストアは、最も一般的でかつ重要な管理タスクです。以下のような問題が発生した場合にデータの損失を避けられるよう、メッセージストアのバックアップ/リストアポリシーを準備しておく必要があります。

また、ユーザを移動する場合にもデータをバックアップしておく必要があります。

Messaging Server には、メッセージストアのバックアップおよびリストアに使用できるコマンドラインユーティリティが備わっています。また、Messaging Server は Legato Networker との統合ソリューションも提供しています。

Messaging Server に備わっているのは、単一コピーバックアップのプロシージャです。ある特定のメッセージが何個のユーザフォルダに含まれているかということには関係なく、最初に検出されたファイルだけがバックアップされます。2 つ目以降のメッセージコピーは、最初のメッセージファイル名へのリンクとしてバックアップされます。backup ユーティリティは、メッセージファイルのデバイスと i ノードをインデックスとして使用し、全メッセージのハッシュテーブルを保守します。ただし、この方法はデータのリストアに影響を及ぼすので注意してください。詳細については、「部分的リストアを行う場合の注意事項」を参照してください。

この項では、以下の事項について説明します。


バックアップポリシーを作成する

バックアップポリシーを決定する際には、以下の要素を考慮する必要があります。


ピーク時の負荷

システムのバックアップを計画する際には、時間的な負荷量の増減を考慮する必要があります。たとえば、午前 2 時などの早朝の時間帯にバックアップをスケジュールするのが良いでしょう。


フルバックアップとインクリメンタルバックアップ

インクリメンタルバックアップはストアをスキャンして変更があったデータのみをバックアップする方法で、フルバックアップはメッセージストア全体をバックアップする方法です。フルバックアップとインクリメンタルバックアップをそれぞれどの程度の頻度で実行するかを決定する必要があります。インクリメンタルバックアップは日常的なメンテナンスプロシージャの一環として実行すると良いでしょう。フルバックアップはデータを移動する場合などに適しています。


並列バックアップと直列バックアップ

ユーザデータが複数のディスクに保存されている場合は、並列的にユーザグループのデータをバックアップできます。システムリソースによっては、このような並列バックアップを行うことでバックアップ全体に必要な時間を短縮できる場合もあります。しかし、サーバのパフォーマンスに影響を与えたくない場合は、直列バックアップを選択した方が良いでしょう。バックアップ方法は、システム負荷、ハードウェア設定、使用可能なテープドライブの数など、さまざまな要素を考慮して決定するようにしてください。


バックアップグループを作成する

ユーザをグループに分けることで、より効果的なバックアップ管理が可能になります。たとえば、グループごとにバックアップセッションをスケジュールしたり、複数のグループを同時にバックアップすることができます。

たとえばユーザメッセージが前述の例のようにユーザの姓に基づいて保存されている場合、姓の頭文字が A から F までのユーザを 1 つのバックアップグループとして認識させて、頭文字が G から M までのユーザは別のバックアップグループとして認識させることができます。

メッセージストアを論理的に表すと、次の図のようになります。

               ストア       
           ______|______   
          |             |  
       グループ       グループ
       ___|___           
      |       |            
    ユーザ   ユーザ           
          ____|____       
         |         |       
  メールボックス メールボックス   


ユーザをグループに分けることで、より優れたバックアップ管理が可能になります。たとえば、グループごとにバックアップセッションをスケジュールしたり、複数のグループを同時にバックアップすることができます。バックアップグループの作成方法については、「バックアップグループを作成する」を参照してください。

バックアップグループを作成するには、グループ定義を保存するための設定ファイルを作成する必要があります。このファイルには backup-groups.conf という名前を付け、以下のディレクトリに保存します。

サーバルート/msg-インスタンス/config/backup-groups.conf

このファイルのフォーマットは以下のとおりです。

グループ=定義
グループ=定義
.
.
.

たとえば、ユーザ ID の頭文字に基づいてユーザをグループ化するには、以下の定義を使用します。

groupA=a*
groupB=b*
groupC=c*

バックアップオブジェクトの名前は、以下のように、メッセージストアの論理構造に従って付けられます。

/サーバ/グループ/ユーザ/メールボックス

サーバ」は、メッセージストアのインスタンス名です (例、siroe)。

Messaging Server には、backup-groups 設定ファイルを作成せずに使用できるデフォルトのバックアップグループが 1 つあります。ALL という名前のこのグループには、すべてのユーザが含まれています。


Messaging Server バックアップ/リストアユーティリティ

Messaging Server には、データをバックアップおよびリストアするための imsbackup および imsrestore ユーティリティが備わっています。

imsbackup ユーティリティおよび imsrestore ユーティリティは、一般的なバックアップを行うために提供されているものではありません。これらのユーティリティには、Legato Networker などの多目的ツールが持つ高度な機能はありません。たとえば、テープ自動チェンジャサポート機能には制限があり、1 つのストアの内容を同時に複数のデバイスに書き込むことはできません。総合的なバックアップは、Legato Networker などのツールに対するプラグインを介して行われます。Legato Networker の使用方法については、「Legato Networker を使用する」を参照してください。


imsbackup ユーティリティ

imsbackup を使用すると、メッセージストアの内容を部分的に選択し、磁気テープ、UNIX パイプ、ファイルなど、さまざまなシリアルデバイスに書き込むことができます。作成したバックアップの一部または全体をリストアするには、imsrestore ユーティリティを使用します。imsbackup の出力を imsrestore にパイプすることも可能です。

バックアップを行うには、imsbackup コマンドを使用します。以下の例では、user1backupfile にバックアップされます。

imsbackup -f backupfile /mystore/ALL/user1

このコマンドは、20 というデフォルトのブロッキングファクタを使用します。imsbackup コマンドの構文の詳細については、『Messaging Server リファレンスマニュアル』を参照してください。


imsrestore ユーティリティ

バックアップデバイスからメッセージをリストアするには、imsrestore コマンドを使用します。以下の例では、backupfile ファイルから user1 のメッセージがリストアされます。

imsrestore -f backupfile /mystore/ALL/user1

imsbackup コマンドの構文の詳細については、『Messaging Server リファレンス マニュアル』を参照してください。


部分的リストアを行う場合の注意事項

単一コピーバックアッププロシージャに従ってバックアップしたメッセージをリストアする際には、以下の事項に注意してください。

以下のように 3 人のユーザ A、B、C に属するメッセージがあると仮定します。

A/INBOX/1
B/INBOX/1
C/INBOX/1

例 1 : システムは以下のように部分的バックアップおよびフルリストアを実行します。

  1. ユーザ B および C をバックアップします。

  2. ユーザ B および C を削除します。

  3. 手順 1 で作成したバックアップデータをリストアします。

この例で、B/INBOX/1 および C/INBOX/1 には新しい i ノード 番号が割り当てられ、メッセージデータはディスクの新しい場所に書き込まれます。また、リストアされるのは最初のメッセージだけであり、2 つ目のメッセージは最初のメッセージへのハードリンクです。

例 2 : システムは以下のようにフルバックアップおよび部分的リストアを実行します。

  1. フルバックアップを行います。

  2. ユーザ A を削除します。

  3. ユーザ A をリストアします。

A/INBOX/1 には新しい i ノード 番号が割り当てられます。

例 3 : この例では、部分的リストアを繰り返し試みる必要が生じることがあります。

  1. フルバックアップを行います。

    B/INBOX/1 および C/INBOX/1 は A/INBOX/1 へのリンクとしてバックアップされます。

  2. ユーザ A および B を削除します。

  3. ユーザ B をリストアします。

    管理者に A/INBOX をリストアするよう指示が出されます。

  4. ユーザ A および B をリストアします。

  5. ユーザ A を削除します (オプション)。

    部分的リストアの際に、すべてのメッセージが確実にリストアされるようにしたい場合は、imsbackup コマンドに -i オプションを使用します。-i オプションは、各メッセージを必要に応じて複数回バックアップします。このオプションは、POP 環境で最も便利なものです。




Legato Networker を使用する

Messaging Server には、Legato Networker などのサードパーティバックアップツール用のインターフェースを提供するバックアップ API があります。物理メッセージストアの構造およびデータフォーマットは、バックアップ API 内でカプセル化されます。バックアップ API はメッセージストアと直接通信を行い、バックアップサービスにメッセージストアの論理ビューを提供します。バックアップサービスは、このメッセージストアの論理ビューを利用してバックアップオブジェクトを保存および取得します。

Messaging Server では、Legato Networker の save および recover コマンドで呼び出せるアプリケーション特有モジュール (ASM) を使って、メッセージストアデータのバックアップおよびリストアを実行できます。ASM は Messaging Server imsbackup および imsrestore ユーティリティを呼び出します。


この項では、Messaging Server のメッセージストアと Legato Networker を併用する方法について説明します。Legato Networker のインターフェースについては、Legato に付属のマニュアルを参照してください。




Legato Networker を使ってデータをバックアップする

Legato Networker を使って Messaging Server メッセージストアをバックアップするには、Legato のインターフェースを呼び出す前に以下の手順を実行します。

  1. /usr/lib/nsr/imsasm から サーバルート/msg-インスタンス/bin/imsasm へのシンボリックリンクを作成します。

  2. Sun または Legato から nsrfile バイナリファイルのコピーを入手し、以下のディレクトリにコピーします。

    /usr/lib/nsr/nsrfile

  3. グループごとにユーザをバックアップする場合は、以下の手順を実行します。

    1. 「バックアップグループを作成する」の説明に従ってバックアップグループファイルを作成します。

    2. mkbackupdir.sh を実行して設定を確認します。

      サーバルート/msg-インスタンス/backup ディレクトリの構造を確認します。ディレクトリは、図 10-2 に示されているような構造になっていなければなりません。

    backup-groups.conf ファイルを指定しないと、すべてのユーザを含むデフォルトのバックアップグループ ALL が使用されます。

  4. savegroup が mkbackupdir.sh スクリプトを呼び出せるように、/nsr/res/ ディレクトリに res ファイルを作成します。図 10-3 を参照してください。

    Legato Networker には、saveset の名前に 64 文字という制限があります。デフォルトでは、mkbackupdir.sh によって、serverRoot/msg-instance/backup ディレクトリ内にストアイメージが作成されます。このディレクトリの名前とメールボックスの論理名 (例、siroe/groupA/fred) が 64 文字を超える場合には、mkbackupdir.sh -p を実行する必要があります。たとえば、次のコマンドを実行すると、"/" ディレクトリ内にバックアップイメージが作成されます。

    mkbackupdir.sh -p /



図 10-2 に、バックアップグループディレクトリ構造の一例を示します。

図 10-2 バックアップグループディレクトリ構造

siroe-groupA-a1
            -a2
     -groupB-b1
            -b2
     -groupC-c1
            -c2


図 10-3nsr ディレクトリに含まれる IMS.res という名前のサンプル res ファイルです。

図 10-3 サンプル res ファイル

type: savepnpc
precmd: "echo mkbackupdir started",
   "/usr/siroe/server5/msg-siroe/bin/mkbackupdir.sh"
pstcmd: "echo imsbackup Completed";
timeout: "12:00 pm";



次に、以下の手順に従って Legato Networker のインターフェースを使用します。

  1. 必要に応じて Messaging Server の savegroup を作成します。

    1. nwadmin を実行します。

    2. Customize (カスタマイズ) | Group (グループ) | Create (作成) を選択します。

  2. savepnpc をバックアップコマンドとして使用し、バックアップクライアントを作成します。

    1. mkbackupdir によって作成されたディレクトリに saveset を設定します。

      単一セッションのバックアップには サーバルート/msg-インスタンス/backup を使用します。

      並列バックアップには サーバルート/msg-インスタンス/backup/サーバ/グループ を使用します。

      「バックアップグループを作成する」の説明に従って、あらかじめグループを作成しておく必要があります。

      また、parallelism をバックアップセッションの回数に設定しなければなりません。

      詳細については、「例 - Networker にバックアップクライアントを作成する」を参照してください。

  3. Group Control (グループ制御) | Start (開始)を選択してバックアップ設定をテストします。

例 - Networker にバックアップクライアントを作成する Networker にバックアップクライアントを作成するには、nwadmin から Client (クライアント) | Client Setup (クライアントセットアップ) | Create (作成) を選択します。

Name: siroe
Group: IMS
Savesets:/usr/siroe/server5/msg-siroe/backup/siroe/groupA
   /usr/siroe/server5/msg-siroe/backup/siroe/groupB
   /usr/siroe/server5/msg-gotmail/backup/gotmail/groupC
         .

         .
Backup Command:savepnpc
Parallelism: 4


Legato Networker を使用してデータをリストアする

データのリストアには、Legato Networker の nwrecover インターフェースまたは recover コマンドラインユーティリティを使用できます。a1 というユーザの INBOX をリストアするには :

recover -a -f -s siroe /usr/siroe/server5/msg-siroe/backup/siroe/groupA/a1/INBOX

メッセージストア全体をリストアするには :

recover -a -f -s siroe /usr/siroe/server5/msg-siroe/backup/siroe


前へ    目次    索引    次へ
Copyright (c) 2001 Sun Microsystems, Inc. 既存部分の一部: Copyright (c) 2001 Netscape Communications Corp. All rights reserved.

最終更新日 2001 年 5 月 24 日