日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第 1 章:OpenVMS オペレーティング・システムの概要
第 2 章:DCL を使用したシステムとの会話
第 3 章:ファイル情報の格納
第 4 章:ディレクトリ・ファイルの編成
第 5 章:拡張ファイル指定
第 6 章:ディスクとテープ・ドライブの使用方法
第 7 章:Mail を使用して他のユーザと通信する
第 8 章:EVE エディタによるテキスト・ファイルの編集
第 9 章:ファイルのソートとマージ
第 10 章:資源へのアクセスの制御
第 11 章:デバイスとファイルの論理名定義
第 12 章:シンボル,コマンド,式の定義
第 13 章:コマンド・プロシージャの概要
第 14 章:DCL での拡張プログラミング
第 15 章:レキシカル関数を使用しての情報の取得と処理
第 16 章:プロセスとバッチ・ジョブ
付録 A :文字セット
付録 B :コマンド・プロシージャの例
用語集
索引
PDF
OpenVMS ホーム
OpenVMS

OpenVMS
ユーザーズ・マニュアル


目次 索引



オペレーティング・システムから提供される共用論理名テーブルは,省略時の保護設定付きで作成されます。それぞれの共用論理名テーブルに対する省略時保護を 表 11-6 に示します。

表 11-6 共用論理名テーブルの省略時保護
テーブルの種類 テーブル名 省略時の保護
ジョブ・テーブル LNM$JOB_ xxxxxxxx 1 SYSTEM=RWCD, OWNER=RWCD, GROUP=NO ACCESS, WORLD=NO ACCESS
グループ・テーブル LNM$GROUP_ gggggg 2 SYSTEM=RWCD, OWNER=R, GROUP=R, WORLD=NO ACCESS
システム・テーブル LNM$SYSTEM_TABLE SYSTEM=RWC, OWNER=RWC, GROUP=R, WORLD=R
クラスタ単位システム・テーブル LNM$SYSCLUSTER_TABLE SYSTEM=RWC, OWNER=RWC, GROUP=R, WORLD=R
クラスタ単位親テーブル LNM$CLUSTER_TABLE SYSTEM=RWC, OWNER=RWC, GROUP=R, WORLD=R
ユーザが作成したテーブル ユーザが指定 SYSTEM=RWCD, OWNER=RWCD, GROUP=NO ACCESS, WORLD=NO ACCESS

1文字列 xxxxxxxx は,ジョブ情報ブロックのアドレスである8桁の16進数を表す。
2文字列 gggggg は,プロセスの UIC グループ番号を含む6桁の8進数を表す。



表 11-7 には,それぞれの共用論理名テーブルにおける論理名の作成,削除,読み込み (変換) に必要な特権とアクセス権を示します。特権,アクセス・タイプ,アクセス制御の詳細については,このマニュアルの 第 10 章 を参照してください。

表 11-7 共用論理名の作業に必要な特権またはアクセス・タイプ
論理名が存在するテーブル テーブル名 作業 必要な特権またはアクセス・タイプ
ジョブ・テーブル LNM$JOB_ xxxxxxxx 1 論理名の作成または削除 論理名を作成する,または削除するテーブルに対して, WRITE (W) アクセス
    論理名の読み込み (変換) 論理名が存在するテーブルに対して, READ (R) アクセス
グループ・テーブル LNM$GROUP_ gggggg 2 論理名の作成または削除 論理名を作成する,または削除するテーブルに対して, WRITE (W) アクセス,または,GRPNAM 特権
    論理名の読み込み (変換) 論理名が存在するテーブルに対して, READ (R) アクセス
システム・テーブル LNM$SYSTEM_TABLE 論理名の作成または削除 システムの UIC グループ番号 (0 からシステム・パラメータ MAXSYSGROUP までの間 ),または,SYSNAM 特権
    論理名の読み込み (変換) 論理名が存在するテーブルに対して, READ (R) アクセス
クラスタ単位システム・テーブル LNM$SYSCLUSTER_TABLE 論理名の作成または削除 システムの UIC グループ番号 (0 からシステム・パラメータ MAXSYSGROUP までの間),または,SYSNAM 特権
    論理名の読み込み (変換) 論理名が存在するテーブルに対して, READ (R) アクセス
クラスタ単位親テーブル LNM$CLUSTER_TABLE 論理名の作成または削除 システムの UIC グループ番号 (0 からシステム・パラメータ MAXSYSGROUP までの間)
    論理名の読み込み (変換) 論理名が存在するテーブルに対して, READ (R) アクセス
ユーザ作成テーブル ユーザ指定 論理名の作成または削除 論理名を作成する,または削除するテーブルに対して,WRITE (W) アクセス
    論理名の読み込み (変換) 論理名が存在するテーブルに対して, READ (R) アクセス

1文字列 xxxxxxxx は,ジョブ情報ブロックのアドレスである8桁の16進数を表す。
2文字列 gggggg は,プロセスの UIC グループ番号を含む6桁の8進数を表す。



CREATE/NAME_TABLE コマンドは,論理名テーブルを作成し,それをディレクトリ論理名テーブルの1つにカタログ化します。論理名テーブルを識別する,または論理名テーブルに反復的に変換する論理名は,常にディレクトリ論理名テーブルの 1つに入力する必要があります。

11.10.1 プロセス固有の論理名テーブルの作成

プロセスに固有の論理名テーブルを作成するには,テーブルを LNM$PROCESS_DIRECTORY (省略時設定) に作成します。

ディレクトリ・テーブルの名前には1〜31の文字を含むことができます。大文字英数字,ドル記号 ($),アンダスコア (_) だけが有効です。小文字のテーブル名を指定すると,自動的に大文字に変換されます。

次の例では, TAXという名前のプロセス固有論理名テーブルを作成し,論理名 CREDIT の定義をテーブル内に配置し,テーブルの作成をチェックします。 SHOW LOGICAL/TABLE コマンドにより,表示する論理名テーブルを指定することができます。

$ CREATE/NAME_TABLE TAX
$ DEFINE/TABLE=TAX CREDIT [ACCOUNTS.CURRENT]CREDIT.DAT
$ SHOW LOGICAL/TABLE=TAX CREDIT
 "CREDIT" = "[ACCOUNTS.CURRENT]CREDIT.DAT"  (TAX)

ファイルのフックアップ中に新しいテーブルをシステムに自動的に検索させるようにするため,次の例に示すように LNM$PROCESS を再定義することができます。

$ DEFINE/TABLE=LNM$PROCESS_DIRECTORY LNM$PROCESS LNM$PROCESS_TABLE, TAX 



11.10.2 共用可能論理名テーブルの作成

共用可能論理名テーブルを作成するには,/PARENT_TABLE 修飾子を使用し,共用可能テーブルを指定します。例を次に示します。

$ CREATE/NAME_TABLE/PARENT_TABLE=LNM$SYSTEM_DIRECTORY NEWTAB



11.10.3 クラスタ単位の論理名テーブルの作成

他の共用可能論理名テーブルを作成する場合と同様の方法で,クラスタ単位の論理名テーブルを作成することができます。クラスタ単位の論理名テーブルは,共用論理名テーブルの特殊なタイプで,すべての共用可能論理名テーブルに適用する特権とアクセス必要条件に従います ( 第 11.10.4 項 を参照してください )。

次の例では,クラスタ単位の論理名テーブルを作成する方法を示します。

$ CREATE/NAME_TABLE/PARENT_TABLE=LNM$CLUSTER_TABLE - 
_$ new_clusterwide_logical_name_table

新しいクラスタ単位の論理名テーブルに常駐するクラスタ単位の論理名を作成するには,次の例に示すように, DEFINE コマンドで新しいクラスタ単位の論理名を定義して,新しいテーブルの名前を /TABLE 修飾子で指定します。

$ DEFINE/TABLE=new_clusterwide_logical_name_table logical_name - 
_$ equivalence_string



11.10.4 特権とアクセスの必要条件

特権を持つユーザは,特殊目的のために共用論理名テーブルを作成できます。例えば,アプリケーションで 1 つ以上の共用論理名テーブルを作成すると,ファイルの記憶位置などの情報をアプリケーション・ユーザとやり取りすることができます。

$ CREATE/NAME_TABLE APPX_FILE_LOCATOR /PARENT=LNM$SYSTEM_DIRECTORY - 
_$ /PROTECTION = (S:RWD,O:RWD,G:R,W:R) 

共用論理名テーブルを作成するには,次のものを備えている必要があります。

  • テーブルへの CREATE (C) アクセス

  • SYSPRV 特権または LNM$SYSTEM_DIRECTORY への WRITE (W) アクセス

共用論理名テーブルを削除するには,次のものを備えている必要があります。

  • テーブルへの DELETE (D) アクセス

  • SYSPRV 特権または LNM$SYSTEM_DIRECTORY への WRITE (W) アクセス



11.10.5 省略時保護の変更

オペレーティング・システムは,システムまたはユーザが作成する共用論理名テーブルに対して,省略時の保護を提供します。この省略時保護はシステム管理者またはテーブル所有者が変更できるセキュリティ・プロファイルに格納されます。詳細については,『OpenVMS Guide to System Security』を参照してください。

自分が作成したテーブルの省略時保護は,次の方法で変更できます。

  • DCL の CREATE/NAME_TABLE コマンドで /PROTECTION 修飾子を使用する方法。このコマンドでは UICベースの保護を設定できる。

  • すでに作成されているテーブルに対して,ACL エディタまたは SET SECURITY/ACL/OBJECT_TYPE=LOGICAL_NAME_TABLE コマンドで ACL 保護を適用する方法。

共用論理名テーブルのACLは,システムのブート間には保存されません。システムがブートされるごとにこれらの論理名テーブルで ACL を再設定する必要があります。

共用論理名テーブルへのACL保護の適用についての詳細は,『OpenVMS DCL ディクショナリ』の SET SECURITY/ACL コマンドを参照してください。

11.10.6 論理名テーブルへの制限値の設定

制限は,所定の論理名テーブルが消費することのできるシステム資源の量を制限するために使用します。プロセス,グループ,およびシステム論理名テーブルには,無限の制限があります。省略時設定により,論理名テーブルを作成すると,これも無限の制限を持つことになります。

制限値を指定して,作成する論理名テーブルのサイズをバイト単位で制限することができます。論理名が作成される前に,そのデータ構造のサイズがテーブルの残りの制限値に対してチェックされます。新しいエントリに使用できる制限値が十分でないと,システムはエラー・メッセージを表示します。

いったんテーブルに制限値を設定してしまうと,変更することはできません。テーブルに余地がなくなった場合は,DEASSIGNコマンドを使用して古い論理名を削除します。これで新しい論理名のためにスペースを解放できます。

次の例では,論理名テーブル ABC が作成され, 500 バイトの制限値を与えられます。

$ CREATE/NAME_TABLE/QUOTA=500 ABC



ジョブ論理名テーブルは,共用可能テーブルです。ジョブ論理名テーブルの制限値は,テーブルの作成時に設定されます。制限値は,次の基準の1つまたはそれ以上で決まります。

  • システム利用者登録ファイル SYSUAF.DAT でユーザに設定されている JTQUOTA 値 ( プロセスによって起動された最初のイメージがシステム・イメージ LOGINOUT であった場合 )

  • Create Process ($CREPRC) システム・サービスへの呼び出しで指定される PQL$_JTQUOTA 制限リスト値

  • 独立プロセスを作成するために使用する RUN コマンド上の /JOB_table_QUOTA 修飾子の値

  • SYSGEN パラメータ PQL_DJTQUOTA ( 先行する条件のいずれも適用しない場合 )。このパラメータの標準の省略時設定値は,1024 バイトですが,システム・マネージャはこれを変更することができます。 System Generation ユーティリティ (SYSGEN) は,パラメータ PQL_DJTQUOTA ( 省略時設定のジョブ論理名テーブルの制限 ) および PQL_MJTQUOTA ( 最小ジョブ論理名テーブルの制限 ) の値を表示して設定するために使用されます。

ジョブ論理名テーブルに対する制限値0は,制限がないことを示します。あらゆる実用的な目的からも,制限は無限にされます。

11.11 論理名変換の順序の変更

LNM$FILE_DEV は,検索される論理名テーブル,および論理名変換の検索順序を定義します。一般には,省略時設定の検索順序を変更する必要はありません。ただし,新しい,プロセス固有の論理名テーブルの名前を追加して, LNM$FILE_DEV で指定されたテーブルより先に検索されるようにしたい場合もあります。同様に,システム管理者が,1 つ以上の共用可能論理名テーブルの名前を追加して, LNM$FILE_DEV で指定されたテーブルより先に検索されるようにしたい場合もあります。

システムが最初に検索する論理名の新しいテーブルで LNM$FILE_DEV のプロセス固有定義を作成するには,次の手順にしたがいます。

  1. 新しい論理名を含むファイルを作成します。

  2. この新しいファイルを新しい論理名テーブルに変換します。

  3. プロセス論理名ディレクトリ・テーブルを親テーブルとして指定して, LNM$FILE_DEV の固有定義を作成します。

  4. LNM$FILE_DEV の固有定義のテーブル名リストの始めに新しい論理名テーブル名を追加します。

次の例では,新しい論理名テーブル,NEWTAB が作成され,最初に検索されるテーブルに NEWTAB をリストして LNM$FILE_DEV のプロセス固有定義が作成されます。

$ CREATE/NAME_TABLE NEWTAB
$ DEFINE/TABLE=LNM$PROCESS_DIRECTORY LNM$FILE_DEV -
_$ NEWTAB, LNM$PROCESS, LNM$JOB, LNM$GROUP, LNM$SYSTEM

上記の例では,次の理由からシステムは NEWTAB テーブルを最初に検索します。

  • LNM$FILE_DEV のプロセス固有定義が,省略時設定のシステム・バージョンの代わりに使用されている。

  • LNM$FILE_DEV内では,NEWTAB が他の論理名テーブルより前にリストされている。

LNM$FILE_DEV のシステム定義に新しい論理名テーブルを追加する場合には, SYSNAM または SYSPRV 特権を備えている必要があります。

次の例は, NEWTAB がプロセス固有テーブルではなく共用可能テーブルとして作成される点を除いては,以前のものと同様です。

$ CREATE/NAME_TABLE/PARENT=LNM$SYSTEM_DIRECTORY NEWTAB
$ DEFINE/TABLE=LNM$SYSTEM_DIRECTORY LNM$FILE_DEV -
_$ NEWTAB, LNM$PROCESS, LNM$JOB, LNM$GROUP, LNM$SYSTEM

LNM$FILE_DEV によって定義された検索リストから論理名テーブルを削除することもできます。次の例では,LNM$FILE_DEV のプロセス固有定義が,プロセスおよびシステム論理名テーブルだけを含むように作成されます。プロセス固有定義には LNM$JOB および LNM$GROUP が含まれないので,論理名を変換する必要のある後続のコマンドはそのジョブまたはグループ・テーブルを検索しません。

$ DEFINE/TABLE=LNM$PROCESS_DIRECTORY - 
_$ LNM$FILE_DEV LNM$PROCESS,LNM$SYSTEM



11.12 論理名テーブルの削除

論理名テーブルを削除するには,それを含むテーブル ( システムまたはプロセス・ディレクトリ論理名テーブル ) とテーブルの名前を指定します。親論理名テーブルを削除すると,子孫のテーブルにあるすべての論理名 ( と子孫のテーブル自身 ) が削除されます。

共用可能論理名テーブルを削除するには,テーブルへの DELETE アクセスまたは SYSPRV 特権を備えている必要があります。

次の例では,コマンドが論理名 WORKFILE を削除します。

$ DEASSIGN WORKFILE

次の例では,コマンドがプロセス・ディレクトリ・テーブルから論理名テーブル TAX を削除します。

$ DEASSIGN/TABLE=LNM$PROCESS_DIRECTORY TAX



11.13 プロセスパーマネント論理名

DCL は,ログイン時にプロセスパーマネント論理名を作成します。これらの名前の定義は,プロセスの期間中にわたり有効です。これらの論理名を再割り当てすることはできません ( DEFINE コマンドに別の等価文字列を指定して ) これらを再定義することはできますが,再定義された名前が後に再割り当てされると,プロセスパーマネント名は再設定されます。

次のプロセスパーマネント論理名が使用できます。

  • SYS$INPUT
    省略時設定の入力装置またはファイルを参照する論理名。

  • SYS$OUTPUT
    省略時設定の出力装置またはファイルを参照する論理名。

  • SYS$ERROR
    システムがメッセージを書き込む省略時設定の装置またはファイルを参照する論理名。

  • SYS$COMMAND
    ログイン時に SYS$INPUT の値を参照する論理名。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.