5.4.2 変換順序 |
|
LNM$SYSTEM の定義は,LNM$SYSCLUSTER を含むように拡張されています。システム論理名を変換する場合,検索順序は LNM$SYSTEM_TABLE,LNM$SYSCLUSTER_TABLE です。システムのデフォルト・テーブル名である LNM$FILE_DEV と LNM$DCL_LOGICALS の定義には,LNM$SYSTEM が含まれているため,これらのデフォルト・テーブルを使用する変換には,LNM$SYSCLUSTER に指定されている定義が含まれます。
論理名の解釈に関する現在の優先順位はそのまま保存されます。 LNM$FILE_DEV に対して変換されるクラスタワイド論理名は,システム論理名の後に,最後に解釈されます。論理名が解釈される順序は, 図 5-5 に示すように,プロセス --> ジョブ --> グループ --> システム --> クラスタの順です。
図 5-5 LNM$FILE_DEV によって指定される変換順序
5.4.3 クラスタワイド論理名テーブルの作成 |
|
以下の目的で,クラスタワイド論理名テーブルを追加作成しなければならないことがあります。
- マルチプロセス・クラスタワイド・アプリケーションを使用するため。
- UIC グループのメンバを共用するため。
クラスタワイド論理名テーブルを作成するには,親テーブルに対する作成 (C) アクセス権と LNM$SYSTEM_DIRECTORY に対する書き込み (W) アクセス権を保有するか,または SYSPRV (システム) 特権が必要です。
共有論理名テーブルは,UIC ベースで保護されています。ユーザの各クラス (システム (S),オーナ (O),グループ (G),およびワールド (W)) には,4 つのアクセス・タイプ, (読み込み (R),書き込み (W),作成 (C),削除 (D)) が認められています。
クラスタワイド論理名テーブルは,プロセス論理名テーブル,ジョブ論理名テーブル,グループ論理名テーブルの場合と同じ方法で追加作成できます。つまり, CREATE/NAME_TABLE コマンドを使用するか, $CRELNT システム・サービスを使用します。クラスタワイド論理名テーブルを作成する場合は, /PARENT_TABLE 修飾子を使用し,修飾子の値としてクラスタワイド・テーブル名を指定します。既存のクラスタワイド・テーブルを親テーブルとして使用すると,新規テーブルもクラスタ単位になります。
以下の例では,クラスタワイド論理名テーブルの作成方法を示しています。
作成したクラスタワイド論理名テーブルに登録されるクラスタワイド論理名を作成するには,DEFINE コマンドを使用して新しいクラスタワイド論理名を定義し,/TABLE 修飾子に新しいクラスタワイド・テーブルの名前を指定します。以下の例を参照してください。
条件付き定義を使用すると,意図に反した定義が行われるのを防止できます。たとえば,システム管理者が SYSTARTUP_VMS.COM にも定義されている名前を再定義し,新しい定義が一時的なものであるために, SYSTARTUP_VMS.COM を変更しなかったとします。新しいノードがクラスタに参加すると,そのノードは最初にその新しい定義を受け取ります。しかし,新しいノードが SYSTARTUP_VMS.COM を実行すると,そのノード自体も含めて,クラスタ内のすべてのノードは元の値に戻されてしまいます。
条件付き定義を SYLOGICALS.COM または SYSECURITY.COM に含める場合, F$TRNLNM CASE 引数を INTERLOCKED に指定し,変換が完了する前にクラスタワイド論理名の初期化が完了しているようにします。この引数指定と条件付き定義の例を以下に示します。