[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]

7 OpenVMS Registryの概要

7.1 レジストリとは

Windows NT Registryは,ハードウェアとソフトウェア( オペレーティング・システムとアプリケーションの両方) に関する構成情報を格納した,システム全体で有効な1つの階層型データベースです。Windows NT Registry は, Windows 3.x.ini ファイルに代わるものであり, アプリケーションと構成に関する情報を1つの場所に格納できます。

OpenVMSとWindows NTが協調動作できるようにするために,Compaq はOpenVMSでもレジストリを提供しました。Windows NT Registryと同様に,OpenVMS Registry はOpenVMS RegistryデータベースとOpenVMS Registryサーバの2つのコンポーネントで構成されています。OpenVMS Registryデータベースはシステム単位またはクラスタ単位の階層型データベースであり, 構成情報が格納されます。 この情報はキーと関連値という形式で,データベース構造として格納されます。OpenVMS Registry サーバは,OpenVMS Registry データベースの作成とバックアップ, キーと値の作成,表示,変更,削除など,OpenVMS Registryのすべての操作を制御します。

OpenVMS Registryにはインタフェース(COM API とシステム・サービス)が含まれていて,アプリケーションはOpenVMS Registry サーバを制御し,OpenVMS Registryデータベースに読み書きできます。 また,OpenVMS Registryにはサーバ管理ユーティリティも含まれているので, システム管理者はOpenVMSのDCLコマンド・ ラインからOpenVMS Registry情報を表示し, 更新できます。

OpenVMS RegistryはWindows NT Registryと互換性があります。 RegEdt32 などのNTクライアント・アプリケーションは,OpenVMS Registry に接続して,これを編集することができます。

7.1.1 参考文献

Windows NT Registryおよび関連項目の詳細については, 次の参考文献を参照してください。

7.2 OpenVMS Registryの概念と定義

OpenVMS RegistryはWindows NT Registryと同様に,複数の分岐を含む階層型データベースです。

ここでは,OpenVMS Registryデータベースの要素と操作について説明します。

7.2.1 キー,サブキー,値

キーとは,OpenVMS Registryデータベースの基本的な要素の1 つです。キーには,コンピュータ,システム, ユーザ固有の情報が格納されます。キーはOpenVMS Registryデータベースのヘッダ・ フィールドです。 キーは階層構造(ツリー構造)に並べることができます。

OpenVMS Registryには,次の2つのメイン(ルート) キーがあります。

HKEY_CLASSES_ROOT というキーは,HKEY_LOCAL_ MACHINECLASSES サブキーを指し示します。これらのルート・ キーについては,第7.3節で詳しく説明します。

サブキーとは,別のキーの子です。各キーには0個以上のサブキーを含むことができます。 サブキーを使用すると,関連するキーを階層構造またはツリー構造の別のキーの下にまとめることができます。

値エントリ (または)とは,名前付きのデータ要素です。 これはレジストリ・データベース内のレコード・フィールドです。 各キーには0個以上の値が関連付けられます。値には値名,値タイプ, 一連のフラグ,関連データ(値のタイプによって定義されるもの)があります。OpenVMS Registry では次の値タイプをサポートしています。

図 7-1はキー,サブキー, 値の関係を示しています。

図 7-1 キー,サブキー,値の関係

     Key1=Value1
     Key2
       |
       +-Subkey1=Value1
       |
       +-Subkey2=Value1,Value2
       :
       .

7.2.1.1 キーと値の揮発性

OpenVMS Registryのキーと値は,不揮発性 または揮発性として定義できます。不揮発性キーはOpenVMS Registry ファイルに保存されます。揮発性キーはテンポラリ・ ファイルにキャッシュされます。

Windows NTシステムでは,揮発性キーと値はシステムの再起動時に削除されます。

OpenVMSでは,揮発性キーと値は,クラスタ内のすべてのノードがリブートされるときに自動的に削除されます。OpenVMS では,サーバ・フェールオーバのときに揮発性キーが削除されないようになっていますが, クラスタのリブート時には削除されます( スタンドアロン・システムでは,揮発性キーと値はシステムのリブート時に削除されます) 。

7.2.1.2 キーのライトスルーとライトバック

キーを作成するときに,OpenVMS Registryがキーの変更情報をいつ書き込まなければならないかを指定できます。 書き込みオプションは次のとおりです。

Cache Action 属性を使用すると,キーの書き込み属性を指定できます。 キーの作成時にキャッシュ・アクション属性を指定しなかった場合は, キーは親の属性を継承します。

SYS$REGISTRY インタフェースを使用する場合は,キャッシュ・ アクション属性の値とは無関係に,直ちに書き込みが行われるように( ライトスルー),処理中の要求に対してREG$M_NOW 機能コード修飾子を使用できます。

7.2.1.3 他のキーと値へのキーのリンク

OpenVMS Registryキーは他のOpenVMS Registryキーにリンクすることができ, 同じデータに対して複数のパスを提供できます。同様に,OpenVMS Registryの値は他のOpenVMS Registry 値にリンクできます。これらのキーと値のリンク, つまりシンボリック・リンクは,ファイルのリンクによく似ています。 シンボリック・リンクは名前の参照です。

たとえば,Key AKey B にリンクできます。 Key A とその値を検索すると,Key B の値が返されます。

また,シンボリック・リンクを連鎖させることもできます。 つまり,Key AKey B を指し,Key BKey C を指すように設定できます。この結果, Key AKey C も指すようになります。 リンクを指定するには,$REGISTRYシステム・サービスを使用するか,OpenVMS Registry サーバ管理コマンド・ライン・ インタフェースを使用します。

7.2.1.4 OpenVMS Registryキーと値の名前の作成規則

キーと値の名前には次の規則が適用されます。

7.2.2 クラス

Class 属性を使用すると,各キーに追加情報を格納できます。 たとえば,Class text string を指定すると,指定したキーで使用できるデータ・ タイプを格納できます。

7.2.3 ハイブ

ハイブとは,OpenVMS Registryに格納されている関連キー,サブキー,値の集まりです。

Windows NTシステムでは,ハイブは関連するLOG ファイルと共に, %SystemRoot%\system32\configディレクトリの1つのファイルに格納されます。Windows NT では,ユーザはディスクの指定されたファイルにハイブを保存することができ, これらのファイルを後でロードすることができます。

OpenVMSシステムでは,OpenVMS Registryデータベース全体が REGISTRY$LOCAL_ MACHINE.REGREGISTRY$USERS.REG という2つのハイブで構成されています。OpenVMS では,ハイブのロードとアンロードはサポートされません。

7.3 OpenVMS Registryの構造

Windows NTアプリケーションがOpenVMS Registryデータベースとインタフェースをとることができるようにするために,OpenVMS Registry データベースにはWindows NT Registry であらかじめ定義されているキーとサブキーの一部が含まれています。

OpenVMS Registryには次の定義済み標準キーが含まれています。

7.4 OpenVMS Registryへの読み込みと書き込み

OpenVMS Registryに対する読み込みと書き込みは, 次の方法で行います。

7.4.1 $REGISTRYシステム・サービス

OpenVMS Registryには,OpenVMS Registryサーバへのインタフェースを提供する2 つのOpenVMSシステム・サービスがあります。OpenVMS Registryシステム・ サービスを使用すると,OpenVMS Registryデータベース内のキー,サブキー, 値の照会,更新,作成を行うことができます。

$REGISTRYシステム・サービスと$REGISTRYWシステム・サービスの詳細については, 第10章を参照してください。

7.4.2 REG$CPサーバ管理ユーティリティ

REG$CP サーバ管理ユーティリティを使用すると,OpenVMS DCLプロンプトからOpenVMS Registry情報を表示し, 更新できます。また,このユーティリティでは,必要なシステム特権があれば,OpenVMS Registry データベース全体をファイルにバックアップしたり, ファイルから復元することができます。

REG$CP サーバ管理ユーティリティの詳細については,第9章を参照してください。

7.5 OpenVMS Registryのセキュリティ

OpenVMS Registryでは,OpenVMSとWindows NTの両方のセキュリティ・モデルが実装されています。

OpenVMS Registryデータベースにアクセスするには, 呼び出し側のプロセスは実行する操作にとって適切なOpenVMS Registryライト識別子を持っているか( たとえば,読み込み操作の場合はREG$LOOKUP, 書き込み操作の場合はREG$UPDATE,統計操作の場合は REG$PERFORMANCE ),呼び出し側プロセスがSYSPRV特権を持っていなければなりません。

ここでは,このセキュリティ・モデルについて説明します。

7.5.1 OpenVMSセキュリティ・モデル

ユーザがOpenVMS Registryへのアクセスを要求すると,OpenVMS システムはユーザのWindows NT資格情報をチェックし, 次の手順でアクセスを許可します。

  1. ユーザがWindows NT資格情報を持っているか。

  2. ユーザがOpenVMS SYSPRV特権を持っているか。

  3. ユーザがREG$UPDATEREG$LOOKUPREG$PERFORMANCE のいずれかのライト識別子を持っているか。

  4. ユーザがWindows NT資格情報を持っていない場合は,OpenVMS はOpenVMSユーザに対してWindows NTのEveryone グループ・ アクセスを許可します。この場合,OpenVMSユーザがOpenVMS Registryキーにアクセスできるかどうかは, キーの所有者がキーまたはサブキーを作成したときに, Everyone に対してどのようなアクセス許可を定義したかに応じて異なります。 これらのアクセス許可をもとに,OpenVMS ユーザは次のいずれかの操作を行うことができます。

7.5.1.1 AUTHORIZEユーティリティによるOpenVMS Registry へのアクセス・ライトの付与

OpenVMS Authorizeユーティリティ(AUTHORIZE)を使用して,SYSPRV特権と REG$UPDATEREG$LOOKUPREG$PERFORMANCE 識別子をユーザ・プロセスに追加することができます。


重要
OpenVMS Registryライトを与えると,Windows NT のセキュリティ・ アクセス・チェックが無効になります。

ライト識別子はアプリケーション固有であるため,AUTHORIZEコマンドを使用してライト識別子を作成することはできません。 システムでこれらのライトを作成するには, REG$CP サーバ管理ユーティリティを使用します。 REG$CP サーバ管理ユーティリティを実行すると, デフォルトでこれらのライトが作成されます。 REG$CP は適切な特権が与えられたアカウントから実行しなければなりません。 REG$CP の実行の詳細については, 第9章を参照してください。

次の例では,SET RIGHTS_LISTコマンドを使用して,すべてのユーザがOpenVMS Registry データベース内のキーとデータを表示することを許可する方法を示しています。 このコマンドは REG$LOOKUP 識別子をシステム・ライト・リストに追加します。

     $ SET RIGHTS_LIST/ENABLE/SYSTEM REG$LOOKUP

例 7-1では,AUTHORIZEを使用してOpenVMS Registry ライトを特定のユーザに与えたり, 与えたライトを削除する方法を示しています。

例 7-1 ユーザにライトを付与するためのAUTHORIZE の使用

$ SET DEF SYS$SYSTEM
$ RUN AUTHORIZE

UAF> GRANT/IDENTIFIER REG$LOOKUP SMITH 1
UAF> GRANT/IDENTIFIER/ATTRIBUTES=DYNAMIC REG$UPDATE SMITH 2
UAF> REVOKE/IDENTIFIER REG$UPDATE SMITH 3
UAF> GRANT/IDENTIFIER REG$PERFORMANCE SYSTEM 4

  1. このAUTHORIZEコマンドは,REG$LOOKUP 識別子を Smith というユーザに与え,Smith がOpenVMS Registryデータベース内のキーとデータを表示することを許可します。

  2. このAUTHORIZEコマンドは,REG$UPDATE 識別子を Smith というユーザに与え,Smith がOpenVMS Registryデータベース内のキーとデータを変更することを許可します。 動的属性により, SmithSET RIGHT/ENABLE コマンドと SET RIGHT/DISABLE コマンドを使用して,プロセス・ ライト・リストからREG$UPDATE 識別子を削除したり, 復元することができます。

  3. このAUTHORIZEコマンドは,Smith というユーザに与えた REG$UPDATE 識別子を削除します。

  4. このAUTHORIZEコマンドは,REG$PERFORMANCE 識別子をシステム管理者アカウントに与え,システム管理者がOpenVMS Registryパフォーマンス・ データの監視を有効および無効に設定できるようにします。

7.5.2 Windows NTのセキュリティ・モデル

Windows NTユーザはAdvanced Server for OpenVMSを介してのみ,OpenVMS Registryにアクセスできます。OpenVMSはユーザのWindows NT資格情報をもとに,Windows NT ユーザに対してOpenVMS Registryへのアクセスを許可します。

7.6 OpenVMS Registryサーバ操作の制御

OpenVMS Registryサーバ操作には,ファイル・ クォータの制御,サーバ優先順位,エラー回復処理,データベース・ バックアップの頻度,OpenVMS Registryサーバのチューニングなどがあります。

ここでは,OpenVMS Registryサーバ操作について説明し, 各設定の最小値,最大値,デフォルト値を示します。これらの設定の変更方法については, 第9章を参照してください。

7.6.1 Maximum Reply Age/Age Checker Interval 設定の定義

OpenVMS Registryサーバは,進行中の作業を追跡し, REG$_DUPLREQUEST エラーを返すことで,重複する要求に対処します。OpenVMS Registry サーバは, すでに完了した作業に対して重複する要求が受信された場合のために, 完了した要求もしばらく残しておきます。この場合,OpenVMS Registryサーバは応答を再作成します。 指定の時間が経過した後, 要求は破棄されます。Maximum Reply Age設定は, これらの要求の保持時間を指定します。Age Checker Interval設定は,OpenVMS Registry サーバがこの時間を超える要求をどの程度の頻度でチェックするかを指定します。

デフォルト設定では,サーバは5秒ごとに完了した古い要求がないかどうかチェックします。 デフォルト設定では,サーバは5秒より古い完了済み要求を破棄します。

設定名 デフォルト値 最小値 最大値
Maximum Reply Age 5 1 60
Age Checker Interval 5 1 60

7.6.2 Database Log Cleaner Interval/Initial Log File Size設定の定義

OpenVMS Registryでは,2フェーズ・コミット・ プロセスを使用して変更をOpenVMS Registryデータベースに書き込みます。OpenVMS Registryは最初に変更をログ・ ファイルに書き込み, その後,ログ・ファイルをOpenVMS Registryデータベースに適用します。Database Log Cleaner Interval設定は,OpenVMS Registryがログ・ ファイルをOpenVMS Registryデータベースに適用する頻度を指定します。OpenVMS Registryがログ・ファイルを適用した後,OpenVMS RegistryはInitial Log File Size 設定のサイズをもとに, 新しいログ・ファイルを作成します。

Database Log Cleaner Interval設定は,データベースに書き込みを行っても, ログ・ファイルを拡張する必要が発生しないように短い時間に設定しなければなりません。 また,ログ・ファイルをデータベースに適用する操作を実行している間, データベースへの書き込みができなくなるので, ログを適用するのに必要な時間をかなり短くするために,ログ・ファイル・ サイズは小さい値に設定しておかなければなりません。

デフォルト設定では,ログ・ファイルは5秒ごとに適用されます。デフォルト設定では,OpenVMS Registry ログ・ファイルの作成時のサイズは32 ブロック(16 KB)です。

設定名 デフォルト値 最小値 最大値
Database Log Cleaner Interval 5 1 30
Initial Log File Size 32 16 256

7.6.3 Default File Quota/File Quota Interval設定の定義

OpenVMS Registryサーバはファイル・クォータを適用することで,OpenVMS Registry データベース・ ファイルのサイズを制限します。ファイル・クォータは,OpenVMS Registry データベースを構成する各ファイルに対して割り当てることができます。 ファイル・クォータを割り当てなかった場合は,OpenVMS RegistryはDefault File Quota設定を使用します。

OpenVMS RegistryサーバはOpenVMS Registryデータベース・ファイルのサイズを定期的に再計算して, クォータを超えているかどうか判断します。File Quota Interval設定は,OpenVMS Registryがこの計算を行う頻度を指定します。

デフォルト設定では,Default File Quota設定は10 MBです。デフォルト設定では, サーバは30秒ごとにファイル・クォータを再計算します。

設定名 デフォルト値 最小値 最大値
Default File Quota 0x10000000 0x7d00 0x3fffffff
File Quota Interval 30 10 60

7.6.4 Scan Interval設定の定義

OpenVMS Clusterでは,OpenVMS Registryサーバを複数のノードで実行できます。 しかし,一度に1つのOpenVMS Registryサーバだけがアクティブになることができます。 クラスタ内の他のOpenVMS Registryサーバに対するOpenVMS Registry サーバの優先順位によって, どのOpenVMS Registryサーバがアクティブになるかが決定されます。 クラスタ構成が変化する場合は, システム管理者は1つ以上のOpenVMS Registryサーバの優先順位を調整できます。システム管理者が優先順位を変更した後, クラスタ内のOpenVMS Registryサーバは,最高の優先順位が割り当てられているサーバを判断し, 必要に応じてその状態を自動的に変更します。Scan Interval設定は,OpenVMS Registryサーバが優先順位の変更をチェックする頻度を指定します。

デフォルト設定では,サーバは優先順位の変更を120秒ごとにチェックします。

設定名 デフォルト値 最小値 最大値
Scan Interval 120 60 300

7.6.5 Log Registry Value Error設定の定義

OpenVMS Registryサーバ・パラメータの値のいずれかが有効な範囲でない場合は,OpenVMS Registryサーバはエラーをログに記録します。OpenVMS Registryがout-of-rangeエラーを検出すると,OpenVMS Registry サーバはそのパラメータに対してデフォルト値を使用します。 Log Registry Value Error設定は, エラーをログに記録するかどうかを指定するブール値です。

デフォルト設定では,OpenVMS Registryサーバはout-of-range エラーをログに記録しません。

設定名 デフォルト値 最小値 最大値
Log Registry Value Error 0 0 1

7.6.6 Operator Communications Interval設定の定義

I/Oエラーが発生した場合,OpenVMS RegistryサーバはOPCOMを使用してオペレータ・コンソールにメッセージを表示できます。 Operator Communications Interval設定は,I/O エラーが発生した後,そのエラーが続くかどうか判断するために,OpenVMS Registry サーバが待機する時間を指定します。 エラーが続く場合は,OpenVMS Registryはメッセージをオペレータ・コンソールに表示します。

デフォルト設定では,OpenVMS Registryサーバは, エラーが60秒以上続くときに,メッセージをオペレータ・コンソールに表示します。

設定名 デフォルト値 最小値 最大値
Age Checker Interval 5 1 60
Operator Communication Interval 60 30 120

7.6.7 Process Time Limit設定の定義

OpenVMS Registryサーバは,要求の処理時間が非常に長い場合, メッセージをサーバ・ログ・ファイルに書き込みます。 Process Time Limit 設定は,要求の処理時間が長いかどうかを判断するための基準になる値です。

デフォルト設定では,各要求に対して180秒の処理時間が認められ,その時間が経過すると,OpenVMS Registry はメッセージをログに記録します。

設定名 デフォルト値 最小値 最大値
Process Time Limit 180 60 600

7.6.8 Reply Log Cleaner Interval設定の定義

OpenVMS Registryサーバは最近の応答のログを管理します。 フェールオーバの場合は,このログを使用して進行中の作業を再実行します。 指定された時間が経過した後,サーバはこれらの応答を破棄します。 Reply Log Cleaner Interval設定は,OpenVMS Registryがこれらの応答を破棄する頻度を指定します。

デフォルト設定では,OpenVMS Registryサーバは5 秒ごとに応答を破棄します。

設定名 デフォルト値 最小値 最大値
Reply Log Cleaner Interval 10 5 60

7.6.9 Snapshot Interval/Snapshot Location/Snapshot Versions設定の定義

OpenVMS RegistryサーバはOpenVMS Registry データベースのバックアップ・コピーを管理します。Snapshot Interval設定は,OpenVMS Registryサーバがバックアップ・ コピーを作成する頻度を指定します。Snapshot Location設定は,OpenVMS Registryがコピーを格納する場所を指定します。 Snapshot Versions設定は,OpenVMS Registryが保存するバックアップ・ コピーの数を指定します。

デフォルト設定では,OpenVMS Registryデータベースは1 日に1回ずつバックアップにコピーされます。デフォルト設定では,OpenVMS Registry データベースは, SYS$REGISTRY 論理名の定義によって指定される場所にコピーされます。 デフォルト設定では,OpenVMS RegistryはOpenVMS Registryデータベースの5 つのバージョンを保存します。

設定名 デフォルト値 最小値 最大値
Snapshot Interval 86400 3600 604800
Snapshot Location SYS$REGISTRY - -
Snapshot Versions 5 1 10

7.6.10 Write Retry Interval設定の定義

OpenVMS Registryデータベースに書き込むときに,OpenVMS Registry がエラーを検出すると,OpenVMS Registry サーバはWrite Retry Interval設定によって指定される間隔で書き込みを再実行します。

デフォルト設定では,OpenVMS RegistryサーバはOpenVMS Registry データベースへの書き込みが失敗した場合,5 秒ごとに書き込みを再実行します。

設定名 デフォルト値 最小値 最大値
Writer Retry Interval 5 1 30


[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]