|
『Oracle Tuxedoコマンド・リファレンス』<Default ?Font>は、Oracle Tuxedoソフトウェアに含まれるシェルレベルのコマンドをアルファベット順に説明します。
特に指定がないかぎり、リファレンス・ページの形式で説明されているコマンドは、下記の構文に従ってオプションや引数を受け付け、次に説明するように解釈されます。
name [ -option .. . ] [cmdarg . . . ]
noargletter
optarg
argletter (引数文字)を満たす文字列。1つのargletter (引数文字)の次に来る複数のoptargは、カンマで区切るか、あるいはホワイトスペースで区切って引用符で囲む必要があります。
cmdarg
-
--
[ ]
{ }
. . .
bldc_dce - OSF/DCEを介して呼び出すことができるOracle Tuxedo ATMIクライアントを作成
bldc_dce [-ooutput_file] [-iidl_options] [-ffirstfiles]
[-llastfiles] [idl_file. . .]
bldc_dceは、すべての入力IDLソース・ファイルおよび関連するACFソース・ファイルを解析し、それらをCのソース・ファイルとオブジェクト・ファイル、およびOSF/DCEライブラリと組み合せて、Oracle Tuxedo ATMIクライアントを生成します。この生成されたOracle Tuxedo ATMIクライアントは、DCE RPC (つまりDCE RPCクライアント)を介して呼び出すことができます。
コマンドライン引数には、入力IDLソース・ファイルと、IDLコンパイラの動作を制御するオプションを指定します。使用できるオプションは次のとおりです。
-o output_file
-i idl_options
-no_mepvオプションを指定できます。
-f firstfiles
OSF/DCEライブラリより前に取り込んでコンパイルする、コンパイラ・オプション、Cソース・ファイル、およびCオブジェクト・ファイルを指定します。
-l lastfiles
blds_dce - OSF/DCEを呼び出すOracle Tuxedo ATMIサーバーを作成
blds_dce [-ooutput_file] [-iidl_options] [-ffirstfiles]
[-llastfiles] [-sservice] [idl_file. . .]
blds_dceは、すべての入力IDLソース・ファイルおよび関連ACFソース・ファイルを解析し、それらをCソース・ファイルとCオブジェクト・ファイル、およびOSF/DCEライブラリと組み合せて、DCE RPC呼出しを作成できるOracle Tuxedo ATMIサーバーを生成します。このコマンドの主な使用目的は、Oracle TuxedoシステムからOSF/DCEへのゲートウェイ・プロセスを作成することです。
コマンドライン引数には、入力IDLソース・ファイルと、IDLコンパイラの動作を制御するオプションを指定します。使用できるオプションは次のとおりです。
-o output_file
-i idl_options
-no_mepvオプションを指定できます。
-f firstfiles
OSF/DCEライブラリより前に取り込んでコンパイルする、コンパイラ・オプション、Cソース・ファイル、およびCオブジェクト・ファイルを指定します。
-l lastfiles
-s service[,service . . .]
buildclient - Oracle Tuxedo ATMIクライアント・モジュールを作成
buildclient [ -C ] [ -v ] [ {-r rmname | -w } ] [ -o name]
[ -f firstfiles] [ -l lastfiles] [ -k ]buildclientは、Oracle Tuxedo ATMIのクライアント・モジュールを構築するときに使用します。このコマンドは、-fおよび-lオプションで指定されるファイルと標準Oracle Tuxedo ATMIライブラリを組み合せて、ロード・モジュールを作成します。ロード・モジュールは、使用しているオペレーティング・システム用に定義されたデフォルトのC言語コンパイル・コマンドを使用し、buildclientによって構築されます。UNIXシステム用のデフォルトのC言語コンパイル・コマンドは、UNIXシステムのリファレンス・マニュアルで説明されているcc(1)コマンドです。
-v
-w
-rオプションとともには使用できません。
-r rmname
rmnameは、$TUXDIR/udataobj/RMにあるリソース・マネージャの表にあるものでなければなりません。このファイルの各行は次のような形式になります。
rmname:rmstructure_name:library_names (詳細は、「buildtms(1)」を参照してください)。rmnameの値を使用することにより、$TUXDIR/udataobj/RMにあるエントリは、リソース・マネージャに関連したライブラリを自動的に含み、トランザクション・マネージャとリソース・マネージャ間のインタフェースを正しく設定するのに使用されます。他の値は、リソース・マネージャの表に追加されているものを指定できます。-rオプションが指定されない場合のデフォルト設定では、クライアントはリソース・マネージャに関連しません。UBBCONFIG(5)のリファレンス・ページを参照してください。
-o
-f
buildclientのコンパイルおよびリンク・フェーズの最初に、Oracle Tuxedo ATMIライブラリより前に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。コンパイラ・オプションおよび引数を含むように指定する場合は、以下に説明するCFLAGSおよびALTCFLAGS環境変数を使用します。
-l
buildclientのコンパイルおよびリンク・フェーズの最後で、Oracle Tuxedoライブラリの後に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。
-C
| 注意: | このファイルの生成後の内容は、リリースによって異なる場合があります。このファイルにエクスポーズされているデータ構造やインタフェースに依存しないようにしてください。これは、ビルド時の問題のデバッグを支援するためのオプションです。 |
TUXDIR
CC
buildclientは通常、デフォルトのC言語コンパイル・コマンドを使用してクライアント実行可能コードを生成します。デフォルトのC言語コンパイル・コマンドは、サポートされているオペレーティング・システムごとに定義されており、UNIXシステムの場合はcc(1)です。代替コンパイラを指定できるようにするため、buildclientは環境変数CCが存在するかどうかを調べます。CCがbuildclientの環境に存在しない場合、またはこの環境変数が文字列""である場合、buildclientはデフォルトのC言語コンパイラを使用します。環境内にCCが存在する場合、実行されるコンパイラの名前がCCの値となります。
CFLAGS
CFLAGSは、コンパイラ・コマンドラインの一部として引き渡される引数のセットを指定するときに使用します。この変数は、コマンドライン・オプション「-I${TUXDIR}/include」とともにbuildclientにより自動的に引き渡されます。CFLAGSがbuildclientの環境に存在しない場合、またはこの環境変数が文字列""である場合、buildclientはコンパイラ・コマンドライン引数を追加しません。
ALTCC
-Cオプションが指定されると、通常、buildclientはOracle Tuxedoシェルcobccを使用します。このシェルがcobを呼び出して、クライアントの実行可能ファイルを生成します。代替コンパイラを指定できるようにするため、buildclientは環境変数ALTCCが存在するかどうかを調べます。ALTCCがbuildclientの環境に存在しない場合、またはこの環境変数が文字列""である場合、buildclientはcobccを使用します。環境内にALTCCが存在する場合、実行されるコンパイラ・コマンドの名前がALTCCの値となります。 | 注意: | Windowsシステムでは、ALTCCおよびALTCFLAGS環境変数は使用できません。これらの変数を設定すると、予想外の結果が生じます。まずCOBOLコンパイラを使用してアプリケーションをコンパイルし、次に生成されたオブジェクト・ファイルをbuildclient(1)コマンドに渡す必要があります。 |
ALTCFLAGS
-I${TUXDIR}/include」のように指定します。このオプションはbuildclientによって自動的に渡されます。-Cオプションを使用する場合、コンパイラのオプションと引数をbuildclient -fオプションに指定すると、エラーが生成されます。ALTCFLAGSに指定してください。設定しないと、上記のCFLAGSで使用されるのと同じ値に設定されます。 | 注意: | 1. ALTCFLAGSは、MicroFocus COBOLコンパイラでのみ機能します。他のサポートされているCOBOLコンパイラ(つまり、IBMCOBOLまたはAccuCOBOL)では、CFLAGSで十分に対応できます。2. ALTCC環境変数の説明の下の注意を参照してください。 |
COBOPT
COBCPY
buildclientでリンクするかどうかを示します。環境変数の値には「Yes」または「No」を指定します。「Yes」に設定すると静的バージョンのlibcobatmiライブラリが使用され、それ以外の場合は共有バージョンが使用されます。この環境変数を指定しないと、共有バージョンのlibcobatmiライブラリがデフォルトで使用されます。 | 注意: | 10.0より前のTuxedoリリースの場合、buildserverは、静的バージョンのlibcobatmiライブラリにリンクします。 |
IBMCobol」が指定されると、IBMCOBOLコンパイラが使用されます。 パラメータが指定されないと、標準のCOBOLコンパイラが使用されます。
buildclientのコンパイルやリンク編集の段階でcc(1)に渡すユーザー・ファイルが他にある場合は、まず、Oracle Tuxedo ATMIライブラリの前に、これらのファイルを環境変数TM_COB_CC_FILESに指定する必要があります。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。この環境変数は、-Cオプションが指定され、環境変数COBが「AcuCobol」に設定されている場合にのみ有効です。 | 注意: | ACUCOBOL CVMで使用されるACUCOBOLのシステム・ライブラリおよびオブジェクト・ファイルは、ファイル・リストに含める必要があります。 |
| 注意: | ファイルdirect.cは、ACUCOBOLがC外部変数およびCOBOLプログラムの関数にアクセスするために使用されます。プログラマがdirect.cをサード・パーティのソフトウェアをサポートするように変更した場合、変更されたdirect.cは$ACUCOBOL/libディレクトリ下に配置する必要があります。 |
IBMCOBOL
| 注意: | IBM COBOL 2.0および3.1ではCコンパイラのメッセージはサポートされません。 「 LANG=C」と指定すると、COBOL 2.0はエラーを返し、コンパイラが終了します。COBOL 3.1では警告が返されます。IBM COBOL 2.0を使用する場合は、「 LANG=en_US」と指定します。IBM COBOL 3.1では「 LANG=en_US」は必要ありません。 |
LD_LIBRARY_PATH (UNIXシステムの場合)
LD_LIBRARY_PATHには、Oracle Tuxedoシステムの共有オブジェクトに加えて、COBOLコンパイラが使用する共有オブジェクトが存在するディレクトリを指定します。HP-UXシステムではSHLIB_PATH環境変数を、AIXシステムではLIBPATH環境変数を使用します。
LIB (Windows NTシステム)
buildclientコンパイル・ツールは、以下のプラットフォームで使用できます。
buildclientコマンドラインで指定するファイル名は、お使いのオペレーティング・システムの構文とセマンティクスに従ってください。
リスト1に、一般的なCOBOLコンパイラの例を示します。
CC=ncc CFLAGS="-I /APPDIR/include"; export CC CFLAGS
buildclient -o empclient -f emp.c -f "userlib1.a userlib2.a"
COBCPY=$TUXDIR/cobinclude
COBOPT="-C ANS85 -C ALIGN=8 -C NOIBMCOMP -C TRUNC=ANSI -C OSEXT=cbl"
COBDIR=/usr/lib/cobol LD_LIBRARY_PATH=$COBDIR/coblib:$TUXDIR/lib
export COBOPT COBCPY COBDIR LD_LIBRARY_PATH
buildclient -C -o empclient -f name.cbl -f "userlib1.a userlib2.a"
リスト2に、ACUCOBOLコンパイラの例を示します。
TUXDIR=/opt/tuxedo10.0
TM_COB_STATIC=no
COB=AcuCobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8"
TM_COB_VERSION=7.2
ACUCOBOL=/opt/AcuCobol-7.2.1
TM_COB_CC_FILES="-lruncbl -lclnt -lacvt -lfsi -laregex -lacuterm -lextfh -laxml -lexpat -lvision -lesql -lacme -lz -lm"
LD_LIBRARY_PATH=$ACUCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT TM_COB_VERSION ACUCOBOL TM_COB_CC_FILES LD_LIBRARY_PATH
buildclient -C -o CSIMPCL -f CSIMPCL.cbl
リスト3に、IBMCOBOLコンパイラの例を示します。
TUXDIR=/opt/tuxedo10.0
TM_COB_STATIC=no
COB=IBMCobol
IBMCOBOL=/usr/lpp/cobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8" LD_LIBRARY_PATH=$IBMCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT IBMCOBOL LD_LIBRARY_PATH
buildclient -C -o CSIMPCL -f CSIMPCL.cbl
buildserver(1)、buildtms(1)、compilation(5)
UNIXシステムのリファレンス・マニュアルのcc(1)、ld(1)
buildmqadapter - TM_MQI、TM_MQO、およびTMQUEUE_MQMサーバーをリンク
buildmqadapter [-v] [-r rmname][-c] [-t]
buildmqadapterはTM_MQI、TM_MQO、およびTMQUEUE_MQMサーバーを作成し、これらのサーバーを$TUXDIR/bin/TM_MQI、$TUXDIR/bin/TM_MQO、および$TUXDIR/bin/TMQUEUE_MQMにインストールします。
| 注意: | 出力ファイルを別の場所に配置する必要がある場合、コマンドbuildTM_MQI(1)、buildTM_MQO(1)、およびbuildTMQUEUE_MQM(1)をそれぞれかわりに使用する必要があります。 |
buildmqadapterで作成されるサーバーは、Tuxedo MQ AdapterがIBM WebSphere MQとのやり取りに使用します。詳細は、Oracle MQ Adapter for Tuxedo 11gR1ユーザーズ・ガイドを参照してください。
ユーザーは、MQ Adapterサーバー・ファイルを作成または上書きするためのパーミッションを持つ必要があります。
buildmqadapterはbuildserverコマンドを呼び出してそれぞれのMQ Adapterサーバーを作成します。
あらかじめリンクされたオブジェクトではなく、buildmqadapterを使用してMQ Adapterサーバー・ファイルを作成することで、Tuxedo管理者は次を構成できます。
buildmqadapterでは、MQリソース・マネージャのTMSサーバーが作成されないため、Tuxedo管理者はある時点でbuildtmsを実行してWebSphere MQ TMSサーバーを作成する必要があります。
$TUXDIR/udataobj/RMにあるリソース・マネージャ表に登録されていなければなりません。rm_nameの値に対応するエントリは、リソース・マネージャに対する正しいライブラリを自動的に組み込み、かつトランザクション・マネージャとリソース・マネージャとの間のインタフェースを正しく設定(xa_switch_t構造体を使用して)するときに使用します。このパラメータのデフォルト値はMQSeries_XA_RMIです。
buildmqadapterはbuildserverコマンドを使用して出力ファイルを生成します。buildserverは、コンパイラおよびコンパイラ・フラグに関してそれぞれCCおよびCFLAGS環境変数を使用します(設定されている場合)。詳細は、「 buildserver(1)」を参照してください。
buildnetclient — Oracle Tuxedo .NETワークステーション・クライアント・モジュールを作成
buildnetclient [-v] [-o outfile] [-csflag flagstring] [.cs source files] [.dll assembly files] [.netmodule module files]
buildnetclientは、Tuxedo .NETワークステーション・クライアント・アプリケーションを構築するときに使用されます。このコマンドは、.csソース・ファイルの引数で指定されるファイルを、.dllアセンブリ・ファイル、.netmoduleモジュール・ファイルをTuxedo .NETワークステーション・クライアントのラッパー・ライブラリと組み合せて、クライアント・アプリケーションを形成します。その後、Microsoftの.NET Framework環境で提供されるC#コンパイラである(csc.exe)を使用してクライアント・アプリケーションが作成されます。
csflagオプションを設定すると、C#コンパイラに渡すオプションを指定できます。
| 注意: | 複数のC#コンパイラ・オプションを指定できます。複数のオプションを指定するときには、空白で区切り、引用符で囲む必要があります。 |
-v
-o outfile
Mainが含まれるクラスを持つC#のソース・ファイルの名前を取ってアプリケーション・ファイルの名前が付けられます。ファイル名の拡張子は、そのアプリケーションが実行されるオペレーティング・システムによって異なります(Windowsシステムの場合は拡張子は.exeになります)。
-csflag flagstring
.cs source files
.dll assembly files
.netmodule module files
buildnetclientは、コマンドラインから渡された引数を解析して、C#コンパイラを呼び出す別のコマンドラインを作成し、実行可能アプリケーションをビルドします。
たとえば、[buildnetclient -o t1.exe, t1.cs]は、Windowsシステム上ではbuildnetclientによってcsc /out:t1.exe /t:exe /r:%TUXDIR%\bin\libwscdnet.dll t1.csに変換されます。
次の例では、2つのC#ソース・ファイル、t1.cs、t2.csと、モジュール・ファイルt3.netmoduleを指定して、実行可能アセンブリfirst.exeをビルドする場合を示しています。この例では、t1.csから、これらのファイルと同じディレクトリにあるライブラリ・アセンブリfunc.dllが提供するメソッドを呼び出しています。
[buildnetclient -o first.exe func.dll t1.cs t3.netmodule t2.cs]
『Tuxedo .NETワークステーション・クライアントの使用』のTuxedo .NETワークステーション・クライアント・アプリケーションの作成に関する項<Default ?Font>
buildobjclient - CORBAクライアント・アプリケーションを作成
buildobjclient [-v][-o name] [-f firstfile-syntax]
[-l lastfile-syntax] -P
buildobjclientコマンドを使用して、CORBAクライアント・アプリケーションを構築できます。このコマンドは、-fおよび-lオプションで指定されるファイルと標準のCORBAライブラリを組み合せて、クライアント・アプリケーションを形成します。クライアント・アプリケーションは、使用しているオペレーティング・システム用に定義されたデフォルトのC++言語コンパイル・コマンドによって作成されます。
指定したすべての.cおよび.cppファイルは、使用しているオペレーティング・システム用のコンパイル・システムを1回呼び出すことによってコンパイルされます。呼び出すコンパイラを指定するには、CC環境変数にコンパイラの名前を指定します。CC環境変数を定義していない状態でbuildobjclientが呼び出された場合は、すべての.cおよび.cppファイルがコンパイル時に、使用しているオペレーティング・システム用のデフォルトのC++言語コンパイル・コマンドが呼び出されます。
ユーザーは、CFLAGSまたはCPPFLAGS環境変数を使用すると、コンパイラに渡すオプションを指定できます。CPPFLAGSの値は、CFLAGSを定義していない状態でbuildobjclientが呼び出された場合に使用されます。
-v
-o name
client<.type>になります。typeは拡張子で、アプリケーションのオペレーティング・システムによって異なります。たとえば、UNIXシステムではtypeは付きませんが、Windowsシステムではtypeは.EXEになります。
-f firstfile-syntax
buildobjclientのコンパイルとリンクの段階で、最初にインクルードすべきファイルを指定します。指定したファイルは、CORBAライブラリよりも前にインクルードされます。表2に、ファイルを指定する3つの方法を示します。
| 注意: | 名前に空白が含まれているファイルは指定できません。 |
| 注意: | -fオプションは何度でも指定できます。 |
-l lastfile-syntax
buildobjclientのコンパイルとリンクの段階で、最後にインクルードすべきファイルを指定します。指定したファイルは、CORBAライブラリよりも後にインクルードされます。表3に、ファイルを指定する3つの方法を示します。
| 注意: | -lオプションは何度でも指定できます。 |
-P
Callbacksラッパー・クラスを使用できます。生成される共同クライアント/サーバーは、<Default ?Font>Oracle Tuxedo TP Frameworkで提供されるオブジェクト状態管理とトランザクション管理は利用できません。クライアントを生成するときに、-PスイッチをIDLコンパイラに渡しておく必要があります。TP Frameworkで提供されるすべてのサポートを備えたサーバーを構築するにはbuildobjserverを使用します。デフォルトでは、サーバー・ライブラリにリンクしません。つまり、デフォルトでは、共同クライアント/サーバーではなくクライアントのみが作成されます。
-hまたは -?
TUXDIR
CC
.cまたは.cppのすべてのファイルに使用するコンパイラを指定します。定義しない場合は、すべての.cおよび.cppファイルのコンパイル時に、使用しているオペレーティング・システム用のデフォルトのC++言語コンパイル・コマンドが呼び出されます。
CFLAGS
.cまたは.cppのファイルのコンパイラ・コマンドラインの一部として渡す引数を示します。buildobjclientコマンド環境内にCFLAGSが存在しない場合は、CPPFLAGS環境変数がチェックされます。
CPPFLAGS
| 注意: | CFLAGS環境変数によって渡される引数は、CPPFLAGS変数より優先されます。 |
buildobjclientコマンドによって自動的に渡されるコマンドライン・オプション"-I$(TUXDIR)/include" (UNIXシステムの場合)または/I%TUXDIR%¥ (Windowsシステムの場合)に追加されます。CPPFLAGSがbuildobjclientコマンド環境に存在しない場合、コンパイラ・コマンドは追加されません。
LD_LIBRARY_PATH (UNIXシステムの場合)
SHLIB_PATH環境変数を、AIXシステムではLIBPATH環境変数を使用します。
LIB (Windowsシステムの場合)
buildobjclientコマンドは、クライアントのみのCORBAシステムではサポートされません。
次の例では、Windowsシステム上でCORBAクライアント・アプリケーションを作成します。
set CPPFLAGS=-I%APPDIR%\include
buildobjclient -o empclient.exe -f emp_c.cpp -l userlib1.lib
次の例では、cシェルを使用するUNIXシステム上でCORBAクライアント・アプリケーションを作成します。
setenv CPPFLAGS=$APPDIR/include
buildobjclient -o empclient -f emp_c.cpp -l userlib1.a
buildobjserver - CORBAサーバー・アプリケーションを構築
buildobjserver [-v] [-oname] [-ffirstfile-syntax]
[-llastfile-syntax] [-rrmname][-t]
buildobjserverコマンドを使用して、<Default ?Font>CORBAサーバー・アプリケーションを構築できます。このコマンドは、メイン・ルーチンで-fおよび-lオプションによって指定されるファイルと標準の<Default ?Font>CORBAライブラリを組み合せて、サーバー・アプリケーションを形成します。サーバー・アプリケーションは、プラットフォームのデフォルトのC++コンパイラによって作成されます。
指定したすべての.cおよび.cppファイルは、使用しているオペレーティング・システム用のコンパイル・システムを1回呼び出すことによってコンパイルされます。呼び出すコンパイラを指定するには、CC環境変数にコンパイラの名前を指定します。CC環境変数を定義していない状態でbuildobjserverが呼び出された場合は、すべての.cおよび.cppファイルがコンパイル時に、使用しているオペレーティング・システム用のデフォルトのC++言語コンパイル・コマンドが呼び出されます。
ユーザーは、環境変数CFLAGSまたはCPPFLAGSを設定することにより、コンパイラに渡すオプションを指定できます。buildobjserverの呼出し時に、CFLAGSは定義されていないが、CPPFLAGSが定義されている場合、このコマンドはCPPFLAGSの値を使用します。
-v
-o name
server.typeになります。typeは拡張子で、アプリケーションが対応するオペレーティング・システムを示します。たとえば、UNIXシステムでserverと呼ばれるアプリケーションは、Windows NTシステムではserver.EXEと呼ばれます。
-f firstfile-syntax
buildobjserverコマンドのコンパイルおよびリンク・フェーズで最初に(つまり、CORBAライブラリの前に)取り込むファイルを指定します。ファイルを指定する2種類の方法については、「最初に取り込むファイルの指定方法」の表を参照してください。
-l lastfile-syntax
buildobjserverコマンドのコンパイルおよびリンク・フェーズで最後に(つまり、CORBAライブラリの後に)取り込むファイルを指定します。ファイルを指定する2種類の方法については、「最後に取り込むファイルの指定方法」の表を参照してください。
-r rmname
rmnameは、リソース・マネージャ表に指定されている必要があります。この表は、UNIXシステムでは$TUXDIR/udataobj/RMに、Windows NTシステムでは%TUXDIR%\udataobj\RMに格納されています。 このファイルの各エントリの形式は、rmname:rmstructure_name:library_namesです。rmname値を使用することで、$TUXDIR/udataobj/RMまたは%TUXDIR%\udataobj\RM内のエントリを、リソース・マネージャに関連付けられているライブラリに自動的にインクルードし、トランザクション・マネージャとリソース・マネージャの間のインタフェースを設定できます。値TUXEDO/SQLを指定すると、Oracle TuxedoシステムとSQLリソース・マネージャのライブラリがインクルードされます。他の値は、リソース・マネージャの表に追加されているものを指定できます。-rオプションが指定されていない場合は、デフォルトでnullリソース・マネージャが使用されます。
-hまたは -?
-t
UBBCONFIGファイルのMAXDISPATCHTHREADSパラメータで1を超える値を指定することもできます。指定しない場合、CORBAサーバーはシングル・スレッドのアプリケーションとして動作します。
TUXDIR
CC
CFLAGS
.cまたは.cppファイル拡張子を持つファイルのコンパイラ・コマンドラインの一部として渡される引数を指定します。CFLAGSがbuildobjserverコマンド環境で使用できない場合、buildobjserverコマンドはCPPFLAGS環境変数があるかどうかを調べます。
CPPFLAGS
| 注意: | CFLAGS環境変数によって渡される引数は、CPPFLAGS環境変数より優先されます。 |
.cまたは.cppファイル拡張子を持つファイルのコンパイラ・コマンドラインの一部として渡される引数を指定します。このオプションは、UNIXシステムのコマンドライン・オプション-I$TUXDIR/include、またはWindows NTシステムのコマンドライン・オプション/I%TUXDIR%\includeへの追加として、buildobjserverコマンドによって自動的に渡されます。buildobjserverコマンド環境内でCPPFLAGSが利用できない場合、コンパイラ・コマンドは追加されません。
LD_LIBRARY_PATH (UNIXシステムの場合)
SHLIB_PATH環境変数を、AIXシステムではLIBPATH環境変数を使用します。
LIB (Windows NTシステム)
buildobjserverコマンドは、クライアントのみの<Default ?Font>CORBAシステムではサポートされません。
次の例では、emp_s.cppおよびemp_i.cppファイルを使用して、UNIXシステム上で<Default ?Font>CORBAサーバー・アプリケーションを作成します。
buildobjserver -r TUXEDO/SQL -o unobserved
-f “emp_s.cpp emp_i.cpp”次の例は、buildobjserverコマンドで環境変数CCおよびCFLAGSを使用する方法を示しています。また、-fおよび-lmオプションを使用して、BourneまたはKornシェルで数学ライブラリをリンクする方法も示しています(UNIXシステム)。
CFLAGS=-g CC=/bin/cc \
buildobjserver -r TUXEDO/SQL -o TLR -f TLR.o -f util.o -l -lm
次の例は、リソース・マネージャを指定せずにUNIXシステム上でbuildobjserverコマンドを使用する方法を示しています。
buildobjserver -o PRINTER -f PRINTER.o
以下では、サポートされている各オペレーティング・システム・プラットフォーム用のRMファイルの例を示します。
Oracle_XA;xaosw;C:\Orant\rdbms73\xa\xa73.lib
C:\Orant\pro22\lib\msvc\sqllib18.lib
Oracle_XA:xaosw:-L$ORACLE_HOME/rdbms/lib
-L$ORACLE_HOME/precomp/lib -lc
-L/home4/m01/app/oracle/product/7.3.2/lib -lsql -lclntsh
-lsqlnet -lncr -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6
-lcore3 -lsocket -lnsl -lm -ldl -lthread
Oracle_XA:xaosw:-L${ORACLE_HOME}/lib -lxa
${ORACLE_HOME}/lib/libsql.a -lsqlnet -lncr -lsqlnet
${ORACLE_HOME}/lib/libclient.a -lcommon -lgeneric -lsqlnet
-lncr -lsqlnet ${ORACLE_HOME}/lib/libclient.a -lcommon
-lgeneric -lepc -lepcpt -lnlsrtl3 -lc3v6 -lcore3
-lnlsrtl3 -lcore3 -lnlsrtl3 -lmOracle_XA:xaosw:-L${ORACLE_HOME}/lib -lxa -lsql -lsqlnet
-lncr -lclient -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6
-lcore3 -lm -lldOracle_XA:xaosw:-L${ORACLE_HOME}/lib -lclntsh
buildserver - Oracle Tuxedo ATMIのサーバーのロード・モジュールを構築
buildserver [-C] [-M] [-s services[:func[()]]][-v] [-o outfile] [-f firstfiles] [-l lastfiles] [{-r|-g} rmname] [-E envlabel] [-t] [-z] buildserverは、Oracle Tuxedo ATMIのサーバーのロード・モジュールを構築するために使用されます。このコマンドは、-fおよび-lオプションで指定されるファイルと、標準サーバー・メイン・ルーチンおよび標準Oracle Tuxedo ATMIライブラリを組み合せて、ロード・モジュールを作成します。ロード・モジュールは、buildserverが呼び出すcc(1)コマンドによって構築されます。(UNIXシステム・リファレンス・マニュアルのcc(1)に関する項を参照してください。)buildserverコマンドには、以下のオプションがあります。
-v
-o outfile
-f firstfiles
buildserverのコンパイルおよびリンク・フェーズの最初に、Oracle Tuxedo ATMIライブラリより前に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。コンパイラ・オプションおよび引数を含むように指定する場合は、以下に説明するCFLAGSおよびALTCFLAGS環境変数を使用します。
-l lastfiles
buildserverのコンパイルおよびリンク・フェーズの最後で、Oracle Tuxedoライブラリの後に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。
M
-r rmname
rmnameは、$TUXDIR/udataobj/RMにあるリソース・マネージャの表にあるものでなければなりません。このファイルの各行は次のような形式になります。
rmname:rmstructure_name:library_names (詳細は、「buildtms(1)」を参照してください)。rmnameの値を使用することにより、$TUXDIR/udataobj/RMにあるエントリは、リソース・マネージャに関連したライブラリを自動的に含み、トランザクション・マネージャとリソース・マネージャ間のインタフェースを正しく設定するのに使用されます。他の値は、リソース・マネージャの表に追加されているものを指定できます。-rオプションが指定されていない場合は、デフォルトでnullリソース・マネージャが使用されます。UBBCONFIG(5)のリファレンス・ページを参照してください。 -Mが指定された場合は、buildserverによって最大32種類のリソース・マネージャが許可されます。32を上回るリソース・マネージャが-rオプションで指定されると、前のリソース・マネージャが置き換えられ、警告メッセージが出力されます。 重複したリソース・マネージャ名が指定されると、無視されて、警告メッセージが出力されます。buildserverでは、重複したライブラリが無視され(RMファイルに構成されたlibrary_namesと比較)、警告メッセージが出力されます。
-s { @filename | service[,service...][:func] | :func } ]
tmadmin(1)またはTM_MIB(5)によりファイルを取得した場合は、名前の最初の127文字だけが表示されます(servopts(5)に関する項を参照。)サービスに関連付けるすべての関数は、このオプションに指定する必要があります。ほとんどの場合、サービスは同じ名前を持つ関数によって実行されます。つまり、xサービスは関数xによって実行されます。たとえば、次を指定すると、サービスx、yおよびzと関連付けられたサーバーが構築され、それぞれが同名の関数によって処理されます:
-s x,y,z。 その他のケースでは、異なる名前の関数でサービスが実行されることもあります。「-s x,y,z:abc」と指定すると、サービスx、yおよびzに関連付けられたサーバーが構築され、それぞれが関数abcによって処理されます。 カンマの間に空白を入力しないでください。関数名の前にはコロンを付けます。別のケースでは、実行時までサービス名がわからない場合もあります。サービスを関連付けられる関数は、buildserverに指定する必要があります。サービス名をマップできる関数を指定するには、関数名の前にコロンを付けます。たとえば、「-s :pqr」と指定すると、サービスが関連付けられている関数pqrを含むサーバーが構築されます。tpadvertise(3c)を使用して、サービス名をpqr関数にマップできます。ファイル名は、前に@記号を付けると-sオプションに指定できます。このファイルの各行は、-sオプションの引数と見なされます。このファイルにコメントを入力できます。コメントは必ず「#」記号で始めます。このファイルを使用すると、サービスをマップできるすべての関数をサーバーに指定できます。 -sオプションは何回使用してもかまいません。「.」で始まるサービスはシステムが使用するために予約されています。-sオプションを使用してそのようなサービスをサーバーに組み込むと、buildserverが失敗します。
-C
buildserverは通常、ccコマンドを使用してa.outを生成します。代替コンパイラを指定できるようにするため、buildserverはシェル変数CCが存在するかどうかを調べます。CCがbuildserverの環境にない場合、または変数の値が文字列""である場合は、buildserverはコンパイラとしてccを使用します。環境内にCCが存在する場合、実行されるコンパイラの名前がCCの値となります。同様に、シェル変数CFLAGSも、コンパイラへ渡す一連のパラメータを取り込むためにチェックされます。
-k
buildserverでは、サービス表やmain()関数などのデータ構造に基づいてメイン・スタブが生成されます。このスタブは、通常どおりコンパイルされ、サーバーがビルドされたときに削除されます。このオプションは、ソース・ファイルを保持する必要があることを示します(ソース・ファイル名を表示するには、-vオプションを使用します)。 | 注意: | このファイルの生成後の内容は、リリースによって異なる場合があります。このファイルにエクスポーズされているデータ構造やインタフェースに依存しないようにしてください。これは、ビルド時の問題のデバッグを支援するためのオプションです。 |
-t
MAXDISPATCHTRHREADSに1より大きな値が設定されている場合に、このオプションを指定せずにサーバーを起動しようとすると、ユーザー・ログに警告メッセージが出力され、サーバーはシングル・スレッド操作に戻ります。
-z
TUXDIR
CC
buildserverは通常、デフォルトのC言語コンパイル・コマンドを使用してサーバー実行可能コードを生成します。デフォルトのC言語コンパイル・コマンドは、サポートされているオペレーティング・システムごとに定義されており、UNIXシステムの場合はcc(1)です。代替コンパイラを指定できるようにするため、buildserverは環境変数CCが存在するかどうかを調べます。CCがbuildserverの環境に存在しない場合、またはこの環境変数が文字列""である場合、buildserverはデフォルトのC言語コンパイラを使用します。環境内にCCが存在する場合、使用されるコンパイラの名前がCCの値となります。
CFLAGS
CFLAGSは、コンパイラ・コマンドラインの一部として引き渡される引数のセットを指定するときに使用します。この変数は、コマンドライン・オプション「-I${TUXDIR}/include」とともにbuildserverにより自動的に引き渡されます。CFLAGSがbuildserverの環境に存在しない場合、またはこの環境変数が文字列""である場合、buildserverはコンパイラ・コマンドライン引数を追加しません。
ALTCC
-Cオプションが指定されると、通常、buildserverはOracle Tuxedoシェルcobcc(1)を使用します。このシェルがcobを呼び出して、サーバー実行可能ファイルを生成します。代替コンパイラを指定できるようにするため、buildserverは環境変数ALTCCが存在するかどうかを調べます。ALTCCがbuildserverの環境に存在しない場合、またはこの環境変数が文字列""である場合、buildserverはcobccを使用します。環境内にALTCCが存在する場合、実行されるコンパイラ・コマンドの名前がALTCCの値となります。 | 注意: | Windowsシステムでは、ALTCCおよびALTCFLAGS環境変数は使用できません。これらの変数を設定すると、予想外の結果が生じます。最初にCOBOLコンパイラを使用してアプリケーションをコンパイルし、次に生成されたオブジェクト・ファイルをbuildserver(1)コマンドに渡します。 |
ALTCFLAGS
ALTCFLAGSには、-Cオプションを指定した場合に、COBOLコンパイラ・コマンドラインの一部として渡す追加の引数を指定します。この変数は、コマンドライン・オプション「-I${TUXDIR}/include」とともにbuildserverにより自動的に引き渡されます。-Cオプションを使用する場合、コンパイラのオプションと引数をbuildserver -fオプションに指定すると、エラーが生成されます。ALTCFLAGSに指定してください。設定しないと、上記のCFLAGSで使用されるのと同じ値に設定されます。 | 注意: | 1. ALTCFLAGSは、MicroFocus COBOLコンパイラでのみ機能します。他のサポートされているCOBOLコンパイラ(つまり、IBMCOBOLまたはAccuCOBOL)では、CFLAGSで十分に対応できます。2. ALTCC環境変数の説明の下の注意を参照してください。 |
COBOPT
COBCPY
buildserverでリンクするかどうかを示します。環境変数の値には「Yes」または「No」を指定します。「Yes」に設定すると静的バージョンのlibcobatmiライブラリが使用され、それ以外の場合は共有バージョンが使用されます。この環境変数を指定しないと、共有バージョンのlibcobatmiライブラリがデフォルトで使用されます。 | 注意: | 10.0より前のTuxedoリリースの場合、buildserverは、静的バージョンのlibcobatmiライブラリにリンクします。 |
IBMCobol」が指定されると、IBMCOBOLコンパイラが使用されます。 パラメータが指定されないと、標準のCOBOLコンパイラが使用されます。
buildserverのコンパイルやリンク編集の段階でcc(1)に渡すユーザー・ファイルが他にある場合は、まず、Oracle Tuxedo ATMIライブラリの前に、これらのファイルを環境変数TM_COB_CC_FILESに指定する必要があります。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。この環境変数は、-Cオプションが指定され、環境変数COBが「AcuCobol」に設定されている場合にのみ有効です。 | 注意: | ACUCOBOL CVMで使用されるACUCOBOLのシステム・ライブラリおよびオブジェクト・ファイルは、ファイル・リストに含める必要があります。 |
| 注意: | ファイルdirect.cは、ACUCOBOLがC外部変数およびCOBOLプログラムの関数にアクセスするために使用されます。プログラマがdirect.cをサード・パーティのソフトウェアをサポートするように変更した場合、変更されたdirect.cは$ACUCOBOL/libディレクトリ下に配置する必要があります。 |
IBMCOBOL
| 注意: | IBM COBOL 2.0および3.1ではCコンパイラのメッセージはサポートされません。 「 LANG=C」と指定すると、COBOL 2.0はエラーを返し、コンパイラが終了します。COBOL 3.1では警告が返されます。IBM COBOL 2.0を使用する場合は、「 LANG=en_US」と指定します。IBM COBOL 3.1では「 LANG=en_US」は必要ありません。 |
LD_LIBRARY_PATH (UNIXシステムの場合)
LD_LIBRARY_PATHには、Oracle Tuxedoシステムの共有オブジェクトに加えて、COBOLコンパイラが使用する共有オブジェクトが存在するディレクトリを指定します。HP-UXシステムではSHLIB_PATH環境変数を、AIXシステムではLIBPATH環境変数を使用します。
LIB (Windows NTシステム)
以前のリリースでは、sqlつまりdatabaseのgenoptionを指定するのに-gオプションを使用できました。上位互換性を保持するため、このオプションは-rオプションの同義語になっています。
buildserverコンパイル・ツールは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで使用できます。RM XAライブラリは、Windowsプラットフォームではサポートされていません。
コンパイル・システムによっては、main()へのコードの追加が必要になる場合があります。たとえば、C++でコンストラクタを初期化したり、COBOL用のライブラリを初期化するような場合です。サーバーのmain()のすべての変数宣言の直後で、すべての実行文の前に、アプリケーションのコードをインクルードするための全般的な機構が用意されています。これによって、アプリケーションは変数の宣言と文の実行を1ブロックのコードで行うことができます。アプリケーションexitは、#ifdef TMMAINEXIT #include "mainexit.h" #endifのように定義できます。この機能を使用するためには、環境変数ALTCFLAGS (COBOLの場合)またはCFLAGS (Cの場合)に"-DTMMAINEXIT"を指定し、カレント・ディレクトリにmainexit.hを置く(または-Iインクルード・オプションを使用して他のディレクトリからインクルードする)必要があります。
たとえば、Micro Focus Cobol V3.2.xでPRN番号の最後の数字が11.03より大きい場合、共有ライブラリの使用時には、main()のすべてのCOBOLルーチンの前で(おそらく関数プロトタイプ宣言の後で) cobinit()を呼び出す必要があります。これを行うには、cobinit()の呼出しが入ったmainexit.hを作成し、上記の手順に従ってください。
ACUCOBOLコンパイラでコンパイルするサーバーに関しては、servopts(5)が特別な意味を持ちます。サーバーCLOPTパラメータのuargs ('--'の後に指定する値)は、ACUCOBOL CVMを起動するために、引数としてacu_initv()サブルーチンに渡されます。
次の例は、リソース・マネージャ(-r TUXEDO/SQL)ライブラリをbuildserverコマンドラインで指定する方法を示しています。
buildserver -r TUXEDO/SQL -s OPEN_ACCT -s CLOSE_ACCT -o ACCT
-f ACCT.o -f appinit.o -f util.o
次の例は、buildserverに変数CCおよびCFLAGS変数を与える方法、および-fを使用してCC行への-lmオプションを指定して数学ライブラリをリンクする方法を示したものです。
CFLAGS=-g CC=/bin/cc buildserver -r TUXEDO/SQL -s DEPOSIT
-s WITHDRAWAL -s INQUIRY -o TLR -f TLR.o -f util.o -f -lm 次の例は、リソース・マネージャを指定せずにbuildserverコマンドを使用する方法です。
buildserver -s PRINTER -o PRINTER -f PRINTER.oリスト4に、一般的なCOBOLコンパイラの例を示します。
COBCPY=$TUXDIR/cobinclude
COBOPT="-C ANS85 -C ALIGN=8 -C NOIBMCOMP -C TRUNC=ANSI -C OSEXT=cbl"
COBDIR=/usr/lib/cobol
LD_LIBRARY_PATH=$COBDIR/coblib
export COBOPT COBCPY COBDIR LD_LIBRARY_PATH
buildserver -C -r TUXEDO/SQL -s OPEN_ACCT -s CLOSE_ACCT -o ACCT -f ACCT.o -f appinit.o -f util.o
リスト5に、ACUCOBOLコンパイラの例を示します。
TM_COB_STATIC=no
COB=AcuCobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8"
TM_COB_VERSION=7.2
ACUCOBOL=/opt/AcuCobol-7.2.1
TM_COB_CC_FILES="-lruncbl -lclnt -lacvt -lfsi -laregex -lacuterm -lextfh -laxml -lexpat -lvision -lesql -lacme -lz -lm"
LD_LIBRARY_PATH=$ACUCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT TM_COB_VERSION ACUCOBOL TM_COB_CC_FILES LD_LIBRARY_PATH
buildserver -C -sTOUPPER -sTOLOWER -o CSIMPSRV -f CTOUPPER.cbl -f CLOWER.cbl -f TPSVRINIT.cbl
リスト6に、IBMCOBOLコンパイラの例を示します。
TUXDIR=/opt/tuxedo10.0
TM_COB_STATIC=no
COB=IBMCobol
IBMCOBOL=/usr/lpp/cobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8"
LD_LIBRARY_PATH=$IBMCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT IBMCOBOL LD_LIBRARY_PATH
buildserver -C -sTOUPPER -sTOLOWER -o CSIMPSRV -f CTOUPPER.cbl -f CLOWER.cbl -f TPSVRINIT.cbl
buildtms(1)、servopts(5)、UBBCONFIG(5)
お使いのオペレーティング・システムのリファレンス・マニュアルで説明するCコンパイラとリンカーに関する記述
buildTM_MQI(1) - TM_MQIサーバーをリンク
buildTM_MQO(1)(1) - TM_MQOサーバーをリンク
buildTMQUEUE_MQM(1) - TMQUEUE_MQMサーバーをリンク
buildTM_MQI [-v] [-r rmname] [-c] [-t] [-o outfile]
buildTM_MQO [-v] [-r rmname] [-c] [-t] [-o outfile]
buildTMQUEUE_MQM [-v] [-r rmname] [-c] [-t] [-o outfile]
これらのコマンドはそれぞれTM_MQI、TM_MQO、またはTMQUEUE_MQMサーバーを作成します。デフォルトの出力場所は$TUXDIR/bin/TM_MQI、$TUXDIR/bin/TM_MQO、または$TUXDIR/bin/TMQUEUE_MQMです。この場所は-oオプションで変更できます。
これらのコマンドで作成されるサーバーは、Tuxedo MQ AdapterがIBM WebSphere MQとのやり取りに使用します(Oracle MQ Adapter for Tuxedo 10.0ユーザー・ガイドで説明されています)。
ユーザーは、サーバー出力ファイルを作成または上書きするためのパーミッションを持つ必要があります。
これらのコマンドはbuildserverを呼び出して適切なMQ Adapterサーバーを作成します。
あらかじめリンクされたオブジェクトではなく、これらのコマンドを使用してMQ Adapterサーバー・ファイルを作成することで、Tuxedo管理者は次を構成できます。
システム管理者はMQ Adapterサーバーの作成に加え、ある時点でbuildtmsを実行し、WebSphere MQ TMSサーバーを作成する必要があります。
rm_nameは、$TUXDIR/udataobj/RMにあるリソース・マネージャ表に登録されていなければなりません。rm_nameの値に対応するエントリは、リソース・マネージャに対する正しいライブラリを自動的に組み込み、かつトランザクション・マネージャとリソース・マネージャとの間のインタフェースを正しく設定( xa_switch_t構造体を使用して)するときに使用します。このパラメータのデフォルト値はMQSeries_XA_RMIです。
$TUXDIR/bin/TM_MQI、$TUXDIR/bin/TM_MQO、または$TUXDIR/bin/TMQUEUE_MQMです。
buildTM_MQI -v -o $TUXDIR/bin/TM_MQI
buildTM_MQO -v -o $TUXDIR/bin/TM_MQO
buildTMQUEUE_MQM -v -o $TUXDIR/bin/TMQUEUE_MQM
buildtms - トランザクション・マネージャ・サーバーのロード・モジュールを構築
buildtms [ -v ] -oname-rrm_name [-z]
buildtmsはトランザクション・マネージャのロード・モジュールを構築するときに使用します。
Oracle TuxedoシステムではいくつかのTMサーバーが一緒に提供されますが、分散トランザクション処理用にOracle Tuxedoシステムとともに使用する新しいリソース・マネージャを提供することもできます。このようなリソース・マネージャは、X/OpenのXAインタフェースに準拠する必要があります。リソース・マネージャ・ベンダーは、次の4つの項目を提供しなければなりません: リソース・マネージャの名前、リソース・マネージャの機能を示すフラグ、および実際のXAの関数ポインタを収めるxa_switch_t型の構造体の名前、xa_switch_t構造体のname要素に格納されるリソース・マネージャの名前、XAインタフェースのサービスを提供しソフトウェアをサポートするオブジェクト・ファイルの名前、そしてUBBCONFIG構成ファイルのパラメータOPENINFOおよびCLOSEINFOに提供される情報文字列の形式。「UBBCONFIG(5)」を参照してください。
新しいリソース・マネージャをOracle Tuxedoシステムに統合化する際には、ファイル$TUXDIR/udataobj/RMを更新して、そのリソース・マネージャに関する情報を組み込むようにしなければなりません。このファイルの形式は次のとおりです。
rm_name:rm_structure_name:library_names
ここで、rm_nameはリソース・マネージャの名前、rm_structure_nameはxa_switch_t構造体の名前、およびlibrary_namesはリソース・マネージャのオブジェクト・ファイルのリストです。空白類(タブまたはスペース)は各値の前後で使用でき、library_namesの中に挿入することもできます。値の中にコロン(:)を含めることはできません。また、シャープ(#)で始まる行はコメントとして扱われ、無視されます。
| 注意: | UNIXシステムの場合はリストをコロン(:)で区切ります。Windowsシステムの場合はコロンのかわりにセミコロン(;)を使用してください。 |
新しいリソース・マネージャのトランザクション・マネージャ・サーバーはbuildtmsを使用して構築し、$TUXDIR/binにインストールしなければなりません。buildtmsはbuildserver(1)コマンドを使用してa.outを生成します。buildtmsコマンドには、以下のオプションがあります。
-v
-o name
-r rm_name
rm_nameは、$TUXDIR/udataobj/RMにあるリソース・マネージャ表に登録されていなければなりません。rm_nameの値に対応するエントリは、リソース・マネージャに対する正しいライブラリを自動的に組み込み、かつトランザクション・マネージャとリソース・マネージャとの間のインタフェースを正しく設定(xa_switch_t構造体を使用して)するときに使用します。
-z
buildtmsは、buildserverコマンドを使用してa.outを生成します。buildserverは、コンパイラおよびコンパイラ・フラグに関してそれぞれCCおよびCFLAGS環境変数を使用します(設定されている場合)。詳細については、「buildserver(1)」を参照してください。
buildtmsは、Oracle Tuxedo ATMIまたはCORBAサーバー環境をサポートするすべてのプラットフォームで、Oracle Tuxedoシステム提供のコンパイル・ツールとしてサポートされています。RM XAライブラリは、Windowsプラットフォームではサポートされていません。
buildtms -o $TUXDIR/bin/TMS_XYZ -r XYZ/SQL # TMS for XYZ resource manager
buildwsh - カスタマイズされたワークステーション・ハンドラ・プロセスの構築
buildwsh[-v] [-oname] [-ffiles]
buildwshは、カスタマイズしたOracle Tuxedo ATMIワークステーション・ハンドラ・モジュールを構築するために使用されます。呼出し側によって組み込まれるファイルは、アプリケーション・バッファ型スイッチと必要なサポート・ルーチンのみを含む必要があります。このコマンドは、-fオプションで指定されるファイルと、必要な標準Oracle Tuxedo ATMIライブラリを組み合せて、ワークステーション・ハンドラ・ロード・モジュールを作成します。ロード・モジュールは、buildwshが呼び出すcc(1)コマンドによって構築されます(コマンドの説明はUNIXシステム・リファレンス・マニュアルを参照)。buildwshコマンドには、以下のオプションがあります。
-v
-o name
SERVERセクションにおけるWSL(5)サーバーの-w WSHnameオプションで指定しなければなりません。指定しない場合、ロード・モジュールには、WSHという名前が付きます。
-f firstfiles
buildwshのコンパイル・フェーズやリンク・フェーズで取り込む1つまたは複数のユーザー・ファイルを指定します。ソース・ファイルは、ccコマンドまたは環境変数CCによって指定されたコマンドによってコンパイルされます。ソース・ファイルのコンパイルによって生成されたオブジェクト・ファイルと、-fオプションのパラメータとして直接指定されたオブジェクト・ファイルは、基本となるワークステーション・ハンドラ・プロセスを構築するために必要なすべてのオブジェクト・ファイルの後で、かつOracle Tuxedo ATMIライブラリの前に取り込まれます。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは、何回も指定することができます。
buildwshは通常、ccコマンドを使用してa.outを生成します。代替コンパイラを指定できるようにするため、buildwshはシェル変数CCが存在するかどうかを調べます。CCがbuildwshの環境にない場合、または変数の値が文字列""である場合は、buildwshはコンパイラとしてccを使用します。環境内にCCが存在する場合、実行されるコンパイラの名前がCCの値となります。同様に、シェル変数CFLAGSも、コンパイラへ渡す一連のパラメータを取り込むためにチェックされます。
アプリケーションが共有ライブラリを使用する場合は、ここで説明したコンパイルとリンクの作業をする必要はありません。『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』の型付きバッファの管理に関する項を参照してください。<Default ?Font>
buildwshコンパイル・ツールは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで使用できます。
CC=ncc CFLAGS=”-I $TUXDIR/include”; export CC CFLAGS buildwsh
-o APPWSH -f apptypsw.o UNIXシステムのリファレンス・マニュアルのcc(1)、ld(1)
cobcc[option. . .]filename. . .
cobccは、COBOLコンパイラに対するインタフェース・シェルとして使用します。それは、-C (COBOL)オプションを指定してbuildclient(1)またはbuildserver(1)が実行された場合にはデフォルトで呼び出されます。ALTCC環境変数を指定するとオーバーライドできます。
以下にcobccで指定可能なオプションを示します。これらのオプションを使用するには、buildclientやbuildserverを実行する際に、環境変数ALTCFLAGSをcobccが認識できるオプション文字列に設定します。各オプションの詳細は、COBOLとCコンパイラのドキュメントを参照してください。
| 注意: | Windowsシステムでは、ALTCCおよびALTCFLAGS環境変数は使用できません。これらの変数を設定すると、予想外の結果が生じます。まずCOBOLコンパイラを使用してアプリケーションをコンパイルし、次に生成されたオブジェクト・ファイルをbuildclient(1)またはbuildserver(1)コマンドに渡す必要があります。 |
ccやcobとは異なりcobccでは、すべてのオプションはファイル名の前に置かれなければなりません。
-c
-p -g -r -O
-l argument
-L argument
-o output_file
-E -P -S
-A -C -H -f -G
-w
-D argument
{-T -Y -U -I -B -X -F -q} argument
-V -v
-a -s
-u argument
-W argument
pまたは -0であれば、Cコンパイラに渡されます。-aで始まる場合には、アセンブラに渡されます。-lで始まる場合にはローダーに渡されます。-Cで始まるのであれば、COBOLコンパイラに渡されます。それ以外の場合には、Cコンパイラに渡されます。
オプションと引数、およびファイル名は該当するオプションと共にCOBOLコンパイラに渡され、適切な情報がCOBOLコンパイラ、Cコンパイラ、あるいはローダーで処理されます。COBOLコンパイラの名前は"cob"と想定されており、PATHで定義されています。
『Micro Focus COBOL/2 Operating Guide』 Micro Focus Ltd.
dmadmin—<Default ?Font>Oracle Tuxedoドメイン管理コマンド・インタプリタ。
dmadmin[-c]
dmadminは対話型のコマンド・インタプリタで、Domains構成で呼び出される特定の<Default ?Font>Oracle Tuxedoアプリケーション用に定義されたドメイン・ゲートウェイ・グループを管理するために使用します。このページでは、TDomainゲートウェイ、SNA Gateway (SNAX)およびOSI TPゲートウェイでdmadminを使用する方法について説明します<Default ?Font>。<Default ?Font>Oracle Tuxedo Domainsコンポーネントの詳細は、『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』を参照してください。
dmadminには、管理モードと構成モードの2つのモードがあります。
dmadminはパラメータなしで呼び出すと管理モードになります。管理モードはデフォルトのモードです。このモードでは、dmadminは、アクティブなアプリケーション内のアクティブなノード(ワークステーションを除く)で実行できます。アプリケーション管理者は、このモードを使用して、アクティブな任意のドメイン・ゲートウェイ・グループのパラメータを取得または変更できます。アプリケーション管理者は、このモードを使用して、特定のローカル・ドメイン・アクセス・ポイントのDomainsトランザクション・ログを作成、廃棄または再初期化することもできます。この場合、そのローカル・ドメイン・アクセス・ポイントに関連付けられたドメイン・ゲートウェイ・グループをアクティブにせず、対応するゲートウェイ・グループに関連するマシン上でdmadminを実行する必要があります。
dmadminは、-cオプションを使用して呼び出されるか、configサブコマンドが呼び出されると、configurationモードに入ります。アプリケーション管理者は、このモードを使用して、新しい構成情報を更新したり、ドメイン構成ファイル(BDMCONFIG)のバイナリ・バージョンに追加したりできます。
dmadminでは、BDMCONFIGファイルの管理にDomains管理サーバー(DMADM)を、アクティブなDOMAINゲートウェイ・グループの再構成にゲートウェイ管理サーバー(GWADM)を使用する必要があります。Domains構成で起動される各<Default ?Font>Oracle Tuxedoアプリケーションに1つのDMADMプロセスが、各ドメイン・ゲートウェイ・グループに1つのGWADMプロセスが実行されます。
dmadminが呼び出された後は、次に示す構文に従って、プロンプト(">")からコマンドを入力してください。
command[arguments]
共通して出現するいくつかの引数には、defaultコマンドを使用してデフォルト値が与えられます。defaultコマンドによって設定されたパラメータを受け付けるコマンドは、defaultに値が設定されているかどうかを調べます。値が設定されていない場合は、エラー・メッセージが戻されます。
一度設定したデフォルト値は、defaultコマンドで変更しないかぎり、セッション終了まで有効です。このデフォルト値は、コマンドラインで明示的に値を入力してオーバーライドするか、値* (アスタリスク)を入力して設定解除します。オーバーライドの効果は、コマンドの単一のインスタンスの間有効です。
dmadminコマンドからの出力は、使用しているページ別表示コマンドに従ってページ別に表示されます(後述のpaginateサブコマンドを参照してください)。
コマンドは、完全な名前または省略形(カッコ内に示す形式)で入力できます。その後に適切な引数を指定します。大カッコ[ ]で囲まれている引数は省略可能で、中カッコ{ }で囲まれている引数は、相互に排他的な選択肢を示します。多くのコマンドでlocal_domain_access_point_nameは必須引数です。またdefaultコマンドでも設定できることに注意してください。
advertise (adv) -d local_domain_access_point_name [{service}]
advertiseevent (advevt) -d local_domain_name_[{-all | event}]
-all)または指定したイベント(指定のevent)のリモート・ドメインへの送信を許可します。これらのイベントは、"*DM_EVT_OUT"セクションでLACCESSPOINT=local_domain_nameを使用して構成されます。
audit (audit) -d local_domain_access_point_name [{off | on}]
on)にまたはアクティブ解除(off)します。オプションが設定されていない場合は、現在の設定値がonとoffで切り替わり、新しい設定が表示されます。初期設定はoffです。
chbktime (chbt) -d local_domain_access_point_name -t bktime
config (config)
connect (co) -d local_domain_access_point_name
[-R remote_domain_access_point_name]
-Rが指定されていない場合、このローカル・ドメイン・ゲートウェイに構成されているすべてのリモート・ドメイン・アクセス・ポイントに対してコマンドが適用されます。
crdmlog (crdlog)[-d local_domain_access_point_name]
dmadminが動作しているマシン)上の指定されたローカル・ドメイン・アクセス・ポイントに対して、Domainsトランザクション・ログを作成します。このコマンドでは、DMCONFIGファイルで指定したパラメータが使用されます。指定のローカル・ドメイン・アクセス・ポイントに関連付けられているドメイン・ゲートウェイ・グループが現在のマシンでアクティブであるか、ログがすでに存在する場合は、このコマンドは失敗します。 | 注意: | OracleデータベースにログをエクスポートするためにDMCONFIG(5) DMTLOGDEVを設定すると、DMTLOGは自動的に作成されなくなります。 |
default (d) [-d local_domain_access_point_name]
* (アスタリスク)を指定すると設定を解除できます。defaultコマンドを引数なしで入力した場合は、現在のデフォルトの値が表示されます。
disconnect (dco) -d local_domain_access_point_name
[-R remote_domain_access_point_name]
-Rが指定されていない場合、このローカル・ドメイン・ゲートウェイに構成されているすべてのリモート・ドメイン・アクセス・ポイントに対してコマンドが適用されます。)
dsdmlog (dsdlg) -d local_domain_access_point_name [ -y ]
dmadminが動作しているマシン)上の指定されたローカル・ドメイン・アクセス・ポイントに対して、Domainsトランザクション・ログを破棄します。このローカル・ドメイン・アクセス・ポイントにDomainsトランザクション・ログが定義されていないか、ローカル・ドメイン・アクセス・ポイントに関連付けられているドメイン・ゲートウェイ・グループがアクティブであるか、または未処理のトランザクション・レコードがログ内に存在している場合は、エラーが戻されます。「未処理のトランザクション」とは、グローバル・トランザクションがすでにコミットされているが、トランザクションの終了がまだ書き込まれていないトランザクションのことです。このコマンドは、-yオプションを指定していない場合に確認のためのプロンプトを表示します。
echo (e) [{off | on}]
forgettrans (ft) -d local_domain_access_point_name [ -t tran_id]
tran_idが指定されている場合、そのトランザクションのヒューリスティック・ログ・レコードのみが無視されます。トランザクションの識別子tran_idは、printtransコマンドまたはULOGファイルから取得できます。
help (h) [command]
indmlog (indlg) -d local_domain_access_point_name [ -y ]
dmadminが動作しているマシン)上の指定されたローカル・ドメイン・アクセス・ポイントに対して、Domainsトランザクション・ログを再初期化します。このローカル・ドメイン・アクセス・ポイントにDMTLOGが定義されていないか、ローカル・ドメイン・アクセス・ポイントに関連付けられているドメイン・ゲートウェイ・グループがアクティブであるか、または未処理のトランザクション・レコードがログ内に存在している場合は、エラーが戻されます。「未処理のトランザクション」とは、グローバル・トランザクションがすでにコミットされているが、トランザクションの終了がまだ書き込まれていないトランザクションのことです。このコマンドは、-yオプションを指定していない場合に確認のためのプロンプトを表示します。
paginate (page) [{off | on}]
PAGERを使用すると、ページ別表示出力に使用されるデフォルトのコマンドをオーバーライドできます。デフォルトのページ別表示コマンドは、ネイティブのオペレーティング・システム環境に固有のコマンドです(たとえば、コマンドpgは、UNIXシステム・オペレーティング環境のデフォルトです)。
passwd (passwd) [ -r ] local_domain_access_point_name
remote_domain_access_point_name
-rオプションは、既存のパスワードと新しいパスワードをシステムが生成した新しいキーを使用して暗号化することを指定します。パスワードの最大文字数は30文字に制限されています。passwdはTDomainゲートウェイのみでサポートされます。
printdomain (pd) -d local_domain_access_point_name
printstats (pstats) -d local_domain_access_point_name
printtrans (pt) -d local_domain_access_point_name
(process ID:local domain access point name:remote domain access point name:service name:local GTRID:remote GTRID:record type:timestamp)。 トランザクションがドメインに対してローカルに実行される場合は、remote GTRIDフィールドは空になります。
quit (q)
resume (res) -d local_domain_access_point_name [{ -all | service}]
stats (stats) -d local_domain_access_point_name [{ off | on | reset }]
on)、アクティブ解除(off)または再設定(reset)します。オプションを何も指定しない場合は、現在の設定値がonとoffで切り替わり、新しい設定が表示されます。初期設定はoffです。
suspend (susp) -d local_domain_access_point_name [{ -all | service}]
topendpasswd (tepasswd) [ -r ]
unadvertise (unadv) -d local_domain_access_point_name [{ -all | service}]
unadvertiseevent (unadvevt) -d local_domain_name_[{-all | event}]
-all)または指定したイベント(指定のevent)のリモート・ドメインへの送信を禁止します。これらのイベントは、"*DM_EVT_OUT"セクションでLACCESSPOINT=local_domain_nameを使用して構成されます。
verbose (v) [{off | on}]
! shellcommand
!!
# [text]
<CR>
dmadminコマンドは、-cオプションで実行するか、configサブコマンドを使用すると構成モードになります。このモードでは、dmadminを使用して、BDMCONFIGファイルの実行時更新を行うことができます。dmadminは、追加または取得される入力フィールド値を含むバッファを管理し、各処理が終了すると出力フィールド値とステータスを表示します。ユーザーは任意のテキスト・エディタを使用して入力バッファを更新できます。
dmadminはまず希望のセクションを求めるプロンプトを表示し、次に希望の操作を求めるプロンプトを表示します。
BDMCONFIGファイルのセクションを求めるプロンプトは次のとおりです。
Section:
1) RESOURCES 2) LOCAL_DOMAINS
3) REMOTE_DOMAINS 4) LOCAL_SERVICES
5) REMOTE_SERVICES 6) ROUTING
7) ACCESS_CONTROL 8) PASSWORDS
9) TDOMAINS 10) OSITPS
11) SNADOMS 12) LOCAL_REMOTE_USER
13) REMOTE_USERS 14) SNACRMS
15) SNASTACKS 16) SNALINKS
19) OSITPX
20) EVENTS_IN 21) EVENTS_OUT
q) QUIT
Enter Section [1]:
デフォルト・セクションの番号は、プロンプトの終わりに大カッコ内に表示されます。デフォルトの値を受け入れるときは、[RETURN]または[Enter]を押します。別のセクションを選択するときは、その番号を入力して[RETURN]または[Enter]を押します。
次にdmadminは、希望の操作を求めるプロンプトを表示します。
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [1]:
デフォルトの操作番号がプロンプトの終わりの大カッコ内に表示されます。[RETURN]または[Enter]を押してこのオプションを選択します。別の操作を選択するときは、その番号を入力して[RETURN]または[Enter]を押します。
FIRST - 指定されたセクションの最初のレコードを表示します。キー・フィールドは必要ありません(入力バッファに格納されていても、無視されます)。継続 - 入力バッファ内のキー・フィールドに基づいて、指定したセクションから次のレコードを取り出します。照会 - キー・フィールドで指定されたセクションから、指定されたレコードを取り出します。以下のフィールドの説明を参照してください。ADD - 指定したセクションに、指定したレコードを追加します。フィールドが指定されていない場合(フィールドが不要である場合にかぎり)、DMCONFIG(5)で指定されたデフォルト値が使用されます。すべてのフィールドの現在の値は、出力バッファ内に戻されます。この操作は、Oracle Tuxedo管理者だけが行えます。UPDATE - 指定したセクションの入力バッファ内にある、指定したレコードを更新します。入力バッファ内で指定されていないフィールドは変更されません。すべてのフィールドの現在の値は、入力バッファ内に戻されます。この操作は、Oracle Tuxedo管理者だけが行えます。DELETE - 入力バッファで指定したレコードを、選択したセクションから削除します。この操作は、Oracle Tuxedo管理者しか実行できません。NEW SECTION - 入力バッファをクリアします(すべてのフィールドは削除されます)。この操作の直後に、dmadminによって再度セクションを指定するように求められます。QUIT - プログラムを正常に終了します(dmadminは終了します)。プロンプトで値qを入力してもプログラムを終了できます。 構成操作を行う場合は、有効なユーザー識別子は、このプログラムが実行されるマシンのOracle Tuxedo管理者ユーザー識別子(UID)と一致している必要があります。レコードの更新や追加を行う場合には、dmloadcf(1)が使用する検証機能とすべてのデフォルト値が有効になります。
dmadminは次に、入力バッファを編集するかどうかをたずねるプロンプトを表示します。
Enter editor to add/modify fields [n]?
値yを入力すると、入力バッファが一時ファイルに変換され、テキスト・エディタが実行されます。環境変数EDITORを使用して、使用するエディタを決定します。デフォルト値はed (UNIXテキスト・エディタ)です。入力フォーマットは、一連のフィールド名とフィールド値の組合せです。「構成入力フォーマット」を参照してください。その後の項の表に、各DMCONFIGセクションに関連付けられているフィールド名を示します。フィールドのセマンティクスと、関連する範囲、デフォルト値、制限などは、DMCONFIG(5)およびDM_MIB(5)に関する項目を参照してください。多くの場合、フィールド名はDMCONFIGファイルのKEYWORDと同じで、接頭辞として「TA_」が付いています。ユーザーが入力バッファの編集を完了すると、dmadminはその内容を読み取ります。特定のフィールド名に対して複数の行がある場合、最初の行が使用され、他の行は無視されます。何らかのエラーが発生すると、構文エラー・メッセージが表示され、その問題の訂正のためにファイルを編集するかどうかを確認するプロンプトが表示されます。
Enter editor to correct?
問題を訂正しない場合(レスポンスn)は、入力バッファにフィールドは含まれません。問題を訂正する場合は、エディタが再度実行されます。
最後に、操作を行うかどうかをたずねるプロンプトが表示されます。
Perform operation [y]?
操作が完了すると、dmadminは「戻り値TAOK」のように戻り値を表示し、続いて出力バッファのフィールドを表示します。次に、プロセスが再開され、セクションを求めるプロンプトが表示されます。すべての出力バッファ・フィールドは、バッファがクリアされないかぎり、入力バッファ内で利用できます。
いつでもブレークを入力して、セクションを求めるプロンプトでの対話を再開できます。
"QUIT"を選択すると、テキスト・バージョンの構成ファイルのバックアップを作成する認可を求めるプロンプトが表示されます。
Unload BDMCONFIG file into ASCII backup [y]?
バックアップを選択した場合、ファイル名の入力を求めるプロンプトが表示されます。
成功時にはバックアップが作成されたことが示され、失敗時にはエラーが表示されます。
入力パケットは、次のようにフォーマットされた行で構成されます。
fldname fldvalフィールド名は、1つまたは複数のタブ(または空白)によってフィールド値と区別されます。
長いフィールド値は、1つまたは複数のタブ(dmadminに再度読み込まれたときに破棄されます)で始まる継続行を使用することで、次の行に継続できます。
表示できない文字をフィールド値に入力したり、タブをフィールド値の先頭に付けたりするには、バックスラッシュを入力し、その後に必要な文字を2文字の16進表現で入力します(UNIXリファレンス・マニュアルでASCII(5)の項を参照)。たとえば、空白は「\20」として入力データに入力できます。バックスラッシュそのものは、2つのバックスラッシュ記号を使用して入力できます。dmadminでは、このフォーマットのすべての入力が認識されます。このフォーマットは表示できない文字の場合に最も役立ちます。
次に動的Domainsを再構成する機能についての全般的な制限事項を示します。
<Default ?Font>Oracle Tuxedoのリリース7.1以降では、ドメイン関連の用語の一部が変更されました。Domains用のMIBでは、新しいクラスおよび属性の用語を使用して、ローカル・ドメインとリモート・ドメイン間の相互作用を記述しています。新しい用語は、DM_MIBのリファレンス・ページ、クラスおよびエラー・メッセージや、DMCONFIGのリファレンス・ページ、セクション名、パラメータ名およびエラー・メッセージで使用されています。新しい用語はdmadminのユーザー・インタフェースには適用されていませんが、dmadminはDMCONFIGの従来の用語と新しい用語の両方を認識します。
後方互換性のため、Oracle Tuxedo 7.1より前に使用されていたDMCONFIG用語とDomains用のMIBの新しい用語との間で別名が提供されています。Oracle Tuxedoリリース7.1以降のdmadminでは、両方のバージョンのDMCONFIG用語を使用できます。詳細は、DM_MIB(5)リファレンス・ページの「Domains関連の新しい用語」を参照してください。
この後では、各DMCONFIGについて、どのフィールド識別子が各DMCONFIGフィールドに関連しているか、識別子のフィールド・タイプは何か、およびいつフィールドを更新できるかを説明しています。適用可能なフィールド値はすべて、取出し操作によって返されます。レコードを追加できるフィールド、またはレコードを追加するために必要なフィールドについては、「DMCONFIG(5)」および「DM_MIB(5)」に関する項で説明しています。次にキーとして示すフィールドは、セクション内のレコードを一意に識別するために使用するキー・フィールドです。これらのキー・フィールドは、更新を行うとき入力バッファ内になければならないほか、動的に更新することができません。更新列は、どのようなときにフィールドを更新できるかを示しています。使用できる値は次のとおりです。
表4に、DM_LOCALセクション(DM_LOCAL_DOMAINSセクション)のフィールド一覧を示します。dmadmin操作のプロンプトでこのセクションにアクセスするには、2 (LOCAL_DOMAINS)を入力します。
表5に、DM_REMOTEセクション(DM_REMOTE_DOMAINSセクション)のフィールド一覧を示します。dmadmin操作のプロンプトでこのセクションにアクセスするには、2 (REMOTE_DOMAINS)を入力します。
DM_TDOMAINセクションには、TDOMAINタイプ・ドメインが必要とするネットワーク・アドレッシング・パラメータが含まれています。表6に、このセクションのフィールドの一覧を示します。
ローカル・ドメイン・アクセス・ポイント識別子(TA_LDOM)の場合、TA_NWADDRフィールドおよびTA_NWDEVICEフィールドは、そのローカル・ドメイン・アクセス・ポイントに関連付けられたゲートウェイ・グループが実行中でないときに更新できます。
DM_OSITPセクションには、OSITPタイプ・ドメインが必要とするOSI TP 1.3対応のネットワーク・アドレッシング・パラメータが含まれています。表7に、このセクションのフィールドの一覧を示します。
ローカル・ドメイン・アクセス・ポイント識別子(TA_LDOM)の場合、この表に記載されていないフィールドは、そのローカル・ドメイン・アクセス・ポイントに関連付けられたゲートウェイ・グループが実行中でないときに更新できます。
DM_OSITPXセクションには、OSITPXタイプ・ドメインが必要とするOSI TP 4.0以降に対応するネットワーク・アドレッシング・パラメータが含まれています。表8に、このセクションのフィールドの一覧を示します。
| 注意: | DM_OSITPXセクションは、Oracle Tuxedoリリース8.0以降が動作していないと使用できません。 |
ローカル・ドメイン・アクセス・ポイント識別子(TA_LDOM)の場合、この表に記載されていないフィールドは、そのローカル・ドメイン・アクセス・ポイントに関連付けられたゲートウェイ・グループが実行中でないときに更新できます。
表9に、DM_EXPORTセクション(DM_LOCAL_SERVICESセクション)のフィールド一覧を示します。dmadmin操作のプロンプトでこのセクションにアクセスするには、4 (LOCAL_SERVICES)を入力します。
表10に、DM_IMPORTセクション(DM_REMOTE_SERVICESセクション)のフィールド一覧を示します。dmadmin操作のプロンプトでこのセクションにアクセスするには、2 (REMOTE_SERVICES)を入力します。
表11に、DM_EVT_INセクションのフィールドを示します。
| 注意: | すべてのFIELDS定義は、$TUXDIR/udataobj/dmadminおよび$TUXDIR/udataobj/dmadmin32内で定義されています。 |
表12に、DM_EVT_OUTセクションのフィールドを示します。
| 注意: | すべてのFIELDS定義は、$TUXDIR/udataobj/dmadminおよび$TUXDIR/udataobj/dmadmin32内で定義されています。 |
表13に、DM_ROUTINGセクションのフィールドの一覧を示します。
表14に、DM_ACCESS_CONTROLセクションのフィールドの一覧を示します。
表15に、DM_PASSWORDSセクションのフィールドの一覧を示します。このセクションは、TDomainゲートウェイにのみ適用されます。
TA_LPWDおよびTA_RPWDは、ローカル・ドメイン・アクセス・ポイントまたはリモート・ドメイン・アクセス・ポイント(あるいはその両方)について定義済のパスワードがあるかどうかを示します。パスワードは表示されません。UPDATE操作を選択した場合は、対応するフィールドの値をUに設定する必要があります。この場合、エコーがオフになり、対応するパスワードの入力を求めるプロンプトが表示されます。
dmadminは、FML型付きバッファを割当てできない場合、ユーザーの/etc/passwdエントリを判別できない場合、または環境変数FIELDTBLSまたはFLDTBLDIRを再設定できない場合に失敗します。
各操作の完了後、dmadminによって表示される戻り値は、リクエストされた操作のステータスを示します。戻り値には3つのクラスがあります。
次の戻り値は、権限に関する問題またはOracle Tuxedoの通信エラーを示しています。戻り値は、操作が正常に完了しなかったことを示しています。
TAEPERM]
ADD、UPDATEまたはDELETEのいずれかの操作が指定されましたが、Oracle Tuxedo管理者として実行されていません。更新操作は管理者(つまり、TUXCONFIGファイルのRESOURCESセクションのUID属性で指定されたユーザー)が実行する必要があります。
TAESYSTEM]
TAEOS]
TAETIME]
以下の戻り値は、処理そのものの実行に問題があることを示します。通常は、入力バッファ内のアプリケーション・データに関するセマンティクスの問題です。文字列フィールドTA_STATUSが出力バッファに設定されます。このフィールドは、問題を説明する短いテキストを含みます。文字列フィールドTA_BADFLDNAMEに、問題を引き起こした値が含まれるフィールドの名前が設定されます(エラーが1つのフィールドに関係している場合)。
TAECONFIG]
TAEDUPLICATE]
TAEINCONSIS]
TAENOTFOUND]
TAENOSPACE]
TAERANGE]
TAEREQUIRED]
TAESIZE]
TAEUPDATE]
TAOK]
TAUPDATED]
dmunloadcfを使用して構成のエントリを表示するとき、オプションのフィールド値は、値が設定されていない(文字列の場合)か0 (整数の場合)の場合には表示されません。これらのフィールドは、dmadminを使用するときに、出力バッファ内に常に表示されます。この方法で、管理者がエントリを取り出しやすくし、また以前に設定されていないフィールドを更新しやすくします。エントリには、フィールド名が含まれ、タブが後に続きますが、フィールド値はありません。
次の例では、dmadminを使用して新しいリモート・ドメイン・アクセス・ポイントを追加します。ed(1)がエディタとして使用されます。
$ EDITOR=ed dmadmin
> config
Sections:
1) RESOURCES 2) LOCAL_DOMAINS
3) REMOTE_DOMAINS 4) LOCAL_SERVICES
5) REMOTE_SERVICES 6) ROUTING
7) ACCESS_CONTROL 8) PASSWORDS
9) TDOMAINS 10) OSITPS
11) SNADOMS 12) LOCAL_REMOTE_USER
13) REMOTE_USERS 14) SNACRMS
15) SNASTACKS 16) SNALINKS
19) OSITPX
q) QUIT
Enter Section [1]:
Enter Section [1]: 2
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [1]: 4
Enter editor to add/modify fields [n]? y
a
TA_RDOM B05
TA_DOMAINID BA.BANK05
TA_TYPE TDOMAIN
.
w
53
q
Perform operation [y]? <return>
Return value TAUPDATED
Buffer contents:
TA_OPERATION 4
TA_SECTION 2
TA_DOMAINID BA.BANK05
TA_RDOM B05
TA_TYPE TDOMAIN
TA_STATUS Update completed successfully
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [4]: 7
Section:
1) RESOURCES 2) LOCAL_DOMAINS
3) REMOTE_DOMAINS 4) LOCAL_SERVICES
5) REMOTE_SERVICES 6) ROUTING
7) ACCESS_CONTROL 8) PASSWORDS
9) TDOMAINS 10) OSITPS
11) SNADOMS 12) LOCAL_REMOTE_USER
13) REMOTE_USERS 14) SNACRMS
15) SNASTACKS 16) SNALINKS
19) OSITPX
q) QUIT
Enter Section [1]: 9
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [6]: 4
Enter editor to add/modify fields [n]? y
a
TA_RDOM B05
TA_NWADDR 0x00020401c0066d05
TA_NWDEVICE /dev/tcp
.
w
55
q
Perform operation [y]? <return>
Return value TAUPDATED
Buffer contents:
TA_OPERATION 4
TA_SECTION 8
TA_RDOM B05
TA_NWADDR 0x00020401c0066d05
TA_NWDEVICE /dev/tcp
TA_STATUS Update completed successfully
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [4]: 8
> quit
dmadminがアプリケーション管理者のUIDを使用して実行された場合、信頼性のあるユーザーであると想定され、セキュリティはバイパスされます。dmadminが別のユーザーIDで実行された場合、およびセキュリティ・オプションがTUXCONFIGファイル内で使用可能になっている場合は、dmadminプログラムを開始するための対応するアプリケーション・パスワードが必要です。標準入力が端末である場合、dmadminはエコーをオフの状態でユーザーにパスワードの入力を求めます。標準入力が端末でない場合は、パスワードは環境変数APP_PWから取り出されます。この環境変数が指定されていないときに、アプリケーション・パスワードが必要な場合は、dmadminを開始できません。
別のユーザーID (管理者のUID以外)で実行中の場合、制限されたセットのコマンドしか使用できません。
dmadminは環境変数FIELDTBLSおよびFLDTBLDIRを再設定して、${TUXDIR}/udataobj/dmadminフィールド表をピックアップします。このため、TUXDIR環境変数は適切に設定する必要があります。
アプリケーションでセキュリティが必要なときに、dmadminへの標準入力が端末からではない場合、APP_PW環境変数は対応するアプリケーション・パスワードに設定する必要があります。
TUXCONFIG環境変数は、Oracle Tuxedo構成ファイルのパス名に設定する必要があります。
dmadminコマンドをシステムがブートする前に入力すると、次のメッセージが表示されます。
No bulletin board exists. Only logging commands are available.
次にdmadminは、対応するコマンドを求めるプロンプトを表示します。
正しくないアプリケーション・パスワードが入力されるか、環境を通してシェル・スクリプトで利用できない場合、ログ・メッセージが生成され、次のメッセージが表示されてコマンドが終了します。無効なパスワードが入力されました。
dmadminは、Oracle Tuxedoリリース5.0以降にインストールする必要があります。リリース5.0のゲートウェイが存在するドメイン内の他のマシンの場合は、Oracle Tuxedoリリース4.1以降でもかまいません。
dmadmin管理ツールは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで使用できます。
dmloadcf(1)、tmadmin(1)、DMADM(5)、DMCONFIG(5)
『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』<Default ?Font>
『ATMIアプリケーションでのOracle Tuxedo TOP END Domain Gatewayの使用』<Default ?Font>
dmloadcf - DMCONFIGファイルを解析し、バイナリのBDMCONFIG構成ファイルをロード
dmloadcf [-c] [-n] [-y] [-bblocks] {DMCONFIG_file| - }
dmloadcfは、ファイルまたはDMCONFIG構文による標準入力を読み取り、構文をチェックして、オプションでバイナリのBDMCONFIG構成ファイルをロードします。BDMCONFIG環境変数は、情報の格納先となるBDMCONFIGファイルのパス名を指しています。
dmloadcfは、DMCONFIGファイルの必要なセクションがないことを検出すると、エラー・メッセージをプリントします。入力ファイルを構文解析しているときに構文エラーを検出すると、dmloadcfはBDMCONFIGファイルを更新せずに終了します。
dmloadcfを使用する場合は、$TUXDIR/udataobj/DMTYPEファイルが存在していなければなりません。このファイルは有効なドメイン・タイプを定義します。このファイルが存在しないと、dmloadcfはBDMCONFIGファイルを更新せずに終了します。
dmloadcfを使用するユーザーの実効ユーザー識別子は、TUXCONFIGファイルのRESOURCESセクションのUIDと一致していなければなりません。
dmloadcfにオプション-cを付けると、プログラムはこの構成に含まれるローカル・ドメイン(ゲートウェイ・グループ)ごとに必要とされる最小限のIPCリソースを表示します。BDMCONFIGファイルは更新されません。
dmloadcfに-nオプションを付けると、プログラムはテキスト形式のDMCONFIGファイルの構文チェックだけを行い、BDMCONFIGファイルの更新は行いません。
構文チェックの後、dmloadcfは、環境変数BDMCONFIGが参照するファイルが存在するかどうか、存在する場合はそのファイルが有効なOracle Tuxedoファイルであるかどうか、およびBDMCONFIG表を含んでいるかどうかを調べます。これらの条件が真でなかった場合、そのユーザーにはファイルを作成して初期化するよう、次のような指示が出されます。
BDMCONFIGファイルを初期化しますか: path [y, q]?
pathは、BDMCONFIGファイルの完全なファイル名です。標準入力および標準出力が端末に送られない場合、またはコマンドラインで-yオプションが指定されている場合は、このプロンプトは表示されません。このプロンプトに対して「y」または「Y」以外で答えると、dmloadcfはバイナリの構成ファイルを作成せずに終了します。
BDMCONFIGファイルが正しく初期化されない場合、BDMCONFIGファイルを初期化しますかというプロンプトの後でユーザーがyを入力すると、dmloadcfはOracle Tuxedoファイル・システムを作成し、BDMCONFIG表を作成します。-bオプションがコマンドラインに指定されると、その引数により、Oracle Tuxedoファイル・システムの作成時にデバイスのブロック数が定義されます。-bオプションの値が新しいBDMCONFIG表を収容できるほど大きい場合、dmloadcfは、指定された値を使用して新しいファイル・システムを作成します。それ以外の場合、dmloadcfはエラー・メッセージを出力して終了します。-bオプションが指定されない場合、dmloadcfは、BDMCONFIGを収容できるだけ大きい新しいファイル・システムを作成します。ファイル・システムがすでに存在している場合、-bオプションは無視されます。BDMCONFIGがrawデバイス(初期化されていないデバイス)の場合は、-bオプションを強く推奨します。その場合、rawデバイスのブロック数を設定するために-bを使用してください。BDMCONFIGが通常のUNIXファイルである場合には、-bオプションは使用しないようにしてください。
BDMCONFIGファイルがすでに初期化されていることがわかると、dmloadcfは、BDMCONFIGファイルで記述されているローカル・ドメインが動作していないことを確認します。ローカル・ドメインが動作している場合は、dmloadcfがエラー・メッセージをプリントして終了します。そうでない場合、dmloadcfは、ファイルを上書きするかどうかを確認するため、次のプロンプトを表示します:
“Really overwrite BDMCONFIG file [y, q]?”標準入力または標準出力が端末でない場合、または-yオプションをコマンドラインで指定した場合、このプロンプトは表示されません。このプロンプトに対して「y」または「Y」以外で答えると、dmloadcfはファイルを上書きせずに終了します。
SECURITYパラメータがTUXCONFIGファイルのRESOURCESセクションに指定されると、dmloadcfは、標準入力をフラッシュし、端末エコーをオフにし、ユーザーにアプリケーション・パスワードの入力を求めます(「アプリケーション・パスワードを入力してください」)。パスワードは30文字までに制限されています。ファイルではなく標準入力を介してテキスト形式のDMCONFIGファイルをロードするオプションは、このSECURITYパラメータがオンのときには使用できません。標準入力が端末でない場合、つまり、ユーザーにパスワードの入力を求めることができない場合(たとえば、hereファイルの場合)、アプリケーション・パスワードの設定のために環境変数APP_PWが参照されます。APP_PW環境変数が設定されておらず、標準入力が端末でない場合には、dmloadcfはエラー・メッセージを出し、ログ・メッセージを生成して、BDMCONFIGファイルのロードに失敗します。
エラーが発生せず、チェックの結果がすべて条件を満たしていると、dmloadcfはDMCONFIGファイルをBDMCONFIGファイルにロードします。BDMCONFIG表内に存在するすべての情報は上書きされます。
<Default ?Font>Oracle Tuxedoのリリース7.1以降では、ドメイン関連の用語の一部が変更されました。Domains用のMIBでは、新しいクラスおよび属性の用語を使用して、ローカル・ドメインとリモート・ドメイン間の相互作用を記述しています。新しい用語は、DM_MIBのリファレンス・ページ、クラスおよびエラー・メッセージや、DMCONFIGのリファレンス・ページ、セクション名、パラメータ名およびエラー・メッセージで使用されています。詳細は、DM_MIB(5)リファレンス・ページの「Domains関連の新しい用語」を参照してください。
後方互換性のため、Oracle Tuxedo 7.1より前に使用されていたDMCONFIG用語と<Default ?Font>Domains用のMIBの新しい用語との間で別名が提供されています。<Default ?Font>Oracle Tuxedo 7.1以降では、dmloadcfは両方のDMCONFIG用語を使用できます。dmunloadcfは、デフォルトで新しいドメイン関連の用語を使用するDMCONFIGファイルを生成します。以前のドメイン関連の用語を使用するDMCONFIGファイルを生成するには、dmunloadcfの-cオプションを使用します。
dmloadcf管理ツールは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで使用できます。
BDMCONFIG環境変数は、BDMCONFIGファイルを指していなければなりません。
次の例は、バイナリの構成ファイルを、テキスト形式ファイルのbank.dmconfigからロードする方法を示しています。ブロック数が2000のBDMCONFIGデバイスが作成(または初期化)されます。
dmloadcf -b 2000 bank.dmconfig入力にエラーが検出されると、エラーの原因となった行が、問題を指摘するメッセージとともに、標準エラーにプリントされます。DMCONFIGファイルに構文エラーが見つかったり、システムが稼働中の場合は、BDMCONFIGファイルの情報は更新されず、dmloadcfは終了コード1で終了します。
dmloadcfをアクティブなノード上で実行すると、次のエラー・メッセージが表示されます。
*** dmloadcf cannot run on an active node *** dmloadcfを実行するユーザーの実効ユーザー識別子が、TUXCONFIGファイルで指定されたUIDと一致しない場合は、次のエラー・メッセージが表示されます。
*** UID is not effective user ID *** dmloadcfが正しく完了すると、終了コード0で終了します。BDMCONFIGファイルが更新されると、このイベントを記録するためのuserlogメッセージが生成されます。
dmunloadcf(1)、DMCONFIG(5)、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』<Default ?Font>
『ATMIアプリケーションでのOracle Tuxedo TOP END Domain Gatewayの使用』<Default ?Font>
dmunloadcf - バイナリのBDMCONFIG Domains構成ファイルをアンロード
dmunloadcf [-c]
dmunloadcfは、BDMCONFIG構成ファイルをバイナリ表現からテキストに変換します。この変換処理は、バイト・オーダーが異なるマシン間でファイルを簡潔に移送したり、ファイルのバックアップ・コピーを簡潔に作成して信頼性を高める場合に役立ちます。テキスト形式については、DMCONFIG(5)で説明した内容と同じです。
dmunloadcfは、BDMCONFIG環境変数が参照するBDMCONFIGファイルから値を読み取り、その値を標準出力に書き込みます。
Oracle Tuxedoリリース7.1以降では、dmunloadcfは、デフォルトで新しいドメイン関連の用語を使用するDMCONFIGファイルを生成します。詳細は、次の「Domains関連の新しい用語」を参照してください。以前のドメイン関連の用語を使用するDMCONFIGファイルを生成するには、-cオプションを使用します。
<Default ?Font>Oracle Tuxedoのリリース7.1以降では、ドメイン関連の用語の一部が変更されました。Domains用のMIBでは、新しいクラスおよび属性の用語を使用して、ローカル・ドメインとリモート・ドメイン間の相互作用を記述しています。新しい用語は、DM_MIBのリファレンス・ページ、クラスおよびエラー・メッセージや、DMCONFIGのリファレンス・ページ、セクション名、パラメータ名およびエラー・メッセージで使用されています。詳細は、DM_MIB(5)リファレンス・ページの「Domains関連の新しい用語」を参照してください。
旧バージョンとの互換性のため、Oracle Tuxedo 7.1より前に使用されたDMCONFIG用語と、新しいDomains用のMIB用語との間に別名が提供されています。Oracle Tuxedo 7.1以降では、dmloadcfは両方のDMCONFIG用語を使用できます。dmunloadcfは、デフォルトで新しいドメイン関連の用語を使用するDMCONFIGファイルを生成します。以前のドメイン関連の用語を使用するDMCONFIGファイルを生成するには、dmunloadcfの-cオプションを使用します。
dmunloadcfコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
次の例は、/usr/tuxedo/BDMCONFIGの構成を、bdmconfig.backupファイルにアンロードする方法を示しています。
BDMCONFIG=/usr/tuxedo/BDMCONFIG dmunloadcf > bdmconfig.backupdmunloadcfは、BDMCONFIG環境変数が指すファイルが存在しているかどうか、そのファイルがOracle Tuxedoシステムの有効なファイル・システムであるかどうか、そしてそのファイルにBDMCONFIG表が入っているかどうかをチェックします。これらの条件が1つでも満たされないと、dmunloadcfはエラー・メッセージをプリントして、エラー・コード1で終了します。dmunloadcfが正しく完了すると、終了コード0で終了します。
『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』<Default ?Font>
『ATMIアプリケーションでのOracle Tuxedo TOP END Domain Gatewayの使用』<Default ?Font>
gencat - フォーマットされたメッセージ・カタログを生成
gencat [-m]catfile msgfile. . .
gencatユーティリティは、メッセージ・テキストのソース・ファイルmsgfileをフォーマットされたメッセージ・データベースcatfileにマージします。このデータベースがなければ、データベースcatfileが作成されます。catfileが存在する場合には、そのメッセージが新しいcatfileに組み込まれます。セット番号とメッセージ番号が矛盾する場合には、msgfileに定義されている新しいメッセージ・テキストがcatfileに現在格納されている古いメッセージ・テキストと置き換わります。gencatに入力されるメッセージ・テキストのソース・ファイルには、セット番号とメッセージ番号、あるいはメッセージ番号のみ(この場合、セットNL_SETD (「nl_types(5)」を参照)が想定されます)のいずれかを収めることができます。
メッセージ・テキストのソース・ファイルの形式は、次のように定義されています。ただし、メッセージ・テキストのソース行のフィールドは1つのASCIIの空白またはタブ文字で区切ります。その他のASCIIの空白やタブは、次のフィールドの一部とみなされます。
$set n comment
nは、$set、$delset、またはファイルの終わりが現れるまで、次のメッセージのセット識別子を指定します。nは、一定の範囲内(1-{NL_SETMAX})の数である必要があります。単一のソース・ファイル内のセット識別子は、連続している必要はありません。セット識別子に続く文字列はすべてコメントとして扱われます。$setディレクティブがメッセージ・テキスト・ソース・ファイルに指定されない場合、すべてのメッセージはデフォルトのメッセージ・セットに含まれます。NL_SETD。
$delset n comment
$ comment
m message_text
mはメッセージ識別子で、これは範囲(1-{NL_MSGMAX})内の番号です。このメッセージ・テキストの構文と、「注意」で説明する-mコマンドライン・オプションの構文とを混同しないようにしてください。メッセージ・テキストは、セット識別子が最後の$setディレクティブによって指定され、かつメッセージ識別子がmである状態でメッセージ・カタログに格納されます。メッセージ・テキストが空で、ASCIIの空白またはタブ・フィールド区切り文字があると、空の文字列がメッセージ・カタログに格納されます。メッセージ・ソース行にメッセージ番号があっても、フィールド区切り文字もメッセージ・テキストもない場合は、その番号を持つメッセージ(ある場合)がカタログから削除されます。メッセージ識別子は必ずしも連続している必要はありません。メッセージ・テキストの長さは、範囲(0-{NL_TEXTMAX})内とします。
$quote c
cを指定します。この文字は、後続のスペースやnull (空)メッセージをメッセージ・ソース行で見分けやすいようにメッセージ・テキストを囲むときに使用できます。デフォルトでは、あるいは空の$quoteディレクティブが指定された場合は、メッセージ・テキストの引用は認識されません。メッセージ・テキスト・ソース・ファイルの空の行は無視されます。テキスト文字列は、次の表に定義する特殊な文字とエスケープ・シーケンスを含むことができます。
エスケープ・シーケンス\dddは、円マークとそれに続く1、2または3桁の8進数からなり、目的の文字の値を指定します。円マークに続く文字が指定されたものの1つでない場合には、円マークは無視されます。
円マークの次にASCIIの改行文字を使用して、文字列を次の行に継続させることもできます。たとえば、次の2行は1つのメッセージ文字列を表しています。
1 This line continues \
to the next line1 This line continues to the next line gencatは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
このバージョンのgencatで生成されるカタログは、mallocされた領域に実行時に読み込まれます。gencatの一部のバージョンで使用できる共有カタログは使用できません。システムによっては、mallocされるカタログの生成には-mオプションを指定する必要があります。このオプションはコマンドラインに指定できますが、効果はありません。mallocされるカタログはデフォルトです。-mオプションは互換性を維持するためだけにサポートされます。
このコマンドで生成されるカタログ・ファイルのサイズは64Kまでに限定されています。それ以上のサイズになるような場合には、このコマンドからエラーが報告され、カタログ・ファイルは生成されません。
genicf [options]idl-filename...
idl-filename(s)が指定されると、ICFファイルが生成されます。このファイルでは、コード生成プロセスだけでなく、実装のポリシーに関する情報や、実装と実装するインタフェースとの関係が提供されます。ICFファイルがidlコマンドの入力として提供されると、idlコマンドは、ICFファイルに指定された実装/インタフェースのペアに対してサーバー・コードを生成します。
生成されるICFファイルのファイル名は、コマンドラインで指定する最初のidl-filenameと同じですが、拡張子は.icfになります。
間違ったOMG IDL構文でidl-filename(s)を指定すると、それに応じたエラーが返されます。
-D identifier=[definition]
#defineと同じ働きをします。つまり、-Dオプションは、定義ファイル内にある特定の識別子のかわりに使用するトークン文字列またはマクロを定義します。definitionが指定されていない場合、identifierは1に定義されます。複数の-Dオプションを指定できます。-Dオプションとidentifierの間の空白は省略できます。
-I pathname
#includeで指定するディレクトリのほか、インクルード・ファイルを検索するディレクトリを指定します。複数のディレクトリを指定する場合は、複数の-Iオプションを指定します。
#includeには、システム(<a.idl>など)とユーザー("a.idl"など)の2種類があります。UNIXシステムでは、システムの#includeディレクトリのパスは、/usr/includeと、-Iオプションで指定されるすべてのディレクトリです。ユーザー・ディレクティブ#includeのパスは、#includeディレクティブを含むファイルの場所と、その後に続く、システム・ディレクティブ#includeに指定されたパスで構成されます。Windows 2003システムでは、システムの#includeディレクトリとユーザー・ディレクティブ#includeの区別はありません。
-hおよび -?
次のコマンドは、emp.icfファイルを作成します。 genicf emp.idl
idl - Object Management Group (OMG)のインタフェース定義語ファイルをコンパイルし、インタフェースに必要なファイルを生成
idl [-i] [-Didentifier[=value]] [-Ipathname][-h] [-P] [-T]idl-filename... [icf-filename...]
提供されているidl-filename()ファイルおよびオプションのicf-filename()ファイルを指定すると、idlコマンドは以下のファイルを生成します。
idl-filename_c.cpp
idl-filename_c.h
idl-filename_s.cpp
idl-filename_s.h
idl-filename_i.cpp
idl-filename_i.h
| 注意: | ICFファイルが指定されている場合は、そのICFファイル内の情報を基に、デフォルト値をオーバーライドするインタフェース/実装に関する情報がコード・ジェネレータに渡されます。通常、実装のアクティブ化ポリシーおよびトランザクション・ポリシーはICFファイルに指定されます。ICFファイルが指定されていない場合は、OMG IDLファイルで指定されるすべてのインタフェースに対してデフォルトのポリシーが有効になり、すべてのインタフェースに対してスケルトン・コードが生成されます。icf-filenameファイルをidlコマンドへの入力として指定すると、icf-filenameに指定された実装/インタフェースのペアのみが、サーバーの一部として生成されます。 |
IDLコンパイラは、生成するクライアント・スタブの情報をfilename_c.cppファイルおよびfilename_c.hファイルに格納します。生成されたサーバー・スケルトンの情報は、filename_s.cppファイルおよびfilename_s.hファイルに格納されます。
filename_c.cppおよびfilename_c.h)や、すでに生成されているサーバー・スケルトン・ファイル(filename_s.cppおよびfilename_s.h)を上書きします。以前のバージョンのファイルはすべて破棄されます。
-iオプションを使用すると、IDLコンパイラはサンプルの実装クラス定義ファイル(filename_i.h)を上書きします。以前のバージョンのファイルは破棄されます。サンプル実装ファイル(filename_i.cpp)も上書きされますが、コード保護ブロック内のコードは上書きされず、新しく生成されるファイルに復元されます。データが失われるのを避けるために、サンプル実装ファイル(filename_i.hおよびfilename_i.cpp)を再生成する場合は、あらかじめそれらのファイルを安全な場所にコピーしておくことをお薦めします。
不明なオプションがこのコマンドに渡されると、そのオプションおよび使用方法を通知するメッセージがユーザーに表示され、コンパイルは実行されません。
idl filename
-D identifier[=definition]
#defineと同じ働きをします。つまり、-Dオプションは、定義ファイル内にある特定の識別子のかわりに使用するトークン文字列またはマクロを定義します。definitionが指定されていない場合、identifierは1に定義されます。複数の-Dオプションを指定できます。-Dオプションと名前の間の空白は省略できます。
-I pathname
#includeで指定するディレクトリのほか、インクルード・ファイルを検索するディレクトリを指定します。複数のディレクトリを指定する場合は、複数の-Iオプションを指定します。
#includeには、システム(<a.idl>など)とユーザー("a.idl"など)の2種類があります。システム・ディレクティブ#includeのパスは、システム・インクルード・ディレクトリおよび-Iオプションで指定されるディレクトリで構成されます。ユーザー・ディレクティブ#includeのパスは、#includeディレクティブを含むファイルの場所と、その後に続く、システム・ディレクティブ#includeに指定されたパスで構成されます。デフォルトでは、#includeディレクティブで取り込むファイル内のテキストは、クライアント・コードおよびサーバー・コードには取り込まれません。
-i
idl-filename_i.cppファイルを生成します。これらのファイルには、OMG IDLファイルで指定されたインタフェースを実装する実装用のサンプル・テンプレートが入っています。| 注意: | idlコマンドに-iオプションを使用して実装ファイルを更新する手順は以下のとおりです。 |
"OBB_PRESERVE_BEGIN"および"OBB_PRESERVE_END"を"M3_PRESERVE_BEGIN"および"M3_PRESERVE_END"に変更します。*_i.cpp)に追加した場合は、そのファイルを編集して、取り込んだ要素をINCLUDES保護ブロック内に移動します。idlコマンドで-iオプションを使用して、編集した実装ファイルを再生成します。*_i.h)に修正を加えていた場合は、新しく生成された定義ファイルにその修正箇所を反映させます。修正箇所はコード保護ブロック内に配置します。これにより、以降更新を行ってもその修正箇所は自動的に保護されるようになります。実装のコンストラクタ関数およびデストラクタ関数に特に注意してください。関数シグネチャがOracle Tuxedoリリース7.1で変更されました。*_i.cpp)の保護ブロックの外側に、または実装のコンストラクタ関数またはデストラクタ関数に修正を加えていた場合は、新しく生成されたファイルを編集して、その修正箇所を反映させます。修正箇所は保護ブロック内に配置します。これにより、以降更新を行ってもその修正箇所は自動的に保護されるようになります。-P
Tobj_ServantBaseクラスからは継承しませんが、直接PortableServer::ServantBaseクラスから継承します。デフォルトでは、スケルトン・クラスはTPフレームワークを使用します。そのため、これらのサーバーはTPフレームワークを使用しないので、共同クライアント/サーバーを開発している場合はこのスイッチを使用する必要があります。
Tobj_ServantBaseクラスがないということは、そのサーバーントにactivate_objectメソッドとdeactivate_objectメソッドがないことを意味します。CORBAサーバーでは、これらのメソッドはTPフレームワークによって呼び出され、サーバーントに対してあるメソッドを呼び出す前に、そのサーバーントの状態を動的に初期化して保存します。CORBA共同クライアント/サーバーの場合、ユーザー作成コードで明示的にサーバーントを作成し、サーバーントの状態を初期化する必要があります。したがって、Tobj_ServantBaseの操作は必要ありません。-Pオプションを使用すると、TP Frameworkが使用できないため、ICFファイルは使用されません。
-T
idl emp.idl
idl emp.idl emp.icf
idl2ir - インタフェース・リポジトリを作成し、インタフェース・リポジトリにインタフェース定義をロード
idl2ir [options]definition-filename-list
[-frepository-name] [-c]
[-Didentifier[=definition]]
[-Ipathname[-Ipathname] [...]] [-N{i|e}]
このコマンドを使用すると、インタフェース・リポジトリを作成し、そのインタフェース・リポジトリにインタフェース定義をロードできます。リポジトリ・ファイルがない場合は作成されます。リポジトリ・ファイルが存在する場合は、指定されたインタフェース定義がそのファイルにロードされ、その結果、ファイルが更新されます。
このコマンドを使用すると、新しいインタフェース・リポジトリ・データベース・ファイルが作成されます。
definition-filename-list
-f repository-name
-fオプションを指定しない場合、UNIXシステムではインタフェース・リポジトリ・ファイルとしてrepository.ifrが、Microsoft Windows 2003システムでは repository_1.ifrが作成されます。
-c
既存のリポジトリが存在する場合に、このオプションが指定されていないときは、既存のリポジトリが更新されます。
-D identifier[=definition]
#defineと同じ働きをします。つまり、-Dオプションは、定義ファイル内にある特定の識別子のかわりに使用するトークン文字列またはマクロを定義します。definitionが指定されていない場合、identifierは1に定義されます。複数の-Dオプションを指定できます。
-I pathname
#includeには、システム(<a.idl>など)とユーザー("a.idl"など)の2種類があります。システム・ディレクティブ#includeのパスは、UNIXシステムの/usr/includeおよび-Iオプションで指定されるディレクトリで構成されます。システム・ディレクティブ#includeのパスは、Windows NTシステムのローカル・ディレクトリおよび-Iオプションで指定されるディレクトリで構成されます。ユーザー・ディレクティブ#includeのパスは、カレント・ディレクトリおよび-Iオプションで指定されるディレクトリで構成されます。複数の-Iオプションを指定できます。
| 注意: | インタフェース・リポジトリに対するサーバー・プロセスの実行中にインタフェース・リポジトリにロードされる追加定義は、そのサーバー・プロセスが停止して再起動するまでは受け付けられません。 |
ir2idl [options] [interface-name]
[-frepository-name] [-n]
[-tinterface-type] [-ofilename]
このコマンドはインタフェース・リポジトリの内容を表示します。-oオプションを使用して出力をファイルに送れば、リポジトリからOMG IDLファイルを抽出できます。デフォルトでは、リポジトリ・ファイルはrepository.ifrです。
interface-name
-f repository-name
-n
-t interface-type
-o filename
irdel [-frepository-name] [-iid]object-name
このコマンドは、指定されたインタフェースをリポジトリから削除します。削除できるのは、他のインタフェースから参照されていないインタフェースだけです。デフォルトでは、リポジトリ・ファイルはrepository.ifrです。
-f repository-name
repository-nameの値は、インタフェース・リポジトリのファイル指定です。このオプションが指定されない場合、repository.ifrがデフォルトとして使用されます。
-i id
object-name
MOD1::INTERF2::OP3と指定できます。この場合、操作OP3はインタフェースINTERF2内にあり、そのインタフェースはアプリケーションMOD1内にあります。
mkfldcs、mkfldcs32 - フィールド表からC#のヘッダー・ファイルを作成
mkfldcs [-d outdir] [ field_table... ]
mkfldcs32 [-d outdir] [ field_table... ]
mkfldcsはmkfldhdrに似ていますが、出力されるファイルがC#のソース・ファイルの生成に使用されることが異なります。このソース・ファイルには、入力ファイルで与えられた各FMLフィールドIDの定義などのパブリック・クラスが含まれます。
mkfldcsコマンドライン・オプションは、mkfldhdr、mkfldhdr32(1)と同じです。mkfldcs32は32ビットFMLで使用します。
『Tuxedo .NETワークステーション・クライアントの使用』のTuxedo .NETワークステーション・クライアント・アプリケーションの作成に関する項<Default ?Font>
mkfldhdr、mkfldhdr32 - フィールド表からヘッダー・ファイルを作成
mkfldhdr[-doutdir] [ field_table... ]mkfldhdr32[-doutdir] [ field_table... ]
mkfldhdrは、各フィールド表をCプログラムにおける組込みに適するヘッダー・ファイルに変換します。結果として得られたヘッダー・ファイルからは、フィールド名からフィールドIDへの変換を行うための#defineマクロが得られます。ヘッダー・ファイルの名前は、変換する各ファイルのファイル名に.hを付けることによって得られます。
フィールド表名は、コマンドラインで指定してもかまいません。また、各ファイルは対応するヘッダー・ファイルに変換されます。
フィールド表名をコマンドラインで指定しなかった場合には、プログラムは変換するフィールド表のリストとしてFIELDTBLS環境変数を、またファイルの検索に使用するディレクトリのリストとしてFLDTBLDIR環境変数を使用します。FIELDTBLSは、フィールド表ファイル名の、カンマで区切られたリストを指定します。FIELDTBLSに値がない場合、(唯一の)フィールド表ファイルの名前としてfld.tblが使用されます(この場合、結果として得られるヘッダー・ファイルはfld.tbl.hになります)。
FLDTBLDIR環境変数は、コロンで区切られたディレクトリのリストで、この中から名前が絶対パス名でないフィールド表が検索されます。フィールド表の検索は、UNIXシステムのPATH変数を使用した実行可能コマンドの検索と非常によく似ています。FLDTBLDIRが定義されない場合は、現在のディレクトリのみが検索されます。このため、コマンドラインにフィールド表名が指定されず、FIELDTBLSとFLDTBLDIRが設定されない場合は、mkfldhdrによって、現在のディレクトリのフィールド表fld.tblがヘッダー・ファイルfld.tbl.hに変換されます。
mkfldhdr32は、32ビットのFMLで使用します。環境変数FIELDTBLS32およびFLDTBLDIR32を使用します。
-d
フィールド表のロードに失敗した場合、あるいは出力ファイルを生成できなかった場合には、エラー・メッセージが出力されます。
FLDTBLDIR=/project/fldtbls
FIELDTBLS=maskftbl,DBftbl,miscftbl,
export FLDTBLDIR FIELDTBLS
この例では、ディレクトリ/project/fldtblsのファイルmaskftbl、DBftblおよびmiscftblを処理することにより、mkfldhdrは、#includeファイルmaskftbl.h、DBftbl.hおよびmiscftbl.hをカレント・ディレクトリに作成します。
上記の例のように環境変数を設定すると、コマンドmkfldhdr -d$FLDTBLDIRは同じ入力フィールド表ファイルを処理して、同じ出力ファイルを生成しますが、それらのファイルは環境変数FLDTBLDIRの値で示されるディレクトリに格納されます。
また、コマンドmkfldhdr myfieldsは、入力ファイルmyfieldsを処理して、カレント・ディレクトリにmyfields.hを生成します。
『Oracle Tuxedo ATMI FML関数リファレンス』のFML関数の概要に関する項<Default ?Font>、「field_tables(5)」
mklanginfo - ロケールの言語情報定数をコンパイル
mklanginfo[fname]
このプログラムは引数として指定されたファイルを取り込み、その入力を$TUXDIR/locale/xx/LANGINFOに配置するのに適したファイルに変換します(xxは特定のロケール)。ファイルの引数が指定されていない場合は、標準入力が使用されます。この言語値は、setlocale(3c)、strftime(3c)およびnl_langinfo(3c)で使用されます。
mklanginfoは入力行を読み取ります。このとき、空白または「#」で始まる行は無視されます。値入力行は次の形式で指定する必要があります。
<token> = “value”
トークン(token)と二重引用符で囲んだ値との間の文字は、二重引用符以外の任意の文字にすることができます(トークンの後に空白がある場合)。valueがnull文字列であると、その行は無視されます。そうでなければ、トークンは1から48までの任意の整数とするか、以下に示す文字列のいずれかとする必要があります。
Integer String Value 1
DAY_1 Day 1 of the week, for example, Sunday 2
DAY_2 Day 2 of the week, for example, Monday 3
DAY_3 Day 3 of the week, for example, Tuesday 4
DAY_4 Day 4 of the week, for example, Wednesday 5
DAY_5 Day 5 of the week, for example, Thursday 6
DAY_6 Day 6 of the week, for example, Friday 7
DAY_7 Day 7 of the week, for example, Saturday 8
ABDAY_1 Abbreviated day 1 of the week, for example, Sun 9
ABDAY_2 Abbreviated day 2 of the week, for example, Mon 10
ABDAY_3 Abbreviated day 3 of the week, for example, Tue 11
ABDAY_4 Abbreviated day 4 of the week, for example, Wed 12
ABDAY_5 Abbreviated day 5 of the week, for example, Thu 13
ABDAY_6 Abbreviated day 6 of the week, for example, Fri 14
ABDAY_7 Abbreviated day 7 of the week, for example, Sat 15
MON_1 Month 1 of the year, for example, January 16
MON_2 Month 2 of the year, for example, February 17
MON_3 Month 3 of the year, for example, March 18
MON_4 Month 4 of the year, for example, April 19
MON_5 Month 5 of the year, for example, May 20
MON_6 Month 6 of the year, for example, June 21
MON_7 Month 7 of the year, for example, July 22
MON_8 Month 8 of the year, for example, August 23
MON_9 Month 9 of the year, for example, September 24
MON_10 Month 10 of the year, for example, October 25
MON_11 Month 11 of the year, for example, November 26
MON_12 Month 12 of the year, for example, December 27
ABMON_1 Abbreviated month 1 of the year, for example, Jan 28
ABMON_2 Abbreviated month 2 of the year, for example, Feb 29
ABMON_3 Abbreviated month 3 of the year, for example, Mar 30
ABMON_4 Abbreviated month 4 of the year, for example, Apr 31
ABMON_5 Abbreviated month 5 of the year, for example, May 32
ABMON_6 Abbreviated month 6 of the year, for example, Jun 33
ABMON_7 Abbreviated month 7 of the year, for example, Jul 34
ABMON_8 Abbreviated month 8 of the year, for example, Aug 35
ABMON_9 Abbreviated month 9 of the year, for example, Sep 36
ABMON_10 Abbreviated month 10 of the year, for example, Oct 37
ABMON_11 Abbreviated month 11 of the year, for example, Nov 38
ABMON_12 Abbreviated month 12 of the year, for example, Dec 39
RADIXCHAR Radix character, for example, '.' 40
THOUSEP Separator for thousands 41
YESSTR Affirmative response string, for example, yes 42
NOSTR Negative response string, for example, no 43
CRNCYSTR Currency symbol 44
D_T_FMT string for formatting date and time, for example, “%a%b%d%H:%M:0Y” 45
D_FMT string for formatting date, for example, “%m/%d/%y” 46
T_FMT string for formatting time, for example, “H:%M:%S” 47
AM_FMT Ante Meridian affix, for example, AM 48
PM_FMT Post Meridian affix, for example, PM入力行は任意の順序で表示される可能性があります。入力行が同じ値に対して複数回表示される場合、その値の最後の行が使用されます。
mklanginfoは、ファイルを処理すると、前のコード・リストに示した各言語情報定数の文字列名と文字列値を、リストの順に標準エラーに出力します。指定されていない言語情報定数の値としてNULL文字列が使用されます。nl_langinfoは、このような未設定定数についてCロケールのデフォルト値(米国向け英語)を使用します。
コマンドラインにファイル名が指定されていると、mklanginfoはコンパイルされた出力をfname.outに出力します。指定されていない場合は標準出力に出力します。形式は、NULLで終わる文字列値のみのリストです(改行文字は入りません)。
ファイルの読取りエラーや構文エラーがあると、エラー・メッセージが標準エラー出力に書き出された後、終了コード1でプログラムは終了します。成功時には、プログラムは終了コード0で終了します。
Oracle Tuxedoシステム(Cロケール)のデフォルトは、$TUXDIR/locale/C/lang.textに格納されています。フランス語の値を入力するには、(UNIXシステムプラットフォーム上で)管理者が次の操作を行います。
mkdir $TUXDIR/locale/frenchフランス語に翻訳
cd $TUXDIR/locale/french
cp $TUXDIR/locale/C/lang.text .
ed lang.textw
q
mklanginfo lang.text > LANGINFO
$TUXDIR/locale/C/lang.text - Cロケールのデフォルト値$TUXDIR/locale/C/LANGINFO - Cロケールの「コンパイル済」ファイル$TUXDIR/locale/xx/LANGINFO - xxロケールの「コンパイル済」ファイル
mklanginfoコマンドと、その実行結果として得られるLANGINFOファイルは、setlocale()、strftime()、あるいはnl_langinfo()のOracle Tuxedoシステムの互換関数を使用する場合にのみ必要となります。UNIXで提供される関数は、別のファイル・セットおよびファイル形式を使用します。
nl_langinfo(3c)、setlocale(3c)、strftime(3c)、langinfo(5)
[QMCONFIG=<device>]qmadmin[<device>]
qmadminは、次の一覧で示す各種コマンドを使用することにより、メッセージ・キューの作成、検査および変更を行います。汎用デバイス・リスト(UDL)は、Oracle Tuxedo ATMIシステムが稼働するマシンに物理ストレージ・スペースをマップします。UDLのエントリは、キューとキュー・スペースのメッセージが格納される、ディスク空間を指定します。キュー・スペースのための汎用デバイス・リストが存在する(または存在することになる)デバイス(ファイル)名は、コマンドライン引数として指定することも、環境変数QMCONFIGを介して指定することもできます。この両方で指定された場合には、コマンド・オプションが使用されます。
qmadminはシステム付属のサーバーとして、通常の初期化プロセスを行わないため、UBBCONFIGファイルからULOGPFXの値を参照しません。その結果、qmadminコマンドによって生成されたすべてのログ・エントリが、現在の作業ディレクトリに書き込まれます。これに対処するには、ULOGPFX環境変数をユーザー・ログのあるディレクトリのパス名に設定して、エクスポートします。
qmadminは、プロンプトとして不等号(>)を使用します。引数はタブまたは空白(あるいは両方)で区切って入力します。空白を含む引数は二重引用符で囲むこともできます。二重引用符で囲んだ引数に二重引用符が含まれる場合は、含まれる二重引用符の前にバックスラッシュを付ける必要があります。必要な情報がコマンドラインに指定されない場合は、コマンドによって情報の入力を求められます。必須の引数が入力されないと、警告メッセージが表示され、プロンプトが再び表示されます。オプションのパラメータに関する情報に対してはプロンプトは表示されません。
ユーザーは、コマンドの入力を求められた際にqまたは<CTRL-d>と入力するとプログラムを終了できます。[Break]キーを押すと、コマンドからの出力を終了でき、新しいコマンドを入力するように求められます。コマンドの入力を求められた際に[Return]キーを押すと、[Break]キーを押した後を除き、直前のコマンドが繰り返し実行されます。
[Return]を押した後でコマンドを取り消す方法はありません。[Break]を押してもコマンドの出力(ある場合)が終了するだけです。したがって、[Return]を押す前にコマンドを正しく入力したことを確認してください。
qmadminコマンドからの出力は、使用しているページ別表示コマンドに従ってページ別表示されます(後述のpaginateサブコマンドを参照)。
qmadminを初めて入力するときは、開いているキュー・スペースはありません。キュー・スペースを作成するにはqspacecreateを実行します。このキュー・スペースを開くには、qopenを実行します。qaborttrans、qclose、qchangeprio、qchangequeue、qchangetime、qchangeexptime、qcommittrans、qchange、qcreate、qdeletemsg、qinfo、qlist、qprinttrans、およびqsetは、キュー・スペースが開いているときのみ実行できます。
次の表は、機能タイプ別にグループ化したqmadminコマンドをリストしています。
コマンドの形式は、完全名でも省略形でも(省略形がある場合は、完全名の後にカッコで示されます)入力することができ、該当する引数がその後に付きます。大カッコ[ ]で囲まれている引数は省略可能で、中カッコ{ }で囲まれている引数は、相互に排他的な選択肢を示します。
chdl [dlindex [newdevice]]
lidlで戻されます)。第1引数をコマンドラインで指定しなかった場合は、プログラムによって入力が要求されます。
crdl [device [offset [size]]]
QMCONFIGによって参照されるデバイスと一致し、0オフセットを含んでいる必要があります。コマンドラインに引数が入力されていない場合は、プログラムから入力するように要求されます。
/app/queues/myspace 0 500の後に、/app/queues/myspace 1000 500と割り当てると、500から999までのブロックを使用しない合計1000個のブロックが割り当てられます。デバイス・リストおよび目次用に、最初のデバイス・エントリのうちの数エントリが使用されます。デバイス・リストには、最大25エントリまで作成できます。
dsdl [-y] [dlindex]
dlindex引数は、デバイス・リストから削除するデバイスの、汎用デバイス・リストでの索引です。コマンドラインに入力されていない場合は、プログラムから入力するように要求されます。エントリ0は、すべてのVTOCファイルと他のデバイス・リスト・エントリが破棄されないかぎり削除できません。(エントリ0に含まれるデバイスはデバイス・リストと目次を保持するため、このエントリを破棄すると、これら2つの表も破棄されるためです。)VTOCファイルを削除するには、関連するエンティティを削除するしかありません(たとえば、デバイスに存在するキュー・スペースの破棄)。-yオプションを指定されないかぎり、このコマンドは確認のためのプロンプトを表示します。
echo (e) [{off | on}]
help (h) [{command | all}]
ipcrm [-f] [-y] [queue_space_name]
qmadminで開かれている場合は、閉じられます。ipcrmは、キュー・スペースで使用されるすべてのIPCリソースを把握しているため、IPCリソースを削除するただ1つの方法です。qmadminは、他のプロセスがキュー・スペースにアタッチしていないことを確認してから、IPCリソースを削除します。-fオプションを指定すると、他のプロセスがアタッチしている場合でもIPCリソースを強制的に削除できます。-fオプションが指定された場合に-yオプションの指定がなければ、このコマンドは、実行の前に確認のためのプロンプトを表示します。コマンドが正常に完了すると、指定されたキュー・スペースのすべての一時的メッセージが完全に失われます。
ipcs [queue_space_name]
lidl [dlindex]
dlindexを指定すると、デバイス・リストのそのエントリについての情報のみが表示されます。
livtoc
VTOC表のすべてのエントリについて情報を表示します。各エントリについて表示される情報は、VTOC表の名前、VTOC表のあるデバイス、デバイスの先頭からのVTOC表のオフセットおよびこの表に割り当てられているページ数があります。VTOCには、最大100のエントリがあります。
paginate (page) [{off|on}]
pgは、UNIXオペレーティング・システムにおけるデフォルトのコマンドです。シェル環境変数PAGERを使用すると、ページ別表示出力に使用されるデフォルトのコマンドをオーバーライドできます。
qaborttrans (qabort) [-y] [tranindex]
tranindexに関連付けられている、プリコミットされているトランザクションをヒューリスティックに中断します。トランザクション索引をコマンドラインで指定しなかった場合は、プログラムはその入力を要求します。トランザクションが決定されることがわかっていて、その決定がコミットすることであった場合は、qaborttransは失敗します。索引は、事前のqprinttransコマンドの実行から取得されます。-yオプションが指定されていなければ、確認がリクエストされます。このコマンドの使用には、十分な注意が必要です。
qaddext [queue_space_name [pages]]
qmadminで開かれている場合は、閉じられます。物理ページ数は、最も近い4の倍数に切り捨てられます(説明と例は、「qspacecreate」を参照)。スペースは、QMCONFIGデバイスに関連付けられたUDLに定義されたエクステントから割り当てられます。新しいキュー・スペース・エクステントそれぞれが、VTOCの追加エントリを使用します(最大100エントリが使用可能)。キュー・マネージャによって、キュー・スペースがすぐに識別して関連付けることができるように、エクステントの名前が付けられます。コマンドが正常に完了すると、指定されたキュー・スペースのすべての一時的メッセージが完全に失われます。
qchange [-d persist|nonpersist] [-n nhigh,nlow,ncmd] -e default_relative_expiration_time]queue_name [out-of-order [retries [delay [high [low [cmd]]]]]]]
msgidの前に登録)、再試行の回数、各再試行の間の遅延時間(秒)、しきい値コマンドを実行するための上限値と下限値、および永続メッセージに対するしきい値コマンドそのものを指定できます。
none、topおよびmsgidです。topとmsgidの両方をカンマで区切って指定できます。 しきい値を使用すると、永続メッセージのしきい値に到達したときに、コマンドを自動的に実行できるようになります。上限は、コマンドがいつ実行されるかを指定します。上限に到達したときにコマンドを再実行するには、その前に下限に到達する必要があります。たとえば、制限が100メッセージと50メッセージの場合、100メッセージがキューにあるときにコマンドが実行されます。キューのメッセージが排出されて50メッセージまで減らないと、再び100メッセージになってもコマンドは実行されません。キューの容量は、キューが使用するバイト数またはブロック数(numberの後にbまたはB接尾辞)、キューによって使用されるキュー・スペースのパーセンテージ(numberの後に%)、またはキューの合計メッセージ数(numberの後にm)で指定できます。上限と下限のしきい値のタイプは同じにする必要があります。タイプを下限値に指定するかどうかはオプションですが、指定された場合は、上限のタイプと一致する必要があります。メッセージ(m)の接尾辞は、永続メッセージと非永続メッセージの両方に対応します。もう1つのしきい値接尾辞は、永続メッセージだけに適用されます。非永続メッセージのしきい値を指定するには、-nオプションを使用します。しきい値コマンドをコマンドラインに指定するとき、空白が含まれる場合は二重引用符で囲む必要があります。再試行回数は、メッセージをキューから取り出すことができる回数を指定します。トランザクションがロールバックし、メッセージはキューに戻ります。再試行間隔も指定できます。再試行の回数が上限に達すると、キュー・スペースに定義されたエラー・キューにメッセージが移動されます。エラー・キューが定義されていない場合、メッセージは破棄されます。キューのキュー順序値は変更できません。優先度の低いメッセージは、優先度の高いメッセージがキューに含まれていても、10メッセージごとにキューから取り出されます。 -dオプションは、キューのデフォルト配信ポリシーを指定します。-dオプションの有効値は、persistとnonpersistです。デフォルトの配信ポリシーがpersistの場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、永続(ディスク・ベース)配信モードを使用して配信されます。ポリシーがnonpersistの場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、非永続(メモリー)配信モードを使用して配信されます。-dオプションが指定されない場合、システムによって情報は求められず、デフォルトの配信ポリシーは変更されません。デフォルト配信ポリシーが変更されても、すでにキューに存在していたメッセージのサービス配信レベルは変化しません。変更中のキューが現在キュー・スペースにあるメッセージに対して名前が付けられている応答キューである場合、キューのデフォルトの配信ポリシーを変更しても、そのメッセージのサービスの応答品質は変わりません。 メモリー領域の不足やフラグメント化のために一時的メッセージをキューに登録できない場合、メッセージ用の永続ストレージが十分にあってもキューへの登録操作は失敗します。ディスクの不足やフラグメント化のために永続的メッセージをキューに登録できない場合、メッセージ用の非永続ストレージが十分にあってもキューへの登録操作は失敗します。 キュー・スペースで非永続メッセージに予約されているメモリー容量が0の場合、非永続メッセージに予約されている領域はありません。(非永続メッセージのメモリー領域の詳細は、「qspacecreate」および「qspacechange」を参照してください。)この場合、非永続メッセージをキューに登録しようとしても失敗します。これには、ターゲット・キューのデフォルト配信ポリシーがnonpersistで、配信サービス・レベルが指定されていないメッセージが含まれます。 -nオプションは、非永続記憶域のしきい値に到達した際に、コマンドの自動実行に使用するしきい値を指定します。nhigh制限により、コマンドncmdがいつ実行されるかが指定されます。nhigh制限に到達したときにコマンドを再実行するには、その前にnlow制限に到達する必要があります。-nオプションを指定する場合、nhigh、nlowおよびncmdの値すべてを指定する必要があります。そうしないと、コマンドが失敗します。ncmd値は空文字列として指定できます。 -nオプションが指定されなくても、プログラムによって情報の入力を求められることはありません。 メモリー容量(キュー内の非永続データの容量)は、バイト数(b)、ブロック数(B)またはパーセンテージ(numberの後に%)のいずれかのしきい値タイプとして指定できます。nhighとnlowの値のしきい値タイプは同じにする必要があります。たとえば、nhighを100%に設定すると、nlowを指定する場合にはパーセンテージとして指定する必要があります。nlow値のしきい値タイプはオプションです。-nオプションが指定されない場合、非永続メッセージのデフォルトしきい値は変更されません。ncmdに空白が含まれる場合は、二重引用符で囲む必要があります。 [ . . . [high[low[cmd]]] . . . ]しきい値のm接尾辞は、キューのすべてのメッセージ(永続メッセージと非永続メッセージの両方)に適用されます。したがって、nhighとnlowと一緒に使用することはできません。接尾辞-mが指定されていないしきい値[ . . . [high[low[cmd]]] . . . ]は、永続的(ディスク・ベース)メッセージにのみ適用されます。 -e default_relative_expiration_timeオプションは、キューに登録されたメッセージで、有効期限が明示的に指定されていないすべてのメッセージの有効期限を設定します。有効期限には、有効期限の相対時間またはnoneを使用できます。有効期限に達したとき、メッセージがキューから取り出されていない場合や管理時に削除されていない場合には、メッセージがキューから削除され、メッセージに関連付けられたすべてのリソースがシステムによって解放されて、統計情報が更新されます。有効期限の時間がメッセージの使用可能時間より前の場合、使用可能時間が有効期限の切れる時間より前になるようにいずれかの時間を変更しないかぎり、メッセージをキューから取り出すことはできません。また、これらのメッセージがキューからの取出しの対象になったことがなくても、有効期限が切れるとキューから削除されます。トランザクション中にメッセージの期限が切れてもトランザクションは失敗しません。トランザクション内でキューへの登録、またはキューからの取出し中に有効期限が切れたメッセージは、トランザクションが終了した時点でキューから削除されます。メッセージの期限が切れても通知されません。 -eオプションが指定されない場合、キューのデフォルト有効期限は変更されません。qchangeを使用してキューの有効期限を変更しても、すでにキューに存在していたメッセージの有効期限は変更されません。-eオプションが指定されなくても、プログラムによって入力が要求されることはありません。 相対的なdefault_relative_expiration_timeの形式は+secondsです。secondsは、キュー・マネージャが処理を正常に終了してから、メッセージが期限切れになるまでの秒数です。値0を指定するとすぐに期限切れになります。default_relative_expiration_timeの値には、文字列noneを設定することもできます。none文字列を指定すると、明示的な有効期限なしでキューに登録されたメッセージは、期限が明示的に割り当てられないかぎり期限切れになりません。
qchangeexp (qce) -y [newtime]
qscanコマンドを使用して設定します。選択基準が設定されない場合、キューのすべてのメッセージが変更されます。デフォルトでは、有効期限が設定される前に確認を求められます。-yオプションを指定すると、確認のプロンプトが表示されません。newtime値には、現在時刻に対する相対値、絶対値、およびnoneのいずれかを指定できます。newtime値がコマンドラインに入力されていない場合は、プログラムから入力するように要求されます。 この値を変更するキュー・マネージャがメッセージの有効期限をサポートしていても、メッセージの有効期限をサポートしていないOracle Tuxedo ATMIシステムのバージョンによってキューに登録されたメッセージを変更して、期限切れ時間を設定することはできません。qchangeexpの影響を受けるメッセージが、Oracle Tuxedo ATMIシステムのそのようなバージョンの1つによってキューに登録された場合は、選択されたメッセージの一部がこの制約のために変更されなかったことを示すエラー・メッセージが生成されます。 相対有効期限は、リクエストがキュー・マネージャ・プロセスに届いた時点に対して相対的です。相対的なnewtimeの形式は+secondsです。secondsは、キュー・マネージャが処理を正常に終了してから、メッセージが期限切れになるまでの秒数です。secondsが0に設定されると、メッセージはすぐに期限切れになります。有効期限の絶対時間は、キュー・マネージャ・プロセスが常駐するマシンの時計によって決定されます。絶対的なnewtimeの形式は、YY[MM[DD[HH[MM[SS]]]]]です(qscanの説明を参照してください)。newtimeの値には、文字列noneを指定することもできます。この場合、対象のメッセージの有効期限がなくなります。
qchangeprio (qcp) [-y] [newpriority]
-yオプションが指定されていないかぎり、変更の前に確認が求められます。qlistコマンドを実行して、どのようなメッセージが変更されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。newpriority値は、処理のためにメッセージが転送されるときに使用される新しい優先度を指定します。これは1から100までの範囲である必要があります。コマンドラインで指定していないと、入力するよう求められます。
qchangequeue (qcq) [-y] [newqueue]
qsetコマンドを使用して設定され、移動されるメッセージを制限する選択基準は、qscanコマンドを使用して設定されます。選択基準が設定されない場合、キューのすべてのメッセージが移動されます。-yオプションが指定されていないかぎり、変更の前に確認が求められます。qlistコマンドを実行して、どのようなメッセージが移動されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。newqueue値は、メッセージの移動先のキュー名を指定します。コマンドラインでnewqueueが指定されない場合は、プログラムによって入力が要求されます。メッセージの配信サービス・レベルが、newqueueのデフォルト配信ポリシーと一致するように変更されることはありません。
qchangetime (qct) [-y] [newtime]
-yオプションが指定されていないかぎり、変更の前に確認が求められます。qlistコマンドを実行して、どのようなメッセージが変更されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。newtime値には、現在時刻に対する相対値、または絶対値のいずれかを指定できます。コマンドラインで指定していないと、入力するよう求められます。相対的なonetimeの形式は+secondsです。secondsは、現時点からメッセージを実行するまでの秒数です(0の場合、すぐに実行されます)。絶対的なnewtimeの形式はYY[MM[DD[HH[MM[SS]]]]]です(qscanの説明を参照してください)。
qclose
qcommittrans (qcommit) [-y] [tranindex]
tranindexに関連付けられているプリコミットされているトランザクションをヒューリスティックにコミットします。トランザクション索引をコマンドラインで指定しなかった場合は、プログラムはその入力を要求します。トランザクションが決定されることがわかっていて、その決定が中断することであった場合は、qcommittransは失敗します。索引は、事前のqprinttransコマンドの実行から取得されます。-yオプションが指定されていなければ、確認がリクエストされます。このコマンドの使用には、十分な注意が必要です。
qcreate (qcr) [-d persist|nonpersist] [-n nhigh,nlow,ncmd] -e default_relative_expiration_time]queue_name [qorder [out-of-order [retries [delay
[high [low [cmd]]]]]]]]
msgidの前に登録)、再試行の回数、再試行の間隔(秒)、しきい値コマンドを実行するための上限値と下限値、および永続メッセージに対するしきい値コマンドそのものを指定できます。
fifo、lifo、priority、expirationおよびtimeです。キューの順序を指定するときは、重要なソート値から順に指定する必要があります。fifoまたはlifoは、最も重要でないソート値(またはただ1つのソート値)として指定してください。fifoもlifoも指定されない場合、デフォルト値はfifoです。指定されている他のソート基準に適用されます。expirationが指定されると、有効期限のないメッセージは、有効期限付きのメッセージすべてが取り出された後にキューから取り出されます。複数のソート値はカンマで区切って指定できます。out-of-orderの値は、none、topまたはmsgidです。topとmsgidの両方をカンマで区切って指定できます。 しきい値を使用すると、永続メッセージのしきい値に到達したときに、コマンドを自動的に実行できるようになります。上限は、コマンドがいつ実行されるかを指定します。上限に到達したときにコマンドを再実行するには、その前に下限に到達する必要があります。たとえば、制限が100メッセージと50メッセージの場合、100メッセージがキューにあるときにコマンドが実行されます。キューのメッセージが排出されて50メッセージまで減らないと、再び100メッセージになってもコマンドは実行されません。 キューの容量は、キューが使用するバイト数またはブロック数(numberの後にbまたはB接尾辞)、キューによって使用されるキュー・スペースのパーセンテージ(numberの後に%)、またはキューの合計メッセージ数(numberの後にm)で指定できます。上限と下限のしきい値のタイプは同じにする必要があります。メッセージ(m)の接尾辞は、永続メッセージと非永続メッセージの両方に対応します。もう1つのしきい値接尾辞は、永続メッセージだけに適用されます。非永続メッセージのしきい値を指定するには、-nオプションを使用します。タイプを下限値に指定するかどうかはオプションですが、指定された場合は、上限のタイプと一致する必要があります。しきい値コマンドをコマンドラインに指定するとき、空白が含まれる場合は二重引用符で囲む必要があります。 再試行回数は、メッセージをキューから取り出すことができる回数を指定します。トランザクションがロールバックし、メッセージはキューに戻ります。再試行間隔も指定できます。再試行の回数が上限に達すると、キュー・スペースに定義されたエラー・キューにメッセージが移動されます。エラー・キューが定義されていない場合、メッセージは破棄されます。優先度の低いメッセージは、優先度の高いメッセージがキューに含まれていても、10メッセージごとにキューから取り出されます。 -dオプションは、キューのデフォルト配信ポリシーを指定します。-dオプションの有効値は、persistとnonpersistです。デフォルトの配信ポリシーがpersistの場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、永続(ディスク・ベース)配信モードを使用して配信されます。ポリシーがnonpersistの場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、非永続(メモリー)配信モードを使用して配信されます。-dオプションが指定されない場合、システムによって情報は求めらません。キューのデフォルト配信ポリシーはpersistです。デフォルト配信ポリシーが変更されても、すでにキューに存在していたメッセージのサービス配信レベルは変化しません。 メモリー領域の不足やフラグメント化のために一時的メッセージをキューに登録できない場合、メッセージ用の永続ストレージが十分にあってもキューへの登録操作は失敗します。ディスクの不足やフラグメント化のために永続的メッセージをキューに登録できない場合、メッセージ用の非永続ストレージが十分にあってもキューへの登録操作は失敗します。 キュー・スペースで非永続メッセージに予約されているメモリー容量が0の場合、非永続メッセージに予約されている領域はありません。(非永続メッセージのメモリー領域の詳細は、「qspacecreate」および「qspacechange」を参照してください。)この場合、非永続メッセージをキューに登録しようとしても失敗します。これには、ターゲット・キューのデフォルト配信ポリシーがnonpersistで、配信サービス・レベルが指定されていないメッセージが含まれます。 -nオプションは、非永続記憶域のしきい値に到達した際に、コマンドの自動実行に使用するしきい値を指定します。nhigh制限により、コマンドncmdがいつ実行されるかが指定されます。nhigh制限に到達したときにコマンドを再実行するには、その前にnlow制限に到達する必要があります。-nオプションを指定する場合、nhigh、nlowおよびncmdの値すべてを指定する必要があります。そうしないと、コマンドが失敗します。ncmd値は空文字列として指定できます。 -nオプションが指定されなくても、プログラムによって情報の入力を求められることはありません。 メモリー容量(キュー内の非永続データの容量)は、バイト数(b)、ブロック数(B)またはパーセンテージ(numberの後に%)のいずれかのしきい値タイプとして指定できます。nhighとnlowの値のしきい値タイプは同じにする必要があります。たとえば、nhighを100%に設定すると、nlowを指定する場合にはパーセンテージとして指定する必要があります。nlow値のしきい値タイプはオプションです。-nオプションが指定されない場合、デフォルトのしきい値(nhighは100%、nlowは0%)が使用されます。ncmdには" "が設定されます。ncmdに空白が含まれる場合は、二重引用符で囲む必要があります。 [ . . . [high[low[cmd]]] . . . ]しきい値のm接尾辞は、キューのすべてのメッセージ(永続メッセージと非永続メッセージの両方)に適用されます。したがって、nhighとnlowと一緒に使用することはできません。接尾辞-mが指定されていないしきい値[ . . . [high[low[cmd]]] . . . ]は、永続的(ディスク・ベース)メッセージにのみ適用されます。 -e default_relative_expiration_timeオプションは、キューに登録されたメッセージで、有効期限が明示的に指定されていないすべてのメッセージの有効期限を設定します。有効期限には、有効期限の相対時間またはnoneを使用できます。有効期限に達したとき、メッセージがキューから取り出されていない場合や管理時に削除されていない場合には、メッセージがキューから削除され、メッセージに関連付けられたすべてのリソースがシステムによって解放されて、統計情報が更新されます。有効期限の時間がメッセージの使用可能時間より前の場合、使用可能時間が有効期限の切れる時間より前になるようにいずれかの時間を変更しないかぎり、メッセージをキューから取り出すことはできません。また、これらのメッセージがキューからの取出しの対象になったことがなくても、有効期限が切れるとキューから削除されます。トランザクション中にメッセージの期限が切れてもトランザクションは失敗しません。トランザクション内でキューへの登録、またはキューからの取出し中に有効期限が切れたメッセージは、トランザクションが終了した時点でキューから削除されます。メッセージの期限が切れても通知されません。 -eオプションが指定されない場合、キューのデフォルト有効期限はnoneに設定されます。qchangeを使用してキューの有効期限を変更しても、すでにキューに存在していたメッセージの有効期限は変更されません。-eオプションが指定されなくても、プログラムによって入力が要求されることはありません。 相対的なdefault_relative_expiration_timeの形式は+secondsです。secondsは、キュー・マネージャが処理を正常に終了してから、メッセージが期限切れになるまでの秒数です。値0を指定するとすぐに期限切れになります。default_relative_expiration_timeの値には、文字列noneを設定することもできます。none文字列を指定すると、明示的な有効期限なしでキューに登録されたメッセージは、期限が明示的に割り当てられないかぎり期限切れになりません。
qdeletemsg (qdltm) [-y]
qsetコマンドを使用します。削除するメッセージを制限する選択基準は、qscanコマンドを使用して設定します。選択基準が設定されない場合、キューのすべてのメッセージが削除されます。削除の前に確認が求められます。qlistコマンドを実行して、どのようなメッセージが削除されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。このコマンドは、-yオプションを指定していない場合に確認のためのプロンプトを表示します。
qdestroy (qds) [{ -p | -f }] [-y] [queue_name]
-pオプションを指定すると、キュー・スペースにアタッチされているプロセスがない場合には、キューからメッセージを「パージ」してキューを破棄することができます。-fオプションを指定すると、キュー・スペースにメッセージまたはプロセスがアタッチされている場合でも、キューを「強制的に」削除することができます。メッセージが現在のトランザクションに関係している場合、このコマンドは失敗し、エラーがuserlogに書き込まれます。このコマンドは、-yオプションを指定していない場合に確認のためのプロンプトを表示します。
qinfo [queue_name]
qlist (ql)
qsetコマンドを使用します。表示するメッセージを制限する選択基準は、qscanコマンドを使って設定します。設定基準が何も設定されていない場合は、キューにあるすべてのメッセージが表示されます。
verboseモードがオンの場合は、相関識別子が表示されます。
qopen [queue_space_name]
qmadminで開かれている場合は、閉じられます。
qprinttrans (qpt)
qaborttransまたはqcommittransでトランザクションの中断またはコミットを行う際に使用されるものです。
qscan [{ [-t time1[-time2]] [-p priority1[-priority2]] [-m msgid] -i corrid][-d delivery_mode] [-e time1[-time2]] | none }]
qchangeprio、qchangequeue、qchangetime、qdeletemsgおよびqlistに使用する選択基準を設定します。引数noneは選択基準がないことを指定します。キューのすべてのメッセージが影響を受けます。このコマンドを引数なしで実行すると、現在の選択基準の値が表示されます。コマンドライン・オプションで値の範囲を指定するとき(たとえば、-t、-eまたは-p)、値範囲に空白を含めることはできません。-tオプションを使用すると、時間の値または時間範囲を指定できます。time1とtime2の形式は、YY[MM[DD[HH[MM[SS]]]]]です。年、月、日、時、分、秒が指定されます。日時の値で単位が省略されている場合は、使用可能な最小の値にデフォルト設定されます。たとえば、7502は750201000000に相当します。年の範囲00-37は2000-2037として、70-99は1970-1999として処理されます。38-69は無効です。-pオプションを使用すると、優先度の値または優先度の範囲を指定できます。優先度の範囲は1から100までです。-mオプションを使用すると、システムがメッセージをキューに登録するときにメッセージに割り当てられるメッセージIDの値を指定できます。メッセージIDはキュー内で一意であり、長さは最大32文字です。32文字よりも短い値は、右側にnull値(0x0)が埋め込まれます。バックスラッシュや表示できない文字(空白、改行、タブなど)は、バックスラッシュの後に、その文字を表す2文字の16進数値を入力する必要があります(たとえば、空白は\20であり、hello\20worldのように使用します)。-iオプションを使用すると、メッセージに関連付ける相関識別子を指定できます。識別子の値はアプリケーションによって割り当てられ、キューに登録されたメッセージと一緒に格納されます。また、応答メッセージまたはエラー・メッセージのレスポンスと一緒に格納するために渡されます。これにより、アプリケーションが特定のリクエストのレスポンスを識別できるようになります。値は最長32文字です。32文字よりも短い値は、右側にnull値(0x0)が埋め込まれます。バックスラッシュや表示できない文字(空白、改行、タブなど)は、バックスラッシュの後に、その文字を表す2文字の16進数値を入力する必要があります(たとえば、空白は\20であり、my\20ID\20valueのように使用します)。
-d delivery_modeオプションの有効値は、persistとnonpersistです。このオプションは、オペレータが配信方法に基づいて処理を実行できるように、qscanで選択されたメッセージの配信モードを指定します。 -eオプションを使用すると、有効期限または有効期限の範囲を指定できます。time1とtime2の形式は、-tオプションのtime1とtime2と同じです。
qset [queue_name]
qchangeprio、qchangequeue、qchangetime、qdeletemsgおよびqlistに使用するキュー名を設定します。引数なしでこのコマンドを実行すると、現在のキュー名が表示されます。
qsize [-A actions] [-H handles] [-C cursors] [ -O owners] [-Q tmp_queues] -f filter_memory] [-n nonpersistent_msg_memory[b,B]] [-o overflow_memory][pages [queues [transactions [processes [messages]]]]]
pages、queues、(同時) transactions、processesおよび(キュー内) messagesで指定したサイズを使用して、キュー・スペースに必要な共有メモリーのサイズを計算します。コマンドラインで値を指定しなかった場合は、プログラムはそれらの入力を要求します。必要となるシステム・セマフォの数も出力されます。上記以外のオプションで有効な値については、qspacecreateで説明しています。
qspacechange (qspch) [-A actions] [-H handles] [-C cursors] [ -O owners] -Q tmp_queues] [-f filter_memory] [-n nonpersistent_msg_memory[b,B]] -o overflow_memory][queue_space_name [ipckey [trans [procs [messages [errorq [inityn [blocking]]]]]]]]
qspacecreateの項で説明しています。指定したキュー・スペースがqmadminで開かれている場合は、閉じられます。新しいエクステントを追加するには、qaddextを使用する必要があります。キューの数は変更できません。
qspacecreate (qspc) [-A actions] [-n nonpersistent_msg_memory[b,B]] -o overflow_memory][queue_space_name [ipckey [pages [queues [trans
[procs [messages [errorq [inityn [blocking]]]]]]]]]]
ipckey、キュー・スペースに割り当てる物理ページ数、キューの数、同実行トランザクションの数、キュー・スペースに同時にアタッチされるプロセスの数、一度にキューに入れることができるメッセージの数、キュー・スペースのエラー・キューの名前、キュー・スペースの新エクステントでページを初期化するかどうか、キュー・スペースの初期化とウォーム・スタートのディスク入出力を実行するためのブロッキング要素です。
.)が1つ標準出力に表示されます。初期化オプションがオンになっていないにもかかわらず基本的なデバイスが文字特殊デバイスではない場合、まだそのエクステントに対して指定したサイズに到達していないと、ファイルが初期化されます(つまり、指定されたスペースを割り当てるためにファイルが増加します)。キュー・スペースの作成時やウォーム・スタート(キュー・スペースの再起動)時にブロックの読取りおよび書込みを行う場合、入出力操作のサイズは、ブロッキング要素によって指定されるディスク・ページ・サイズの倍数として計算されます。– A actionsオプションは、キューイング・サービス・コンポーネントが同時に処理できる追加のアクション数を指定します。ブロッキング操作の発生時に追加操作を利用できる場合、ブロッキング操作は条件を満たす状態になるまで保留されるように設定されます。ブロッキング操作が保留されると、他の操作リクエストを処理できます。ブロッキング操作が完了すると、その操作に関連する操作は続く操作でも実行できるようになります。ブロッキング操作がリクエストされた時点ですぐに条件を満たす状態にならず、利用可能な操作もない場合には、操作は失敗します。システムでは、キュー・スペースにアタッチ可能なプロセスの数と同じ数だけ操作が予約されているため、それぞれのキュー・マネージャ・プロセスは少なくとも1つブロッキング操作を所有できます。システムによって予約されているブロッキング操作の数を超える場合、管理者は予約数より多くの追加ブロッキング操作に対応できるようにシステムを設定することができます。– A actionsオプションが指定されていない場合、デフォルトはゼロになります。– Aオプションが指定されていない場合でも、プログラムはそれを要求しません。-n nonpersistent_msg_memoryオプションは、キュー・スペースに含まれるすべてのキューの非永続メッセージ向けに共有メモリー内で予約する領域のサイズを指定します。サイズは、バイト(b)または(B)で指定され、ブロック・サイズは、ディスク・ブロック・サイズと同等です。[bB]接尾辞はオプションで、指定されない場合、デフォルトはブロックになります。-nオプションが指定されない場合、メモリー・サイズはデフォルトでゼロ(0)になります。さらに、-nオプションが指定されない場合でも、プログラムはそれを要求しません。nonpersistent_msg_memoryの値がバイト(b)で指定された場合、システムはその値をページあたりのバイト数で割り(ページ・サイズはディスク・ページ・サイズと等しい)、結果を直近の整数に切り捨て、そのページ数のメモリーを割り当てます。たとえば、ページ・サイズを1024バイト(1KB)として考えると、リクエストされた値が2000bの場合は1ページ分(1024バイト)のメモリー割当てが行われ、リクエストされた値が2048bの場合は2ページ分(2048バイト)のメモリー割当てが行われます。ページあたりのバイト数より小さい値をリクエストすると、0ページ(0バイト)が割り当てられます。nonpersistent_msg_memoryの値をブロック(B)で指定し、1メモリー・ブロックが1メモリー・ページと等しいとすると、システムは指定した値と同じページ数を割り当てます。たとえば、リクエストされた値が50Bの場合、50ページ分のメモリー割当てが行われます。キュー・スペースのnonpersistent_msg_memoryがゼロ(0)の場合、非永続メッセージ用の領域は確保されません。この場合、非永続メッセージをキューに登録しようとしても失敗します。永続的な記憶域と非永続的な記憶域は互換性がありません。メモリー領域の不足やフラグメント化のために一時的メッセージをキューに登録できない場合、メッセージ用の永続ストレージが十分にあってもキューへの登録操作は失敗します。ディスクの不足やフラグメント化のために永続的メッセージをキューに登録できない場合、メッセージ用の非永続ストレージが十分にあってもキューへの登録操作は失敗します。– o overflow_memoryオプションは、割り当てられている共有メモリー・リソースの一部またはすべてが使い果たされているような最大負荷時に対応するために、共有メモリー内で予約するメモリー領域のサイズを指定します。メモリー・サイズはバイト単位で指定されます。追加のオブジェクトは、この追加メモリーから先着順に割り当てられます。追加メモリーに作成されたオブジェクトを閉じるか破棄すると、次にオーバーフローが発生するときに備えてメモリーが解放されます。– o overflow_memoryオプションが指定されない場合、デフォルトはゼロになります。– oオプションが設定されない場合でも、プログラムがそれを要求することはありません。この追加メモリー領域では、設定数より多くのオブジェクトを生成できますが、追加メモリーを特定の時点で特定のオブジェクトに対して使用できるとはかぎりません。現在オーバーフロー・メモリーを使用できるのは、アクション、ハンドル、カーソル、オーナー、一時キュー、タイマー、およびフィルタのみです。
qspacedestroy (qspds) [-f] [-y] [queue_space_name]
qmadminで開かれている場合は、閉じられます。デフォルトでは、このキュー・スペースにプロセスがアタッチされている場合、またはキュー・スペースのいずれかのキューにリクエストが存在する場合にはエラーが戻されます。リクエストが入っているキューの破棄については、qdestroyコマンドを参照してください。-fオプションを指定すると、キューにメッセージがあったり、キュー・スペースにプロセスがアタッチされている場合でも、すべてのキューを「強制的に」削除することができます。このコマンドは、-yオプションを指定していない場合に確認のためのプロンプトを表示します。コマンドが正常に完了すると、指定されたキュー・スペースの一時的メッセージはすべて失われます。
qspl) [queue_space_name]
qspacecreateで作成した際の値、またはqspacechangeで最後に変更した際の値)を表示するだけでなく、このコマンドでは、すべてのキュー・スペース・エクステントのサイズが表示されます。システム予約メモリーの容量と構成済の共有メモリーの合計容量も表示されます。共有メモリー・リソース用に割り当てられるメモリー量が、バイト単位(b)で要求したときの量と一致しない場合もあります。説明と例については、qspacecreateの -n nonpersistent_msg_memoryオプションを参照してください。
quit (q)
verbose (v) [{off | on}]
! shellcommand
!!
# [text]
$ QMCONFIG=/dev/rawfs qmadmin
qmadmin - Copyright (c) 1987 ATT; 1991 USL. All rights reserved.
QMCONFIG=/dev/rawfs
# create the list of devices on which the queue space
# can exist; specify two devices, 80000 and 600
# blocks, respectively
# NOTE: the first one will actually contain the device list
#
# create first device on a raw slice
#
> crdl /dev/rawfs 0 80000
Created device /dev/rawfs, offset 0, size 80000 on /dev/rawfs
#
# create another device on a UNIX file
#
> crdl /home/queues/FS 0 600
Created device /home/queues/FS, offset 0, size 600 on /dev/rawfs
#
# if you want a list of the device list
#
> v Verbose mode is now on
> lidl
universal device index. 0:
name: /dev/rawfs
start: 0
size: 20000
free space map(1 entry used 47 available):
size[1]: 79974 addr[1]: 26
universal device index. 1:
name: /home/queues/FS
start: 0
size: 600
free space map(1 entry used 47 available):
size[1]: 600 addr[1]: 0
#
# create a queue space
#
> qspacecreate
Queue space name: myqueuespace
IPC Key for queue space: 42000
Size of queue space in disk pages: 50000
Number of queues in queue space: 30
Number of concurrent transactions in queue space: 20
Number of concurrent processes in queue space: 30
Number of messages in queue space: 20000
Error queue name: ERRORQ
Initialize extents (y, n [default=n]): y
Blocking factor [default=16]: 16
....................
#
# open queue space
#
> qopen myqueuespace
#
# use queue space defaults for queue
> qcreate
Queue name: service1
queue order (priority, time, fifo, lifo): fifo
out-of-ordering enqueuing (top, msgid, [default=none]): top,msgid
retries [default=0]: 1
retry delay in seconds [default=0]: 30
High limit for queue capacity warning (b for bytes used, B for blocks used,
% for percent used, m for messages [default=100%]): 100m
Reset (low) limit for queue capacity warning [default=0m]: 50
queue capacity command: /usr/app/bin/mailadmin myqueuespace service1
#
# get out of the program
#
> qキューの管理者はOracle Tuxedo管理者と同じでなければなりません。キューが存在するデバイスは、管理者が所有しなければならず、qmadminは、キューの管理者としてのみ実行できます。キューに割り当てられたIPCリソースはすべて、キューの管理者によって所有され、モード0600で作成されます。
qmadminは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
qchange ...Queue capacityコマンドなど、qmadmin()セッション内で構成したコマンドを実行するために、WindowsのCreateProcess()関数は、子プロセスをDETACHED PROCESSとして生成します。このようなプロセスには、標準入出力のための関連コンソールがありません。したがって、たとえば、標準コマンドライン構文を使ってdirやdateなどの組込みコマンドを実行するqchange ... Queue capacityを設定した後で、標準出力をファイルにパイプまたはリダイレクトすると、コマンド実行が完了した時点でそのファイルは空になります。
この問題を解決する方法として、たとえば、qchange ... Queue capacity commandを実行するために、date /t > x.outコマンドでファイルのdate情報を取得します。この処理を対話的に行うには、次のような手順で実行します。
qmadmin
> qopenyourQspace> qchangeyourQname>go through all the setups... the threshold queue capacity warning,
and so on> "Queue capacity command: " cmd /c date /t > x.out
この処理をyourFile.cmdなどのコマンド・ファイルから行う場合は、date /t > x.outコマンドをyourFile.cmdに追加し、次のように実行します。
qmadmin
> qopenyourQspace> qchangeyourQname>go through all the setups... the threshold queue capacity warning,> "Queue capacity command: "
and so onyourFile.cmd
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
rexpattern_file C_file
rexpattern[file. . . ]
引数なしで起動する場合、rexは標準入力から正規表現を読み取り、初期化した文字配列を標準出力に書き込みます。通常、出力はCプログラムにインクルードされます。これにより、実行時間およびプログラムのサイズの両方を節約できます。コマンドrexは、標準入力(通常は入力ファイルから切り替えられる)の正規表現をコンパイルし、出力を標準出力(通常は出力ファイルに切り替える)に書き込みます。
入力ファイルにはいくつかのパターンがあります。各形式は次のようになります。
このnameは出力配列で使用されるCの名前で、stringは二重引用符で囲んだ正規表現です。複数のstringがnameの後にある場合は、1つのstringに結合されます。(複数のstringsは、形式を指定しやすいように配慮したものです。)パターンに二重引用符が含まれる場合は、前にバックスラッシュを付ける必要があります。
出力は、Cプログラムにインクルードされるかまたはコンパイルされ、後でロードされます。rex出力を使用するCプログラムでは、rematch(abc,line,0)は、名前がabcである正規表現をlineに適用します。
cname “[a-zA-Z_][a-(3c)-Z0-9_]*”
tn “\\\\(([0-9]{3})$0\\\\)”
“([0-9]{3})$1”
“-”
“([0-9]{4})$2”/* pattern: “[a-aA-Z_][a-zA-Z0-9_]*" */
char cname[] = {
040,0,0206,012,0,0210,0141,0172,0210,0101,0132,0137,
... };
/* pattern: "\\\\(([0-9]{3})$0\\\\)([0-9]{3})$1-([0-9]{4})$2" */
char tn[] = {
063,0,050,0202,0225,013,0,03,0206,06,0,0210,060,071,
... };rexに1つまたは複数の引数を指定して起動することにより、テストするデータをパターンと突き合せることができます。最初の引数は、残りの引数で指定される名前のファイルの各行に適用されるパターン(正規表現)として扱われます。ファイル名の引数が指定されない場合、標準入力が使用されます。特殊なファイル名-は、標準入力を指す引数として使用できます。
一致するテキストがある場合、一致したものを含む行が出力され、行の一致した部分にアンダースコアが引かれます。さらに、指定されたサブ・パターン用に抽出したすべてのテキストが、別の行に出力されます。
... or 200 programmers in one week.
This sentense has 3 erors.
I need 12 bad men.
... or 200 programmers in one week.
-----
$0 = `200'
This sentense has 3 erors.
---
$0 = `3'
I need 12 bad men.
----
$0 = `12'
tpsubscribe(3c)の正規表現の情報
tlisten [-d device] -l nlsaddr [-u {uid-# | uid-name}][-s][-n sec_principal_name][-c sec_principal_location][-p sec_principal_passvar] [-z bits] [-Z bits ][-j jmxaddr][-m jvm_min_mem][-M jvm_max_mem][-S][-C keyStore][-P keyStorePassword]
tlistenは、ネットワーク独立のリスナー・プロセスで、Oracle Tuxedo ATMIアプリケーション・プロセッサ上でdaemonプロセスとして実行され、たとえばtmboot(1)など、他のOracle Tuxedo ATMIプロセスに対してリモート・サービス接続を提供します。tlistenでは、次のコマンドライン・オプションが使用されます。
-d device
-l nlsaddr
tlistenは、ローカル名の解決機能(通常DNS)を利用してhostnameのアドレスを見つけます。hostnameはローカル・マシンでなければなりません。ローカル名解決機能によってhostnameをローカル・マシンのアドレスに明確に解決します。 IPv4の場合、文字列#.#.#.#はドットで区切った10進数の形式です。ドット区切りの10進数形式では、各#には0 - 255の数字を使用します。このドット区切りの10進数は、ローカル・マシンのIPアドレスを表します。どちらの形式の場合も、 port_numberはtlistenプロセスが入力リクエストに対してリスンするTCPポート番号です。port_numberは0 - 65535の数値または名前です。 | 注意: | 一部のポート番号は、お使いのシステムで使用されるトランスポート・プロトコル(TCP/IPなど)のために予約されている場合があります。予約されているポート番号を確認するには、トランスポート・プロトコルのドキュメントを調べてください。 |
port_numberに指定する名前は、ローカル・マシンのネットワーク・サービス・データベース内に存在する名前でなければなりません。アドレスは、先頭に「 0x 」をつけ、16進形式で指定することもできます。「 0x 」の後の各文字は、 0 - 9の数字か、 A - Fまでの英字(大文字/小文字に関係なく)です。16進数の形式は、IPX/SPXやTCP/IPのような任意のバイナリ・ネットワーク・アドレスに使うことができます。アドレスはまた、任意の文字列として指定することもできます。値は、構成ファイル内のNETWORKセクションのNLSADDRパラメータに指定された値と同じでなければなりません。
-s
の SSLオプションにSSL値を含める必要があります。 | 注意: | UBBCONFiGの*Resourcesセクションとtlisten SSL の設定が同期していない場合、アプリケーションは起動しません。 |
-n sec_principal_name
-c sec_principal_location
wallet.sec_principal_name cを含むディレクトリの場所を指定します。-nオプションに指定されたプリンシパル名のOracle Walletがこの場所に配置されます。 従来のTuxedoセキュリティ資格証明形式を使用する場合、これは、sec_principal_nameで指定されたプリンシパルの復号化(プライベート)キーを収めるファイルまたはデバイスの場所を指定します。 sec_principal_locationパラメータには最大1023文字を指定できます(最後のNULL文字を除く)。
-p sec_principal_passvar
-u {uid-# | uid-name}
tlistenは、指定されたユーザーとして動作します。このオプションにより、 rootによるシステムの初期化処理の一部としてtlistenを起動できます。tlistenの実行ユーザーがrootである場合には、このオプションは必須です。したがって、tlistenプロセスはrootが実行したり、rootまたはnon-rootとして実行したりすることが可能です。tlistenコマンドをroot以外のユーザーが使用する場合には、 -uオプションは必要はありません。root以外のユーザーは-uオプションを設定することはできますが、このオプションにはそのユーザー自身のユーザーIDにしか設定できないので、あまり意味はありません。プロセッサ上でのtlistenプロセスは、使用するアプリケーション管理ユーザーIDが同じであるOracle Tuxedo ATMIアプリケーションすべてをサポートできます。
-z [0 | 40 | 56 | 128|256]
tlistenとの間のネットワーク・リンクを確立する場合の、最小レベルの暗号化を指定します。 0は暗号化が行われないことを示し、 40, 56, 128,および256は暗号化キーの長さをビット単位で指定します。ここで指定する最小レベルの暗号化が満たされない場合、リンクの確立は失敗します。デフォルト値は0です。 | 注意: | リンク・レベルの暗号化の値40は、後方互換性を維持するために提供されています。 256ビットの暗号化は、現時点ではSSLを使用している場合にのみ指定できます。 |
-z [0 | 40 | 56 | 128|256]
tlistenとの間にネットワーク・リンクを確立する場合の、最大レベルの暗号化を指定します。 0は暗号化が行われないことを示し、 40, 56, 128,および256は暗号化キーの長さをビット単位で指定します。デフォルト値は128です。
| 注意: |
-j jmxaddr
jmxaddrで、埋込みJMXエージェントのRMIコネクタのアドレスを指定します。アドレスが他のプロセスに占有されていた場合、ULOGにエラーメッセージが出力され、JMXエージェントは起動しません。
| 注意: | MPドメインの場合、tlistenの-jオプションをすべてのマシン・ノードに構成する必要があります。 |
-m jvm_min_mem
-M jvm_max_mem
jvm_max_memの値をjvm_min_memの値より低く設定すると、JVMは作成されず、JMXエージェントは起動しません。デフォルトの値は500MBです。
-S
-C keyStore
-P keyStorePassword
tlistenプロセスは、ほとんどのサービス・リクエストを認証します。tlistenは、パスワードの一覧ファイルを読み取ります。サービスをリクエストするプロセスは、そのファイル内にあるパスワードを少なくとも1つ提示しなければなりません。APPDIR環境変数が設定された場合、APPDIR/.adm/tlisten.pwという名前のファイルからパスワードが取得されます。
| 注意: | パスワードが入力されると、tlisten.pwファイルが暗号化されます。新しいパスワードを追加する場合は、tlistpwd(1)を使用する必要があります。新しいパスワードは画面には表示されません。 |
| 注意: | 既存のパスワードを削除するには、tlisten.pwの対応する行を削除する必要があります。tlistenパスワードを作成および使用する場合は、全く同じTUXDIRを使用する必要があります。 |
| 注意: | Tuxedo 11gR1をMPモードでマスターとして使用する際、旧バージョンのTuxedoをインストールしてインストール後にtlistenパスワードを変更しなかった場合、セキュリティ・ネゴシエーション・エラー・メッセージCMDTUX_CAT:4291が表示されます。この問題を解決するには、(前のTuxedoバージョンで)1つの空白行を$TUXDIR/udataobj/tlisten.pw tailに追加する必要があります。 |
このファイルが見つからない場合、システムは、Oracle Tuxedo ATMIシステムがインストールされる際に作成されるTUXDIR/udataobj/tlisten.pwを探します。長さがゼロであったり、パスワードがないファイルでは、パスワード・チェックが無効になります。この安全でないモードで実行すると、tlistenやtlistenに接続しているすべてのプロセスがユーザー・ログの警告メッセージを生成します。
tmbootなどのように、tlistenからサービスをリクエストするプロセスは、認証の際に使用するパスワードをプロセスが稼働しているマシンのファイルから検索します。このとき、tlistenと同じ方法でパスワード・ファイルを検索します。
APPDIRは、tlistenパスワード・ファイルの位置を検索するために設定します。 LD_LIBRARY_PATHを設定する必要があります。tlistenプロセスを開始する前にTUXDIR/libに設定してください。一部のUNIXシステムでは、別の環境変数が必要となる場合もあります。HP-UXシステムではSHLIB_PATH環境変数を、AIXシステムではLIBPATH環境変数を使用します。TMUSEIPV6を使用する。n|NにするとデフォルトのIPv4値になり、y|YにするとIPv6値に設定されます。MPモードでは、スレーブ・マシン上でtlisten実行する前にTMUSEIPV6にy|Yを設定する必要があります。tlistenを実行する前に、TUXDIRを設定しエクスポートしておく必要があります。ULOGPFXは、ログ・メッセージを格納しているファイルを送信するのに使用できます。| 注意: | インストールの間に管理パスワード・ファイルが作成されます。Oracle Tuxedo ATMIシステムでは、必要に応じて次のディレクトリでこのファイルを検索します。検索順序は次のとおりです。 |
| 注意: | 管理パスワード・ファイルが確実に見つかるように、必ずAPPDIRかTUXDIR、またはその両方の環境変数を設定してください。 |
リンク・レベル暗号化機能がtlistenとtmbootなどのリクエスト・プロセスとの間で動作している場合は、リンク・レベル暗号化を取り決め、アクティブにしてから認証します。
SSL暗号化機能がtlistenとtmbootなどのリクエスト・プロセスとの間で動作している場合は、SSL暗号化を取り決め、アクティブにしてから認証します。
tlistenプロセスは通常、SIGTERMシグナルを送ることによってしか終了できません。
システムの起動時、アプリケーションごとに1つのtlistenプロセスを起動することをお薦めします。tlistenを呼び出す前に、環境変数TUXDIRおよびAPPDIRを設定しておく必要があります。
tlistenプロセスを起動する別の方法として、手動による起動もできます。tlistenプロセスをアプリケーション管理者が起動する場合、-uオプションは省略できます。同じネットワーク・アドレスを使用してtlistenコマンドを重複して呼び出すと、コマンドは自動的に終了し、該当するメッセージが記録されます。
tlistenを実行するローカル・マシンがTCP/IPアドレス指定機能を使用しており、アドレスが155.2.193.18、マシン名がbackus.company.comであるとします。さらに、tlistenはポート番号2334でリクエストを受け取るとします。また、このポート番号2334がbankapp-nlsaddrという名前のネットワーク・サービス・データベースに追加されているとします。-lオプションで指定するアドレスは、次に示す方法で表現できます。
//155.2.193.18:bankapp-nlsaddr
//155.2.193.18:2334
//backus.company.com:bankapp-nlsaddr
//backus.company.com:2334
0x0002091E9B02C112
最後の表現は16進数形式です。0002はTCP/IPアドレスの最初の部分です。091Eは、ポート番号2334が16進数に変換された値です。その後、IPアドレス155.2.193.12の各要素は16進数に変換されています。つまり、155は9B、2は02というようになります。
//[fe80::202:55ff:fecf:50b]:9010
| 注意: | 注意: IPv6では16進数形式はサポートされません。 |
STARLANネットワークの場合は、通常、推奨アドレスuname.tlistenがユニークな名前になります。
コントロール・パネル・アプレットを介してリモートWindowsマシン上でtlistenプロセスを起動するためには、そのリモート・マシンに対する管理者権限が必要です。
『ATMIアプリケーションにおけるセキュリティの使用』のATMIセキュリティの概要に関する項<Default ?Font>
tlistpwd(1) - システムによって暗号化されたtlisten.pwファイルに対してパスワードを追加または変更するために使用
tlistpwd $TUXDIR
パスワードが入力されると、tlisten.pwファイルが暗号化されます。新しいパスワードを追加する場合は、tlistpwd(1)を使用する必要があります。これにより新しいパスワードが$TUXDIR/udataobj/tlisten.pwの最後に追加されます。既存のパスワードを削除するには、tlisten.pwの対応する行を削除する必要があります。
| 注意: | 新しいパスワードは画面には表示されません。 |
tlistenパスワードを作成および使用する場合は、全く同じTUXDIRを使用する必要があります。
tlistpwd(1)は、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
正常に実行された場合、tlistpwdは終了し、0を戻します。
tlistpwd /home/usr/tuxedo10gR3
Please enter the tlisten password:
Please verify the password:
tlistpwd: INFO: Password appended at the end of file "/home/usr/tuxedo10gR3/udataobj/tlisten.pw".
tlisten(1)、『ATMIアプリケーションにおけるセキュリティの使用』のATMIセキュリティの概要に関する項<Default ?Font>
tmadmin - Oracle Tuxedo掲示板コマンド・インタプリタ
tmadmin [ -r ] [ -c ] [ -v ] tmadminは、このエントリに指定されるコマンドを使用して、掲示板や関連するエンティティの調査と修正の機能を単一プロセッサ、マルチ・プロセッサまたはネットワーク環境に提供します。TUXCONFIGおよびTUXOFFSET環境変数を使用して、Oracle Tuxedo構成ファイルがロードされる場所とオフセットを判別します。tmadminでは以下のオプションがサポートされます。
-c
tmadminを-cオプションを指定して呼び出すと、構成モードになります。有効なコマンドは、default、echo、help、quit、verbose、livtoc、crdl、lidl、dsdl、indlおよびdumptlogのみです。tmadminは、非アクティブ・ノードを含むすべてのノードでこのモードで呼び出すことができます。ノードがアクティブとみなされるのは、tmadminが、(実行しているBBLを介して)管理プロセスまたはクライアントとしてアプリケーションに参加できる場合です。
-r
-rオプションを使用すると、tmadminは、管理者としてではなくクライアントとして掲示板に参加します。つまり、読取り専用モードをリクエストします。これは、管理者プロセス用スロットを非占有状態にしておく場合に有用です。 | 注意: | -rオプションを使用すると、このオプションなしでtmadminを実行した際に取得される情報の一部しか得られないことに注意してください。特に、tmadmin -rを実行した場合、リモート・サイトで動作しているサーバーの負荷値は取得できません。 |
tmadminプロセスのみです。Oracle Tuxedo管理者以外のユーザーが-rオプションを指定し、セキュリティがオンになっている場合、ユーザーはパスワードを求められます。
-v
-vオプションを使用してtmadminを実行すると、Oracle Tuxedoのバージョン番号とライセンス番号が表示されます。情報を出力した後、tmadminは終了します。その他2つのオプションは、-vオプションと共に使用しても無視され、-vオプションによってリクエストされる情報だけが表示されます。
通常、tmadminは、アクティブ・アプリケーション内のどのアクティブ・ノード上でも実行可能です。パーティション化されたアクティブ・ノードで実行する場合は、ローカル掲示板への読取り専用アクセスを行うコマンドに制限されます。このようなコマンドは、bbls、bbparms、bbstat、default、dump、dumptlog、echo、help、interfaceparms、printactiveobject、printclient、printinterface、printfactory、printnet、printqueue、printroute、printserver、printservice、printtrans、printgroup、reconnect、quit、serverparms、serviceparms、verbose、および構成コマンドです。パーティション化ノードがMASTERのバックアップ・ノードの場合(構成ファイルのRESOURCESセクションのMASTERパラメータの2つ目のエントリとして指定される)、masterコマンドを使用すると、パーティション化されたアプリケーションのこの部分についてこのノードをMASTERにすることもできます。
アプリケーションがアクティブ状態でない場合、tmadminはMASTERプロセッサ上でしか実行できません。このモードでは、すべての構成モード・コマンドと共に、TLOGコマンド(crlog、dslogおよびinlog)とbootも利用できます。
tmadminが呼び出された後は、次に示す構文に従って、プロンプト(>)からコマンドを入力してください。
共通して出現するいくつかの引数には、defaultコマンドを使用してデフォルト値が与えられます。defaultコマンドによって設定されたパラメータを受け付けるコマンドは、defaultに値が設定されているかどうかを調べます。値が設定されていない場合は、エラー・メッセージが戻されます。
ネットワーク環境またはマルチ・プロセッサ環境では、default machine(UBBCONFIGファイルのMACHINESセクションに指定される論理machine ID (LMID))を設定することで、1つの掲示板にアクセスできます。default machineにallを設定すると、すべての掲示板にアクセスします。machineにDBBLを設定すると、特殊掲示板が使用されます。default machineはプロンプトの一部(たとえばMASTER>)として表示されます。
defaultコマンドによってmachineが設定されていない場合、DBBLが使用されます。SHM構成ではローカルBBLが使用されます。
コマンドのmachine値は、通常はdefault設定から取得できます(たとえば、printserver)。ただし、この場合は注意が必要です。一部のコマンド(TLOGコマンドなど)は、TUXCONFIGで検出されたデバイスに対して作動するためです。DBBLまたはallのdefault設定によってエラーが生成されます。一部のコマンド(logstartなど)では、コマンドラインでmachineの値を指定する必要があります。この値は、-mオプションの引数としては表示されません。
一度設定したデフォルト値は、defaultコマンドで変更しないかぎり、セッション終了まで有効です。このデフォルト値は、コマンドラインで明示的に値を入力してオーバーライドするか、「*」を入力して設定解除します。オーバーライドの効果は、コマンドの単一のインスタンスの間有効です。
tmadminコマンドの出力は、ページ別表示コマンドを指定することでページ別に表示できます。後述のpaginateサブコマンドの説明を参照してください。
詳細情報または要約情報を出力するコマンドがあります。verboseコマンドは、デフォルトの出力レベル設定に使用します。ただし、各コマンド(boot、shutdownおよびconfigを除く)には、そのコマンドのみ詳細または要約情報を出力するための-vまたは-tオプションがあります。要約モードで出力すると、一部の情報(LMIDまたはGROUP名、サービス名、サーバー名など)は省略されることがあります。省略された場合は、値の末尾にプラス記号(+)が付加されます。情報をすべて表示するには、詳細モードでコマンドを再入力します。
コマンドは、完全な名前または省略形(カッコ内に示す形式)で入力できます。その後に適切な引数を指定します。大カッコ[ ]で囲まれている引数は省略可能で、中カッコ{ }で囲まれている引数は、相互に排他的な選択肢を示します。大カッコで囲まれていないコマンドライン・オプションは、対応するデフォルトがdefaultコマンドで設定されている場合は、コマンドラインに指定しなくてもかまいません(任意に指定できます)。中カッコで囲まれた一連のオプションの後の省略記号({}...)は、複数のオプションをコマンドラインに指定できることを示します(少なくとも1つのオプションは指定する必要があります)。
aborttrans (abort) [ -yes ] [-g groupname[-R rmid]] tranindex
groupnameが指定されると、指定サーバー・グループの指定されたトランザクション索引(tranindex)に対応するトランザクションを中断させます。このオプションの指定がない場合は、トランザクションのコーディネータにグローバル・トランザクションの中断を通知します。トランザクションがすでに決定されており、その決定がコミットである場合は、aborttransは失敗します。索引には、printtransコマンドを前回実行したときの結果が使用されます。トランザクションを完全に終了させるには、そのトランザクションに関わっているすべてのグループに対してprinttransおよびaborttransを実行する必要があります。-R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合にリソース・マネージャを指定するのに使用されます。-Rオプションは、-gオプションとともに使用し、rmidの値が1以上31以下でなければなりません。
advertise (adv) {-q qaddress [ -g groupname ]
[-i srvid] | -g groupname -i srvid} service[:func]
serviceを関数funcにマッピングできます。qaddressが指定されていない場合は、groupnameとsrvidを指定し、サーバーを一意に識別する必要があります。このserviceをMSSQセットに追加すると、セットのすべてのサーバーがサービスを通知します。MSSQセットのすべてのサーバーがそのサービスを通知できない場合、通知は許可されません。「.」で始まるサービスは、システム・サーバーが使用するために予約されています。アプリケーション・サーバー用には通知できません。
bbclean (bbc) machine
machineに存在する掲示板およびDBBLにアクセスするすべてのプログラムの整合性をチェックします。bbcleanは、使用不能のサーバーを正常に削除し、再起動可能とマークされている場合は再起動します。どのプロセスにも関連しなくなったリソースも削除します。bbcleanは最後に、DBBLが各BBLのステータスをチェックするようにします。いずれかのBBLが指定したSCANUNIT (秒)内に応答しない場合は、パーティション化されているものとしてマークされています。特殊掲示板のみを消去するには、machineをDBBLとして指定する必要があります。SHMモードでは、BBLで障害が発生してもbbcleanによって再起動されます。machineパラメータは任意です。
bbparms (bbp)
bbsread (bbls) machine
bbstats (bbs)
boot (b) [options]
broadcast (bcst) [-m machine] [-u usrname] [-c cltname] [text]
textでSTRING型の型付きバッファです。textの長さは80文字以内にする必要があります。textが複数の語を含む場合は、二重引用符で囲む必要があります("text text")。パラメータが設定されない場合(デフォルトもない場合)、その識別子のワイルドカード値になります。
changeload (chl) [-m machine] {-q qaddress [-g groupname]-i srvid] -s service | -g groupname -i srvid -s service | -I interface [-g groupname]} newload
newloadに変更します。qaddressが指定されない場合は、groupnameとsrvidの両方を指定する必要があります。CORBA環境ではinterfaceを指定できます。machineがallに設定される場合、または何も設定されない場合は、すべてのマシンで変更が行われます。それ以外の場合、ローカルの変更が指定されたマシンで行われます。ローカルの変更は、その後のグローバル(またはローカル)の変更によってオーバーライドされます。
changemonitor (chmo) [-m machine] [-g groupname] [-i serverid] newspec
changepriority (chp) [-m machine] {-q qaddress [-g groupname]
[-i srvid] -s service | -g groupname -i srvid -s service | -I interface [-g groupname]} newpri
newpriに変更します。qaddressが指定されない場合は、groupnameとsrvidの両方を指定する必要があります。CORBA環境ではinterfaceを指定できます。machineがallに設定される場合、または何も設定されない場合は、すべてのマシンで変更が行われます。それ以外の場合、ローカルの変更が指定されたmachineで行われます。ローカルの変更は、その後のグローバル(またはローカル)の変更によってオーバーライドされます。
changetrace (chtr) [-m machine] [-g groupname[-R rmid]] [-i srvid] newspec
-R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-Rオプションは-gオプションとともに使用し、rmidは1以上31以下にする必要があります。実行中の特定のサーバー・プロセスのトレース仕様を変更するには、-gおよび-iオプションを指定します。特定のグループで現在実行中のすべてのサーバー・プロセスの構成を変更するには、-gオプションを-iオプションなしで指定します。特定のマシンで実行中のすべてのクライアントおよびサーバー・プロセスの構成を変更するには、-mオプションを指定します。-g、-iおよび-mのいずれのオプションも指定しなかった場合は、デフォルトのマシンのすべての非管理のプロセスが対象となります。このコマンドは、現在実行中でないクライアントもしくはサーバー、またはワークステーション・クライアントの動作には影響を与えません。
changetrantime (chtt) [-m machine] {-q qaddress [-g groupname] -
[-i srvid] -s service | -g groupname -i srvid -s service | -I interface [-g groupname]} newtlim
newtlimに変更します。qaddressが指定されない場合は、groupnameとsrvidの両方を指定する必要があります。CORBA環境ではinterfaceを指定できます。machineがallに設定される場合、または何も設定されない場合は、すべてのマシンで変更が行われます。それ以外の場合、ローカルの変更が指定されたmachineで行われます。ローカルの変更は、その後のグローバル(またはローカル)の変更によってオーバーライドされます。
committrans (commit) [ -yes ] [-g groupname[-R rmid]] tranindex
tranindexのトランザクションをコミットします。指定したサーバー・グループでトランザクションがプリコミットされていない場合、またはトランザクションが中断のみとして認識されている場合、committransは失敗します。索引には、printtransコマンドを前回実行したときの結果が使用されます。-yesオプションを指定せずに、このコマンドを実行すると、処理を進める前に確認を求められます。
-R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-Rオプションは-gオプションとともに使用し、rmidは1以上31以下にする必要があります。
config (conf)
crdl -b blocks -z config -o configoffset [ -O newdefoffset ] [ newdevice ]
blocksによって、デバイスに割り当てられる物理ブロック数が指定されます。デフォルトのblocks値は1000ブロックに初期化されます。configoffsetには、領域の割当てを開始するブロック番号を指定します。-oオプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSETの値が使用されます。FSOFFSETが指定されない場合、デフォルトは0です。configは最初のデバイス(デバイス・リストを含む)を指します。絶対パス名(先頭が/)を指定する必要があります。-zオプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG環境変数で指定されるパスが使用されます。crdlコマンドのnewdevice引数を指定する場合は、作成するデバイスを指す絶対パス名(先頭が/)を指定する必要があります。このパラメータが指定されない場合、newdeviceのデフォルトはconfigデバイスになります。newdefoffsetでは、newdeviceの開始位置のオフセットを指定します。-O (大文字のO)オプションが指定されない場合、デフォルトは0 (ゼロ)です。
crlog (crlg) -m machine
machine (「DBBL」または「all」は設定できません)に対してDTPトランザクション・ログを作成します。構成ファイルTLOGがそのマシン用に定義されていなければ、エラーになります。このコマンドはTUXCONFIGファイルを参照して、TLOGを格納しているOracle Tuxedoファイル・システム、そのファイル・システム内でのTLOGの名前、オフセットおよびサイズを判別します(「UBBCONFIG(5)」を参照)。
default (d) [-g groupname] [-i srvid] [-m machine] [-u usrname] [-c cltname]
[-q qaddress] [-s service] [-b blocks] [-o offset] [-z config] [-a { 0 | 1 | 2}] [-I interface] [-B objectid] [-r routingname]
-aオプションについては、printserviceを参照してください。CORBA環境では、対応する引数に、デフォルトのオブジェクトのインタフェース名、オブジェクトIDまたはファクトリ・ベースのルーティング名を設定することもできます。-Bを使用してオブジェクトIDパラメータが指定されている場合、マシン引数(-m)を指定する必要もあります。すべてのデフォルト値は、引数として*を指定することにより設定を解除できます。machineに設定されている場合、以降の検索を特殊掲示板から行わせるには、machineにDBBLを設定する必要があります。machineの設定解除(-m *)はDBBLの設定と等値です。defaultコマンドを引数なしで入力した場合は、現在のデフォルトの値が表示されます。
dsdl [ -yes ] -z config [ -o offset ] dlindex
dlindex引数は、デバイス・リストから削除するデバイスの、汎用デバイス・リストでの索引です。エントリ0を削除するには、最初にすべてのVTOCファイルおよび他のデバイス・リストを破棄する必要があります(エントリ0には、デバイス・リストと目次を保持するデバイスが含まれるため、エントリ0を破棄するとこれら2つの表も破棄されるためです)。configには、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-zオプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG環境変数で指定されるパスが使用されます。offsetによって、configにオフセットが指定されます。-oオプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSETの値が使用されます。FSOFFSETが設定されていないと、デフォルトは0です。-yesオプションを指定せずに、このコマンドを実行すると、処理を進める前に確認を求められます。
dslog (dslg) [ -yes ] -m machine
machine (「DBBL」または「all」は指定できません)のDTPトランザクション・ログを破棄します。TLOGがマシンに定義されていない場合、アプリケーションが非アクティブでない場合、あるいは未処理のトランザクション・レコードがログに残っている場合には、エラーが戻されます。「未処理のトランザクション」とは、グローバル・トランザクションがすでにコミットされているが、トランザクションの終了がまだ書き込まれていないトランザクションのことです。このコマンドは、TUXCONFIGファイルを参照して、TLOGを収めているOracle Tuxedoファイル・システム、およびそのファイル・システム内のTLOGの名前を判別します。-yesオプションを指定せずにこのコマンドを実行すると、処理を進める前に確認を求められます。
dump (du) filename
dumptlog (dl) -z config [ -o offset ] [ -n name ] [-g groupname[-R rmid]]
filename
filenameにTLOGのテキストをダンプします。TLOGは、configとoffsetで指定された場所にあり、名前はnameで指定されます。-nオプションが指定されず、デフォルトも設定されていない場合は、「TLOG」という名前が使用されます。configには、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-zオプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG環境変数で指定されるパスが使用されます。
-o offset オプションを使用すると、configのオフセットを指定できます。-oオプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSETの値が使用されます。FSOFFSETが設定されていないと、デフォルトは0です。groupnameが指定されると、そのグループがコーディネータとなっているトランザクションのログ・レコードだけがダンプされます。-R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-Rオプションは-gオプションとともに使用する必要があり、rmidは、1以上31以下でなければなりません。
echo (e) [{off | on}]
help (h) [{command | all}]
commandを指定すると、そのコマンドの省略形、引数、および説明が出力されます。allを指定すると、すべてのコマンドの説明が表示されます。引数をすべて省略すると、すべてのコマンドの構文が表示されます。
initdl (indl) [ -yes ] -z config [ -o offset ] dlindex
dlindexは、再初期化するデバイスの汎用デバイス・リストでの索引です。指定されたデバイスのすべての領域が解放されます。つまり、デバイスに格納されているすべてのファイルなどは上書きされることになります。このコマンドを使用するときは注意してください。-yesオプションが使用されない場合、このコマンドは、実行の前に確認のためのプロンプトを表示します。configには、汎用デバイス・リストを含むデバイスを指す絶対パス(先頭が/)を指定する必要があります。-zオプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG環境変数で指定されるパスが使用されます。-o offsetオプションを使用すると、configのオフセットを指定できます。-oオプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSETの値が使用されます。FSOFFSETが設定されていないと、デフォルトは0です。
inlog [ -yes ] -m machine
default machine (「DBBL」または「all」は設定できません)のDTPトランザクション・ログを再初期化します。TLOGがマシンに定義されていない場合、またはアプリケーションが非アクティブでない場合は、エラーが戻されます。未処理のトランザクションがTLOGに存在する場合、それらのトランザクションの参加者として動作するリソース・マネージャ間でデータが矛盾することがあります。リソース・マネージャが、ローカル・トランザクションを正しくコミットせずに中断した可能性があるためです。このコマンドは、TUXCONFIGファイルを参照して、TLOGを収めているOracle Tuxedoファイル・システム、およびそのファイル・システム内のTLOGの名前を判別します。-yesオプションを指定せずにこのコマンドを実行すると、処理を進める前に確認を求められます。
lidl -z config [ -o offset ] [ dlindex ]
dlindexが指定されない場合は、そのデバイス・リスト・エントリの情報のみが表示されます。configには、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-zオプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG環境変数で指定されるパスが使用されます。-o offsetオプションを使用すると、configのオフセットを指定できます。-oオプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSETの値が使用されます。FSOFFSETが設定されていないと、デフォルトは0です。
livtoc -z config [ -o offset ]
VTOC表のすべてのエントリについて情報を表示します。各エントリについて表示される情報は、VTOC表の名前、VTOC表のあるデバイス、デバイスの先頭からのVTOC表のオフセットおよびこの表に割り当てられているページ数があります。configには、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-zオプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG環境変数で指定されるパスが使用されます。-o offsetオプションを使用すると、configのオフセットを指定できます。-oオプションが指定されていない場合は、環境変数FSOFFSETの値が使用されます。FSOFFSETが設定されていないと、デフォルトは0です。
loadtlog -m machine filename
TLOGのテキスト・バージョンを、指定したfilename (dumptlogにより生成される)から、名前付きまたはdefault machine (「DBBL」または「all」にはできません)用の既存のTLOGに読み取ってください。
logstart machine
machine上でTLOG情報のウォーム・スタートを強制実行します。このコマンドは通常、loadtlogの実行後、サーバー・グループの移行の際のディスク再配置に続いて行うようにしてください。
master (m) [ -yes ]
masterがバックアップ・ノードで動作していると、このバックアップ・ノードはマスター・ノードに変わり、DBBLが起動されて管理プロセスを引き継ぎます。バックアップ・ノードがマスターとして動作しているときに、masterをマスター・ノード上で実行すると、そのDBBLはマスター・ノードに移行し、バックアップ・ノードはその時点でマスター・ノードとしての働きを停止します。-yesオプションを指定せずにこのコマンドを実行すると、処理を進める前に確認を求められます。
migrategroup (migg) [-cancel] group_name
migrategroupコマンドはサーバー・グループ名を引数とします。構成ファイルにMIGRATEオプションとそのグループの代替位置の指定があれば、group_nameに属するすべてのサーバーは代替位置に移行します。移行の際には、次のコマンドを実行してサーバーを停止する必要があります。
shutdown -R -g groupname -Rオプションを指定すると、移行を実行できるように掲示板にサーバー名が保持されます。shutdown -Rの後で、migrategroup -cancel groupnameというコマンドを使用すると、移行を取り消すことができます。 -cancelオプションを指定すると、掲示板からサーバー名が削除されます。
migratemach (migm) [-cancel] machine
shutdown -R -l machine migratemachineコマンドを使用するとき、machineに存在するすべてのサーバー・グループの代替位置が同じであることが必要です(そうでない場合は、migrategroupを使用する必要があります)。Domainsゲートウェイ・サーバーを含むLMID (マシン)の移行では、これらのゲートウェイ・サーバーの代替LMIDへの移行が暗黙に行われます。-cancelオプションを指定すると、すでに処理中の移行が取り消されます。つまり、tmshutdown -Rコマンドによってサーバーは停止されていますが、移行されていない状態です。
paginate (page) [{off | on}]
でないかぎり、初期設定はonです。標準入力と標準出力の両方が端末デバイスの場合にのみonに設定できます。
pgがデフォルトのコマンドです。シェル環境変数PAGERを使用すると、ページ別表示出力に使用されるデフォルトのコマンドをオーバーライドすることができます。
passwd
pclean (pcl) machine
pcleanを使用すると、まず、指定のmachineに対して強制的にbbcleanを行い、再起動またはクリーンアップの必要なサーバーすべてを再起動またはクリーンアップします。machineがパーティション化されている場合は、マシンmachine上で稼働するよう指定されているプロセスとサービスに対応するエントリが、パーティション化されていない掲示板からすべて削除されます。machineがパーティション化されていない場合には再起動またはクリーンアップできないプロセスまたはサービスはすべて削除されます。
printclient (pclt) [-m machine] [-u usrname] [-c cltname][-v]
printclientを実行すると、各コンテキストについて個別にエントリが生成されます。-m、-uおよび-cオプションやデフォルト値の設定を使用して、マシン、ユーザー名またはクライアント名の任意の組合せに限定して情報を得ることができます。
pclt-vを指定すると、リモート・クライアントの出力情報に「ネットワーク・アドレス」という表題とIPアドレス番号が追加されます。ネイティブ・クライアント名が指定されていない場合にpclt-vを指定すると、「アプリケーション名またはプロセスID」という表題とプロセスID (PID)が追加されます。
printconn (pc) [-m machine]
-mオプションやデフォルト値を使用することにより、情報を指定したマシンに対する接続に関するものに限定することができます。machineの値に「all」または「DBBL」を設定すると、すべてのマシンの情報が出力されます。
printactiveobject (pao) [-B objectid] [-m machine]
printfactory (pf)
printgroup (pg) [-m machine] [-g groupname]
-gおよび-mオプションやデフォルト値を使用して、特定のグループやマシンに関する情報を出力できます。サーバー・グループ名、サーバー・グループ番号、一次/代替LMIDおよび現在の位置などの情報が得られます。
printinterface (pif) [-m machine] [-g groupname] [-I interface]
printnet (pnw) [ mach_list ]
printnetコマンドでは、複数のマシン(LMID)をカンマで区切ったリストを引数として指定できます。このようなリストを指定した場合は、指定マシンに関するネットワーク接続情報が表示されます。各マシンについて、パーティション化されているかどうかが示されます。マシンがパーティション化されていない場合、そのマシンが接続される他のマシンと、メッセージの入出力回数を表す情報が表示されます。
printqueue (pq) [qaddress]
qaddressコマンドラインまたはデフォルト値は指定したキューに関する情報を制限するために使用されます。出力される情報には、キューが存在するサーバー名、マシンの名前があります。
printroute (pr) [-r routingname]
printserver (psr) [-m machine] [-g groupname[-R rmid]] [-i srvid] [-q
qaddress]
-q、-m、-gおよび-iオプションを使用すれば、キュー、マシン、グループあるいはサーバーの任意の組合せに限定して情報を得ることができます。マルチコンテキスト・サーバーでprintserverを実行すると、そのサーバーのすべてのコンテキストについて1つのエントリが表示されます。
-R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-Rオプションは-gオプションとともに使用し、rmidは1以上31以下にする必要があります。 冗長モードでは、サーバーの実行時のREQUEST_VERSION値が出力されます。
printservice (psc) [-m machine] [-g groupname[-R rmid]] [-i srvid]
[-a { 0 | 1 | 2 }] [-q qaddress] [-s service] アプリケーションおよび管理サーバーに関する情報を表示します。-q、-m、-g、-iおよび-sオプションを使用すれば、キュー・アドレス、マシン、グループ、サーバーまたはサービスの任意の組合せに限定して情報を得ることができます。
-R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-Rオプションを-gオプションとともに使用し、rmidが、1以上31以下でなければなりません。 -aオプションを使用すると、サービスのクラスを選択できます。-a0と指定すると、アプリケーション・サービスだけを表示します。-a1と指定すると、アプリケーション・サービスに加えて、アプリケーションから呼び出せるシステム・サービスも表示します。-a2と指定すると、上記の2つに加えて、Oracle Tuxedoから呼び出せるシステム・サービスも表示します。 冗長モードでは、アプリケーション・サービス・バージョン機能が有効な場合、サービスの実行時の REQUEST_VERSION値とVERSION_RANGEも出力されます。サービスの実行時のVERSION_POLICYが"PROPAGATE"の場合は、そのVERSION_POLICYも出力されます。 同様に、冗長モードでは、ダイナミック・リクエスト・ブローカ機能が有効な場合、Dynamic Load値が出力されます。
printtrans (pt) [-g groupname[-R rmid]] [-m machine]
machineが「all」または「DBBL」の場合、アプリケーションのパーティション化されていないすべてのマシンでトランザクション表からの情報がマージされます。コマンドラインまたはデフォルトのgroupname値によって、指定グループが参加している(コーディネータを含む)トランザクションに限定して情報を得ることができます。
aborttransまたはcommittransでトランザクションを中断またはコミットするときに使用する索引、トランザクション・ステータス、参加リソースの数などが表示されます。 一方、冗長モードでは、トランザクション・タイムアウト情報や、コーディネータの識別情報などを含むサーバー・グループ名、ステータスなどの参加リソースに関する情報も表示されます。 -R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合にリソース・マネージャを指定するために使用されます。-Rオプションは、-gオプションとともに使用し、rmidの値が1以上31以下でなければなりません。
quit (q)
reconnect (rco) non-partitioned_machine1 partitioned_machine2
reconnectでは、パーティション化されていないマシンからパーティション化されたマシンへの新しい接続が強制的に行われます。接続がすでにアクティブな場合は、再接続の前に閉じられます。このとき、送信中のメッセージが失われて、トランザクション・タイムアウトが発生することがあります。マシンまたはネットワークの接続が停止する可能性がありますが、ネットワーク・インタフェース・ドライバはリクエストの受取りとバッファ処理を続けます。BRIDGEに対してエラーは示されません。この場合、reconnectは失敗し、リモート・マシンにアクセスできないことをBRIDGEに強制的に認識させます。ほとんどのケースでは、ネットワークの問題が解決するとBRIDGEは自動的に再接続されます。手動での操作(reconnectの使用)は必要ありません。
resume (res) {-q qaddress | -g groupname | -i srvid | -s service | -I interface} . . .
-q、-g、-s、-I、および-iオプションを使用すると、再開するサービスに関して、キュー、グループ、サービス、インタフェース(CORBA環境のみ)およびサーバーの組合せを制限できます。(少なくとも、これらのオプションのうち1つを指定するか、デフォルトを設定しておく必要があります。)したがって、次のコマンドラインでは、アドレスがservq8でキューに通知されたすべてのサービスを簡単に一時停止解除できます。
serverparms (srp) -g groupname[-R rmid]-i srvid
-R rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-Rオプションを-gオプションとともに使用し、rmidが、1以上31以下でなければなりません。
serviceparms (scp) -g groupname -i srvid -s service
shmstats (sstats) [ ex | app ]
MODEL SHMが構成ファイルに指定されると、shmstatsを使用して、より正確な統計を得ることができます。引数なしで入力すると、shmstatsは、掲示板構造体のbbparms.optionsメンバーのTMACCSTATSフラグから現在の設定を返します。これにより、現在収集しているのが正確な統計か概算の統計かがわかります。コマンドを入力するときにexを指定すると、shmstatsがTMACCSTATSフラグをオンにして、掲示板をロックし、サーバー表、キュー表およびサービス表のエントリのカウンタを0に戻します。
shutdown (stop) [options]
tmshutdown()コマンドと同様です。tmshutdownのオプションを使用すると、停止させるサーバーを選択することができます。オプションの説明および使用上の制限事項については、「tmshutdown(1)」を参照してください。
suspend (susp) {-q qaddress | -g groupname | -i srvid | -s service | -I interface} . . .
-q、-g、-s、-I、および-iオプションを使用すると、一時停止するサービスに関して、キュー、グループ、サービス、インタフェース(CORBA環境のみ)およびサーバーの組合せを制限できます。(少なくとも、これらのオプションのうち1つを指定するか、デフォルトを設定しておく必要があります。)したがって、次のコマンドでは、アドレスがservq8でキューに通知されたすべてのサービスを簡単に一時停止できます。
unadvertise (unadv) {-q qaddress [-g groupname] [-i srvid] | -g groupname -i srvid} service
serviceについてサービス表のエントリを除去します。qaddressが指定されていない場合は、groupnameとsrvidを指定し、サーバーを一意に識別する必要があります。キューまたはそのキューにある特定のサーバーを指定しても結果は同じです。複数サーバーの単一キュー(MSSQ)のセットからこのserviceを削除すると、serviceの公開は、キューから読み込まれるすべてのサーバーから削除されます。
verbose (v) [{off | on}]
offです。コマンドごとに、-v (詳細)および-t (簡潔)オプションを使用して、現在の設定を一時的にオーバーライドできます。
! shellcommand
!!
# [text]
管理者としてtmadminを実行する場合、セキュリティ機構は通りません。すでにアプリケーション管理者のログインIDであることが確認済であるためです。
アプリケーション管理者以外がtmadminを実行できるのは、-rオプションが使用されて、クライアントとしてアプリケーションにアクセスする場合です。そのようなユーザーが-rオプションを付けてtmadminを呼び出すときに、アプリケーションのセキュリティがオンになっている場合は、アプリケーション・データにアクセスするためにアプリケーションのパスワードが必要です。標準入力が端末である場合、tmadminは、応答のエコーをオフの状態でユーザーにパスワードの入力を求めます。標準入力が端末でない場合は、パスワードはAPP_PW環境変数から取り出されます。アプリケーション・パスワードが必要な場合に、この環境変数が指定されていないと、tmadminは異常終了します。
tmadminは、-rオプションの指定がある場合、またはこれをアプリケーション管理者として登録できない場合、アプリケーション・クライアントとして働きます。このような場合、標準入力が端末でないときには、保護アプリケーションのアプリケーション・パスワードをAPP_PW環境変数に設定しなければなりません。
システムのブート前にtmadminコマンドを入力すると、次のようなメッセージが表示されます。
No bulletin board exists. Entering boot mode
>その後、tmadminはbootコマンドが入力されるのを待機します。
-cオプションを指定せずに、MASTER以外の非アクティブなノードからtmadminコマンドが入力されると、次のメッセージが表示され、コマンドは終了します。
Cannot enter boot mode on non-master node.間違ったアプリケーション・パスワードが入力されたり、入力したパスワードが環境を通してシェル・スクリプトで利用できない場合には、ログ・メッセージが生成され、次のメッセージが表示されてコマンドが終了します。
Invalid password entered.tmadminは、相互操作可能なアクティブ・アプリケーション内であれば任意のノード上で実行可能です。ただし、利用可能なコマンドやコマンドライン引数は、tmadminが動作しているノードに対応するリリースでtmadminから利用できるものに限定されています。たとえば、broadcast、passwdおよびprintclientなどのコマンドはリリース4.1のノードでは利用できません。
tmadminは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
machineオプションは、ネットワーク化されていない単一プロセッサ環境では何の効果も得られません。
tmboot(1)、tmloadcf(1)、tmshutdown(1)、compilation(5)、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmboot[-llmid][-ggrpname] [-isrvid] [-saout] [-osequence][-S] [-A] [-b] [-Blmid][-ecommand] [-w] [-y] [-g]
[-n] [-c] [-m] [-M] [-d1]
tmbootは、オプションの指定に従ってOracle Tuxedoアプリケーション全体あるいはその一部を起動します。tmbootは、掲示板の管理者(構成ファイルのUIDで指示されている)あるいはrootしか呼び出せません。また、tmbootコマンドは、構成ファイルのRESOURCESセクションでMASTERとして指定されているマシン、あるいはMASTERとして機能するバックアップ・マシン(つまり、tmadmin(1)のmasterコマンドによりDBBLがすでに稼働状態である)上でしか呼び出せません。ただし、これは-bオプションを指定した場合を除きます。この場合は、MASTERと指定しなくても、バックアップ・マシンからシステムを起動できます。
オプションなしのtmbootは、環境変数TUXCONFIGとTUXOFFSETに指定されている構成ファイルのSERVERSセクションにリストされているすべての管理プロセスとすべてのサーバーを実行します。MODELがMPの場合、RESOURCESセクションのMASTERパラメータで指定されたマシン上でDBBL管理サーバーが起動します。管理サーバー(BBL)は、MACHINESセクションにリストされたすべてのマシンで起動されます。GROUPSセクションの各グループの場合、TMSサーバーは、グループ・エントリのTMSNAMEおよびTMSCOUNTパラメータに基づいて起動されます。すべての管理サーバーが起動された後で、SERVERSセクションのサーバーが起動されます。TMSまたはグループのゲートウェイ・サーバーは、グループの最初のアプリケーション・サーバーが起動される前に起動されます。TUXCONFIGファイルは必要に応じてリモート・マシンに伝播されます。通常、tmbootは、起動されたプロセスで初期化(tpsvrinit())が完了するのを待ってから、次のプロセスを起動します。
ゲートウェイ・サーバーの起動時には、ゲートウェイの管理サービスが公開され、そのゲートウェイのCLOPTパラメータを基に外部サービスを表すアプリケーション・サービスが公開されます。外部サーバーの考え方をとる場合、これらのサーバーはこの時点でゲートウェイによりブートされます。
LMIDをブートすると、そのLMID上の全グループがブートされることになります。
アプリケーション・サーバーの起動は、SEQUENCEパラメータで指定された順序、または構成ファイルのサーバー・エントリ順で行われます(UBBCONFIG(5)に関する項を参照)。構成ファイルのSERVERSセクションの複数のサーバーでSEQUENCEパラメータが同じ場合、tmbootはそれらのサーバーをパラレルで起動し、それらの初期化が完了するまでは処理を続行しません。SERVERSセクションの各エントリには、MINパラメータとMAXパラメータを指定できます。tmbootは、-iオプションが指定されないと、MINのアプリケーション・サーバー(サーバー・エントリでMINが指定されない場合、デフォルトは1)を起動します。-iオプションを使用すると、MAXになるまで個々のサーバーが起動されます。
サーバーが起動できない場合、診断が中央のイベント・ログおよび標準出力(-qが指定されない場合)に書き込まれます。tmbootは続行します。ただし、異常終了するプロセスがBBLの場合、そのBBLに依存するサーバーは警告なしで無視されます。異常終了するプロセスがDBBLの場合、tmbootは構成ファイルの残りの部分を無視します。サーバーに代替LMIDが構成されているとき、サーバーがプライマリ・マシンで起動できない場合、tmbootは自動的にサーバーを代替マシンで起動しようとします。正常に起動すると、メッセージをDBBLに送信して、TUXCONFIGのサーバー・グループ・セクションを更新します。
SERVERSセクションのサーバーの場合、CLOPT、SEQUENCE、SRVGRPおよびSRVIDのみがtmbootによって使用されます。これらはまとめてサーバーの起動パラメータと呼ばれます。いったんサーバーが起動すると、構成ファイルを読み取って、実行時パラメータを探します。(パラメータの詳細については、「UBBCONFIG(5)」を参照してください)。
管理サーバーおよびアプリケーション・サーバーはすべて、APPDIRを現在の作業ディレクトリとしてブートされます。APPDIRの値は、該当サーバーがブートされるマシンに対応する構成ファイル内のMACHINESセクションで指定します。
サーバーの実行可能プログラムの検索パスはAPPDIR、TUXDIR/bin、/bin、/usr/binおよびMACHINEのENVFILEに指定されているPATHです。この検索パスは、サーバーの絶対パス名が指定されていない場合にのみ使用されます。この検索パスの設定は、サーバーのENVFILEに指定する値によって変更することはできません。
サーバーが起動されると、変数TUXDIR、TUXCONFIG、TUXOFFSETおよびAPPDIRが、そのマシンの構成ファイルに指定された値で環境に配置されます。環境変数LD_LIBRARY_PATHもすべてのサーバーの環境に配置されます。値はデフォルトでは$APPDIR:$TUXDIR/lib:/lib:/usr/lib:libになります。libは、マシンのENVFILEにある最初のLD_LIBRARY_PATH=行の値です。ENVFILEの構文の詳細については、「UBBCONFIG(5)」を参照してください。一部のUNIXシステムでは、別の環境変数が必要となる場合もあります。HP-UXシステムではSHLIB_PATH環境変数を、AIXシステムではLIBPATH環境変数を使用します。
サーバーのULOGPFXもまた、ブート時に、構成ファイルの該当マシンに対するパラメータに基づいて設定されます。パラメータの指定がないと、デフォルト値として$APPDIR/ULOGが使用されます。
これらの処理はすべて、アプリケーションの初期化関数tpsvrinit()が呼び出される前に行われます。
tmbootのコマンドライン・オプションの多くは、システムのブート時の内容を制限するものであり、システムの一部のブートに使用することもできます。以下のオプションがサポートされています。
-l lmid
LMIDパラメータがlmidである各グループの場合、そのグループに関連するすべてのTMSとゲートウェイ・サーバーがブートされ、そらのグループに関連してSERVERSセクションに記述されているすべてのサーバーが実行されます。
-g grpname
SRVGRPパラメータがgrpnameであるグループの全TMSおよびゲートウェイ・サーバーが起動され、続いてそのグループに関連してSERVERSセクションに記述されているすべてのサーバーが起動されます。TMSサーバーは、グループ・エントリのTMSNAMEおよびTMSCOUNTパラメータに基づいて起動されます。
-i srvid
-s server name
SERVERSセクションに記述されている全サーバーが、サーバー名とMIN値で実行されます。MIN値が0のサーバーは実行されません。 このオプションは、TMSおよびゲートウェイ・サーバーをブートするときに使用することもできます。通常、このオプションは-gオプションと一緒に使用します。
-o sequence
-S
-A
MACHINESセクションのマシンのすべての管理サーバーが実行されます。このオプションを使用すると、DBBLとすべてのBBLおよびBRIDGEプロセスが正しい順序で起動されます。(-Mオプションの説明も参照してください。)
-b
-B lmid
-m 1-n
MIN値を、共通のMIN値で一時的にリセットします。たとえば、-s server1 -m5と指定すると、server1という名前のすべてのサーバーがMIN=5にリセットされます。このオプションで指定できるサーバーの最小数は1です。最大数の制限はありませんが、あまり多く指定しないよう注意してください。
-M
MODELがMPの場合、RESOURCESセクションのMASTERパラメータで指定されたマシン上でDBBL管理サーバーが起動します。また、BBLがMASTERマシン上で起動され、LANオプションとNETWORKエントリが構成ファイルに指定されている場合には、BRIDGEも起動されます。
-d1
-e command
commandが実行されます。commandには、SHELL環境変数に指定されたコマンド・インタプリタで認識されるプログラム、スクリプト、または一連のコマンドを指定できます。これにより、起動手順で問題が発生したときに修正する機会が得られます。commandに空白が含まれる場合は、文字列全体を引用符で囲む必要があります。このコマンドは、tmbootが実行しているマシンで実行されます。サーバーが起動されているマシンではありません。 | 注意: | Windows 2003システムでリダイレクトまたはパイプを選択する場合は、以下のいずれかの方法を使用してください。 |
-w
tmbootにサーバーが初期化を完了するのを待たずに別のサーバーを起動するように通知します。このオプションの使用には、十分な注意が必要です。BBLは、有効なDBBLの存在に依存します。通常のサーバーは、それらが配置されるプロセッサ上でBBLが実行されていることを必要とします。サーバーが同期的に開始されていない場合、これらの条件は保証されません。サーバーにシーケンス番号がある場合、このオプションは通常行われる待機をオーバーライドします。
-y
yesの答えを指定します。(このプロンプトが表示されるのは、制限するオプションを指定せずにコマンドを入力した場合のみです。)
-q
-n
-c
-l、-g、-i、-oおよび-sオプションを組み合せて使用すると、指定されたすべての条件を満たすサーバーのみが起動されます。-l、-g、-sおよび-Tオプションを使用すると、TMSサーバーが起動します。-l、-gおよび-sオプションを使用すると、ゲートウェイ・サーバーが起動します。-l、-g、-i、-o、-sおよび-Sオプションは、アプリケーション・サーバーに適用されます。アプリケーション・サーバーを起動するオプションが異常終了するのは、BBLがマシンにない場合です。-A、-Mおよび-Bオプションは、管理プロセスのみに適用されます。
標準入力、標準出力、標準エラー出力の各ファイル記述子は、ブートされたサーバーについてはすべて閉じられます。
tmbootは、相互運用可能なアプリケーション内の最上位のリリースが提供されているマスター・ノード上で実行しなければなりません。tmbootは、最新リリースをサポートしないサイトのワークステーション・リスナーなどの管理サーバーのブートを行うことにつながる構成ファイル内の条件を検出し報告します。
tmbootは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
インストールの間に管理パスワード・ファイルが作成されます。必要に応じて、Oracle Tuxedoシステムはこのファイルを次のディレクトリから検索します。最初にAPPDIR/.adm/tlisten.pw、次にTUXDIR/udataobj/tlisten.pwの順序で検索します。パスワード・ファイルが確実に見つかるように、必ずAPPDIRまたはTUXDIR (あるいは両方)の環境変数を設定してください。
リンク・レベルの暗号化機能がtmbootとtlistenの間で稼働している場合には、リンク・レベル暗号化はメッセージが認証されるプロセスを保護するために最初に調整され、またアクティブ化されます。
TUXCONFIGとして、存在しないファイルが設定されると、次に示す2つの致命的なエラー・メッセージが表示されます。
tmbootはサーバーのブートに失敗すると、終了コード1を返して終了します。後でユーザー・ログを調べることにより、エラーの詳細を知ることができます。成功した場合は、tmbootは終了コード0を返して終了します。
tmbootが、アクティブでない非マスター・ノード上で実行されると、次のような致命的エラー・メッセージが表示されます。
tmboot cannot run on a non-master node.
tmbootが、実際のマスター・ノードでないアクティブなノード上で実行されると、次のような致命的エラー・メッセージが表示されます。
tmboot cannot run on a non acting-master node in an active application.
複数のTUXCONFIGファイルで同じIPCKEYが使用されていると、tmbootは異常終了して次のメッセージを表示します。
Configuration file parameter has been changed since last tmboot
LAN以外の構成でMACHINESセクションに複数のノード名があると、次のような致命的エラー・メッセージが表示されます。
Multiple nodes not allowed in MACHINES for non-LAN application.
tlistenがLANアプリケーションのMASTERマシン上で実行していない場合、警告メッセージが表示されます。この場合、tmadmin(1)はリモート・マシンの管理者モードで実行できません。処理が読取りのみに制限されます。これはまた、バックアップ・サイトが障害後にマスター・サイトを再起動できないことを意味します。
CS0およびCS1というローカル名のマシン上にあるサーバーたけを起動するには、次のようにします。
tmboot -l CS0 -l CS1
DBG1という名前のグループに属するサーバーCREDEBだけを起動するには、次のようにします。
ローカル名がPE8のマシン上のBBL、およびPE8の位置にあるすべてのサーバーをブートするには、次のようにします。
tmboot -B PE8 -l PE8
この構成で必要とされる最小限のIPCリソースを表示するには、次のコマンドを入力します。
Ipc sizing (minimum Oracle Tuxedo values only) ...
Fixed Minimums Per Processor
SHMMIN: 1
SHMALL: 1
SEMMAP: SEMMNI
Variable Minimums Per Processor
SEMUME, A SHMMAX
SEMMNU, * *
Node SEMMNS SEMMSL SEMMSL SEMMNI MSGMNI MSGMAP SHMSEG
------ ------ ------ ------ ------ ------ ------ ------
sfpup 60 1 60 A + 1 10 20 76K
sfsup 63 5 63 A + 1 11 22 76K
where 1 = A = 8.
1プロセッサ当たりのアプリケーション・クライアントの数を各MSGMNI値に追加します。MSGMAPはMSGMNIの2倍にします。SHMMINは常に1にセットします。
IPCの必要最小限の条件は、使用マシンに設定したパラメータと比べて検討することができます。これらのパラメータの変更方法については、お使いのマシンのシステム管理者のドキュメントを参照してください。-yオプションを使用した場合、その結果得られる表示は上記の例とは若干異なります。
tmbootコマンドは、ハングアップ・シグナル(SIGHUP)を無視します。ブート時にシグナルが検出された場合でも、プロセスは続行します。
-cオプションを使用した場合に表示される最小限のIPCリソースは、指定された構成ファイルに記述されている構成にのみ適用されます。リソース・マネージャまたはその他のOracle Tuxedo構成で必要となるIPCリソースについては、計算上は考慮されません。
tmadmin(1)、tmloadcf(1)、tmshutdown(1)、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmconfig、wtmconfig - ネイティブ・クライアントまたはワークステーション・クライアントとして実行中のOracle Tuxedoアプリケーションに関する情報を動的に更新および検索
tmconfigwtmconfig
tmconfigは対話型プログラムであり、Oracle Tuxedoアプリケーションの動作中に、構成ファイル・パラメータまたはMIB属性の更新、およびTUXCONFIGファイルのセクションへのレコードの追加を行います。tmconfigは、追加、変更、または検索対象の入力フィールド値があるバッファを管理します。操作が完了すると、tmconfigは出力フィールド値と状態を表示します。ユーザーは任意のテキスト・エディタを使用して入力バッファを更新できます。
tmconfigはOracle Tuxedoのネイティブ・クライアントで、wtmconfigはワークステーション・クライアントです。これらは、tmadmin/printclientコマンド・シーケンスの出力で確認できます。アプリケーションがSECURITY機能を私用している場合、tmconfigによってアプリケーション・パスワードの入力が求められます。
| 注意: | tmconfigはOracle Tuxedoネイティブ・クライアントであり、wtmconfigはOracle Tuxedoワークステーション・クライアントであるという以外に双方の違いはなく、tmconfigとwtmconfigは共に同じ機能を備えているため、このリファレンス・ページではtmconfigを中心に説明していきます。ここで説明する機能はwtmconfigも備えていると考えてかまいません。 |
tmconfigは最初に、目的のセクションを指定するよう求め、続いてそれに対する操作の内容を指定するよう求めます。セクションを求めるプロンプトは次のとおりです。
Section: 1) RESOURCES, 2) MACHINES, 3) GROUPS 4) SERVERS 5)SERVICES
6) NETWORK 7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS
12) INTERFACES [1]:
デフォルト・セクションは、プロンプトの終わりに大カッコ内に表示されます。
続いて、目的の操作内容を求めるプロンプトが次のように表示されます。
Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE
6) CLEAR BUFFER 7) QUIT [1]:
デフォルトの操作内容は、プロンプト末尾の大カッコ内に表示されます。デフォルトの操作を選択する場合は、[Enter]キーを押します。他の操作を選択する場合は、該当する番号を入力して[Enter]キーを押します。
FIRST - 指定されたセクションの最初のレコードを表示します。キー・フィールドは不要です。(入力バッファにあるキー・フィールドは無視されます。)継続 - 入力バッファ内のキー・フィールドに基づいて、指定したセクションから次のレコードを取り出します。照会 - キー・フィールドで指定したセクションから、指定したレコードを取り出します。ADD - 指定したセクションに、指定したレコードを追加します。未指定のフィールドは(必須でないかぎり)、UBBCONFIG(5)で指定されたデフォルト値をとります。すべてのフィールドの現在の値は、出力バッファ内に戻されます。この操作は、Oracle Tuxedoシステム管理者だけが行えます。UPDATE - 指定したセクションの入力バッファ内にある、指定したレコードを更新します。入力バッファ内で指定されていないフィールドは変更されません。すべてのフィールドの現在の値は、入力バッファ内に戻されます。この操作は、Oracle Tuxedo管理者だけが行えます。CLEAR BUFFER - 入力バッファをクリアします(すべてのフィールドは削除されます)。この操作の後で、tmconfigによって再度セクションを指定するように求められます。終了 - プログラムを正常に終了します(クライアントは終了します)。プロンプトで値qを入力してもプログラムを終了できます。 管理者の操作を行う場合、実効ユーザー識別子が、このプログラムを実行するマシンのOracle Tuxedo管理者ユーザー識別子(UID)と同じでなければなりません。レコードの更新や追加を行う場合には、tmloadcf(1)が使用する検証機能とすべてのデフォルト値が有効になります。
次にtmconfigは、入力バッファを編集するかどうかを確認するプロンプトを表示します。
Enter editor to add/modify fields [n]?
値yを入力すると、入力バッファが一時ファイルに変換され、テキスト・エディタが実行されます。環境変数EDITORを使用して、使用するエディタを決定します。デフォルト値はedです。入力フォーマットはフィールド名とフィールド値の組合せです。この後の「入力フォーマット」の項を参照してください。その後の項の表に、各UBBCONFIGセクションに関連付けられているフィールド名を示します。フィールドのセマンティクスと、関連する範囲、デフォルト値、制限などは、UBBCONFIG(5)に関する項目を参照してください。権限値は8進数ではなく10進数で指定されることに注意してください。ほとんどの場合、フィールド名はUBBCONFIGファイルのKEYWORDと同じで、接頭辞として「TA_」が付いています。
ユーザーが入力バッファの編集を完了すると、tmconfigはその内容を読み取ります。特定のフィールド名についての行が複数ある場合、最初のオカレンスが使用され、他のオカレンスは無視されます。何らかのエラーが発生すると、構文エラー・メッセージが表示され、その問題を訂正するかどうかを確認するプロンプトが表示されます。
Enter editor to correct?
問題を訂正しない場合(レスポンスn)は、入力バッファにフィールドは含まれません。問題を訂正する場合は、エディタが再度実行されます。
最後に、操作を実行するかどうかを確認するプロンプトが表示されます。
Perform operation [y]?
操作が完了すると、tmconfigは(「戻り値TAOK」のように)戻り値を表示し、続いて出力バッファのフィールドを表示します。次に、プロセスが再開され、セクションを求めるプロンプトが表示されます。すべての出力バッファ・フィールドは、バッファがクリアされないかぎり、入力バッファ内で利用できます。
いつでもブレークを入力して、セクションを求めるプロンプトでの対話を再開できます。
QUITを選択すると、構成ファイルのバックアップ(テキスト形式)を作成するかどうかを確認するプロンプトが表示されます。
Unload TUXCONFIG file into ASCII backup [y]?
バックアップの作成を選択すると、ファイル名の入力を求めるプロンプトが表示されます。
バックアップ・ファイルのファイル名は? [UBBCONFIG]:
無事にバックアップが完了すると、バックアップ・コピーが作成されたことを示すメッセージを表示します。失敗した場合はエラー・メッセージを表示します。
入力パケットは、次のようにフォーマットされた行で構成されます。
フィールド名とフィールド値は1つまたは複数のタブで区切ります。
長いフィールド値の場合、継続行に1つまたは複数のタブを付けることによって、次の行にわたるようにできます(これらのタブは、tmconfigに読み戻されるときに取り除かれます)。
表示できない文字をフィールド値に入力したり、タブをフィールド値の先頭に付けたりするには、バックスラッシュを入力し、その後に必要な文字を2文字の16進表現で入力します(UNIXリファレンス・マニュアルでASCII(5)の項を参照)。たとえば、空白は「\20」として入力データに入力できます。バックスラッシュそのものは、2つのバックスラッシュ記号を使用して入力できます。tmconfigでは、このフォーマットのすべての入力が認識されますが、16進フォーマットが表示できない文字の場合に最も役立ちます。
動的な再構成機能については、次のような全般的な制限事項があります。
LMIDレベルのフィールドは、LMIDがブートされている間は変更できません。同様に、GROUPレベルのフィールドはGROUPがブートされている間は変更できません。RESOURCESパラメータは実行中のシステムでは変更できません。RESOURCESセクションにいるときに、MACHINESセクションのENVFILEパラメータを更新しようとした場合、tmconfigがTAOKを返して操作が正常終了したように見えますが、アンロードされたUBBCONFIGファイルは変更されていません。以前のOracle Tuxedoシステムのリリースでは、すべてのアプリケーション構成は、アプリケーションのすべての構成パラメータが定義されたUBBCONFIGファイルというテキスト・ファイルを編集することで実現していました。その後のリリースでは、tmloadcf(1)コマンドを実行することにより、UBBCONFIGファイルをTUXCONFIGというバイナリ・ファイルにコンパイルするようになりました。さらに新しくなったシステムでは、各種TUXCONFIGパラメータの動的更新(アクティブなシステムの更新)をサポートするtmconfigコマンドが導入されるようになりました。
システム6以降では、Oracle Tuxedoのリソースをクラスや属性に再定義するOracle Tuxedo管理情報ベース(MIB)が導入されました。MIBの導入と同時に、Oracle Tuxedoシステムは、管理者(またはユーザー)がアプリケーションの属性にプログラムでアクセスし、変更することを可能にする管理APIも提供しました。
1つの例外を除き、『Oracle Tuxedoコマンド・リファレンス』<Default ?Font>のこのエントリ(つまり、tmconfig, wtmconfig(1))ではMIBの様々なクラスの簡単な説明のみが記載されます。例外はNetworkクラスです。これは、ここでtmconfig()について詳しく説明します。その他のセクションの詳細については、「TM_MIB(5)」を参照してください。
従来のtmconfig表には、フィールドの更新が可能かどうかを示す値を入れる列がありました。これについてはMIBのリファレンス・ページで説明していますが、形式について多少注意が必要です。MIB(5)に関する項でPermissionsの説明を参照してください。MIB表のPermissions列は、ファイルへのアクセスを制限するために使用される読取り、書込みおよび実行権限と似ています。ただし、情報量は多く、単純なファイル権限よりも多くの制御が指定されます。たとえば、MIB表のPermissions列の値は、システムがアクティブなときにフィールドを変更できるかどうかを示します。
tmconfigを使用する前にはMIB(5)の説明をよくお読みください。
このセクションの属性については、「TM_MIB(5)」のT_DOMAINクラスの説明を参照してください。
このセクションについては、ADD操作は使用できません。このセクションにはレコードが1つしかないので、RETRIEVE操作はFIRST操作と同じです(キー・フィールドは不要)。NEXT操作は常に「レコードなし」が戻されます。
TA_LDBAL、TA_CMTRETおよびTA_SYSTEM_ACCESSに対する変更は、それ以後ブートされる新しいクライアントとサーバーに対してのみ適用されます。NO_OVERRIDEの指定があり、指定アクセス・タイプと一致しない(PROTECTEDまたはFASTPATH)サーバー・エントリがある場合、TA_SYSTEM_ACCESSは変更できません。TA_NOTIFYとTA_AUTHSVCに対する変更は、それ以後起動される新しいクライアントに対してのみ適用されます。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
このセクションの属性については、「TM_MIB(5)」のT_MACHINEクラスの説明を参照してください。
RESOURCESセクションのOPTIONSに"LAN"が指定されていないかぎり、マシンを追加することはできません。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
このセクションの属性については、「TM_MIB(5)」のT_GROUPクラスの説明を参照してください。
このセクションの属性については、「TM_MIB(5)」のT_SERVERクラスの説明を参照してください。
SERVERSセクションでのパラメータの変更は、次回、関連するサーバーが起動(再開ではなく)された時点で有効になります。複数のサーバーがMSSQセットに定義されている場合(TA_RQADDRを使用)、それらのサーバーは同じサービスを起動する必要があります(たとえば、TA_CLOPTまたはENVFILEへの変更は、現在起動しているサーバーのものではない起動中のサービスに影響してはなりません)。TA_MAXが変更されると、サーバー・セットの1つ以上のサーバーが起動されないかぎり、新しいサーバー識別子に対する会話型サーバーの自動生成は実行されません。
このセクションの属性については、「TM_MIB(5)」のT_SERVICEおよびT_SVCGRPクラスの説明を参照してください。
SERVICESセクションで変更されたパラメータは、次回、そのサービスを提供するサーバーがブート(再開ではなく)された時点で有効になります。TA_ROUTINGNAMEの更新が可能なのは、TA_SRVGRPフィールドに値が指定されていない場合、またはそのフィールドにNULLが指定されている場合だけです。この場合、TA_ROUTINGNAME属性は、一致するすべてのSERVICESエントリで同時に更新されます。TA_ROUTINGNAMEはSERVICESセクションのROUTINGに対応しています。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
次の表に、NETWORKセクションのフィールド一覧を示します。
関連するLMIDがブートされている場合には、レコードを追加することはできません。
RESOURCESセクションのOPTIONSにLANがないかぎり、NETWORKセクションに対する操作は何もできません。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
このセクションの属性については、「TM_MIB(5)」のT_ROUTINGクラスの説明を参照してください。
ROUTINGセクションは、システムが稼働状態にあるときには更新できません。掲示板のサイズを制御する、RESOURCESセクションの3つのパラメータMAXDRT、MAXRFT、およびMAXRTDATAが増加可能に設定されている場合、ROUTINGセクションの新しいエントリを追加できます。
このセクションの属性については、「TM_MIB(5)」のT_WSLクラスの説明を参照してください。
ワークステーション・リスナー・サーバーのCLOPTの更新は、SERVERセクションを通じて行うこともできますが、T_WSLクラスを使用してください。
このセクションの属性については、「TM_MIB(5)」のT_WSLクラスの説明を参照してください。
このセクションの属性については、「TM_MIB(5)」のT_NETMAPクラスの説明を参照してください。
このセクションの属性については、「TM_MIB(5)」のT_INTERFACEクラスの説明を参照してください。
T_INTERFACEクラスは、ドメインおよびサーバー・グループの両方のレベルでCORBAインタフェースの構成属性と実行時属性を表します。ファクトリ・ベースのルーティング(特定のサーバー・グループに処理を分散する機能)を実行しない場合には、CORBAインタフェースに必要なパラメータはありません。
tmconfigをセキュアなアプリケーションで実行する場合は、アプリケーション・パスワードを指定しないとアプリケーションにアクセスできません。標準入力が端末である場合、tmconfigは、応答のエコーをオフの状態でユーザーにパスワードの入力を求めます。標準入力が端末でない場合は、パスワードはAPP_PW環境変数から取り出されます。アプリケーション・パスワードが必要な場合に、この環境変数が指定されていないと、tmconfigは異常終了します。
ワークステーション・クライアントの場合、このコマンドはwtmconfigです。UPDATEおよびADDコマンドはサポートされていません(TAEPERMが戻されます)。
tmconfigは環境変数FIELDTBLSおよびFLDTBLDIRを設定しなおして、${TUXDIR}/udataobj/tpadminフィールド表を取り出します。TUXDIRを正しく設定しておかなければなりません。
APP_PWは、標準入力が端末でない場合、保護アプリケーションのアプリケーション・パスワードに設定しなければなりません。
クライアントをOracle Tuxedoアプリケーションに結合する前に、いくつかの環境変数を設定しておく必要があります。
tmconfigは、型付きバッファを割り当てることができない場合、該当ユーザーに対する/etc/passwdエントリを判別できない場合、クライアント・プロセスになれない場合、入力バッファ編集用に/tmpに一時ファイルを作成できない場合、あるいは環境変数FIELDTBLSまたはFLDTBLDIRを設定し直すことができない場合には異常終了します。
各操作が完了した後、tmconfigから出力される戻り値には、リクエストされた操作に関するステータスが示されます。戻り値には3つのクラスがあります。
次の戻り値は、権限に関する問題またはOracle Tuxedoの通信エラーを示しています。戻り値は、操作が正常に完了しなかったことを示しています。
TAEPERM]
TAESYSTEM]
TAEOS]
TAETIME]
以下の戻り値は、処理そのものの実行に問題があることを示します。通常は、入力バッファ内のアプリケーション・データに関するセマンティクスの問題です。文字列フィールドTA_STATUSが出力バッファに設定され、問題を示します。文字列フィールドTA_BADFLDNAMEに、問題を引き起こした値が含まれるフィールドの名前が設定されます(エラーが1つのフィールドに関係している場合)。
TAERANGE]
TAEINCONSIS]
TAECONFIG]
TAEDUPLICATE]
TAENOTFOUND]
TAEREQUIRED]
TAESIZE]
TAEUPDATE]
TAENOSPACE]
次の戻り値は、少なくともMASTERサイトでは操作が成功したことを示します。
TAOK]
TAUPDATED]
TAPARTIAL]
MASTERサイトでは操作は成功しましたが、1つまたは複数の非MASTERサイトで失敗がありました。それらの非MASTERサイトには、無効またはパーティション化のマークが付けられます。詳細は、管理者ガイドを参照してください。
Oracle Tuxedoシステム・リリース4.0または4.1ノードが起動されている状態では、UPDATEおよびADD操作は実行できません。これらの操作を行うには、前もってこれらのノードを停止しておかなければなりません。リブートすると、変更内容が有効になります。
When tmunloadcf(1)を使用して構成内のエントリを表示する場合、フィールドの値が設定されていないとき(文字列の場合)、フィールド値が0のとき(整数の場合)、あるいはフィールドのデフォルト値に一致する場合、それらのフィールド値は表示されません。これらのフィールドは、tmconfigを使用する際に常に出力バッファに存在します。この方法で、管理者がエントリを取り出しやすくし、また以前に設定されていないフィールドを更新しやすくします。エントリには、フィールド名が含まれ、タブが後に続きますが、フィールド値はありません。
次に挙げる例では、tmconfigを使用して、ワークステーション・リスナー・サーバー上に指定されたネットワーク・アドレスを訂正しています。このアドレスはサーバー・セクションの最初のエントリになっていることがあります。この例で使用されているエディタはed(1)です。
$ EDITOR=ed tmconfig
Section:1)RESOURCES, 2)MACHINES, 3) GROUPS 4) SERVERS 5)SERVICES 6) NETWORK
7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 12) INTERFACES [1]: 4
Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE
6) CLEAR BUFFER 7) QUIT [1]: 1
Enter editor to add/modify fields [n]? <return>
Perform operation [y]? <return>
Return value TAOK
Buffer contents:
TA_OPERATION 4
TA_SECTION 3
TA_SRVID 2
TA_MIN 1
TA_MAX 1
TA_RQPERM 432
TA_RPPERM 432
TA_MAXGEN 1
TA_GRACE 86400
TA_STATUS Operation completed successfully
TA_SRVGRP WDBG
TA_SERVERNAME WSL
TA_CLOPT -A -- -d/dev/tcp -M4 -m2 -x5 -n0x0002fe19c00b6d6b
TA_CONV N
TA_REPLYQ N
TA_RESTART N
Section:1)RESOURCES, 2)MACHINES, 3) GROUPS 4) SERVERS 5)SERVICES 6) NETWORK
7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 12) INTERFACES [4]: <return>
Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE
6) CLEAR BUFFER 7) QUIT [1]: 5
Enter editor to add/modify fields [n]? y
240
/CLOPT/s/6d6b/690E/p
TA_CLOPT -A -- -d/dev/tcp -M4 -m2 -x5 -n0x0002fe19c00b690E
w
240
q
Perform operation [y]? <return>
Return value TAUPDATED
Buffer contents:
TA_OPERATION 1
TA_SECTION 3
TA_SRVID 2
TA_MIN 1
TA_MAX 1
TA_RQPERM 432
TA_RPPERM 432
TA_MAXGEN 1
TA_GRACE 86400
TA_STATUS Update completed successfully
TA_SRVGRP WDBG
TA_SERVERNAME WSL
TA_CLOPT -A -- -d/dev/tcp -M4 -m2 -x5 -n0x0002fe19c00b690E
TA_CONV N
TA_REPLYQ N
TA_RESTART N
Section:1)RESOURCES, 2)MACHINES, 3) GROUPS 4) SERVERS 5)SERVICES 6) NETWORK
7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 12) INTERFACES [1]: q
Unload TUXCONFIG file into ASCII backup [y]? <return>
Backup filename [UBBCONFIG]? <return>
Configuration backed up in UBBCONFIG
$ # boot the changed server
$ tmboot -s WSL -i 2
tmboot(1)、tmloadcf(1)、userlog(3c)、TM_MIB(5)、UBBCONFIG(5)
tmipcrm - ローカル・マシンでOracle Tuxedo ATMIアプリケーションが割り当てたIPCリソースを削除
tmipcrm [-y] [-n] [TUXCONFIG_file]
tmipcrmは、共有メモリー、メッセージ・キューおよびセマフォなど、Oracle Tuxedo ATMIアプリケーションによって割り当てられたIPCリソースをクリーンアップします。このコマンドは、シャットダウンの失敗などの通常ではないエラー状況が発生した後に通常実行されます。通常の状況では、Oracle Tuxedo ATMIシステムは、割り当てられたIPCリソースをすべてシャットダウン時にクリーンアップします。削除されたIPCリソースには、Oracle Tuxedo ATMIのコア・システムおよびWorkstationコンポーネントで使用されるようなものが含まれます。
tmipcrmはローカル・サーバー・マシン上でのみ機能するので、Oracle Tuxedo構成内のリモート・マシン上にあるIPCリソースはクリーンアップされません。TUXCONFIGファイルの名前は、TUXCONFIG環境変数の値として指定するか、またはコマンドラインで指定する必要があります。TUXCONFIGファイルは必須で、読取り可能である必要があります。
このコマンドを正常に実行できるのは、適切な権限を持つユーザーまたは管理者だけです。このコマンドは、掲示板(BB)を格納する共有メモリー・セグメントにアタッチ可能であることを前提としており、掲示板に格納されて参照されるIPCリソースを削除しようとします。システム上のその他の条件によって削除が失敗することもあります。このような失敗が検出された場合には通知されます。
-y
-n
TUXCONFIG_file
TUXCONFIGファイルが見つからない場合は、致命的なエラーが発生し、次のメッセージが表示されます。
Cannot open tuxconfig file
TUXCONFIGファイルが読み取れない場合は、致命的なエラーが発生し、次のメッセージが表示されます。
Execute permission denied, not application administrator
掲示板の共有メモリーへのアタッチが失敗した場合は、致命的なエラーが発生し、次のメッセージが表示されます。
Cannot attach to BB!
このコマンドは、通常は対話型モードで実行して、必要に応じて質問に対する回答を求めるプロンプトを表示します。-yオプションを指定すると、tmipcrmは応答を求めるプロンプトを表示しませんが、すべての質問に対して「はい」と答えたとみなされます。-nオプションを指定すると、tpipcrmはstdoutにIPCリソースを表示するだけで終了し、IPCリソースは削除されません。
次の例では、このコマンドが通常どのように使用されるかについて説明します。
$ tmipcrm /home/user/apps/tuxconfig
Looking for IPC resources in TUXCONFIG file /home/user/apps/tuxconfig
The following IPC resources were found:
Message Queues:
0x2345
0x3456
…
Semaphores:
0x34567
0x45678
…
Shared Memory:
0x45678
0x56789
…
Remove these IPC resources (y/n)?: y
Removing IPC resources … done!
次のサンプル・コードでは、ローカル・マシン上のOracle Tuxedo ATMIアプリケーションで使用されるIPCリソースの一覧を、ipclistというファイルに出力します。
tmipcrm -n /home/user/apps/tuxconfig >ipclist
tmloadcf - UBBCONFIGファイルを解析し、バイナリ版のTUXCONFIG構成ファイルをロード
tmloadcf[-n] [-y] [-c] [-bblocks] {UBBCONFIG_file|-}
tmloadcfは、UBBCONFIG構文に指定されたファイルまたは標準入力を読み取り、構文をチェックして、オプションでバイナリのTUXCONFIG構成ファイルをロードします。環境変数TUXCONFIGとTUXOFFSET (オプション)は、TUXCONFIGファイルと該当情報が格納される場所のオフセット(オプション)を示します。tmloadcfは、UBBCONFIGファイルのRESOURCESセクションに定義されているMASTERマシン上でしか実行できません。ただし、-cあるいは-nオプションが指定されている場合を除きます。
| 注意: | TUXCONFIG環境変数に指定されたパス名は、UBBCONFIGファイルのMACHINESセクションに指定されているTUXCONFIGパラメータの値と完全に一致しなければなりません(大文字/小文字の区別も含む)。一致しない場合、tmloadcf(1)は正常に実行されません。 |
tmloadcfは、UBBCONFIGファイルのセクションで抜けているものを検出すると、警告メッセージを表示します。ただし、LAN OPTIONの指定のない構成におけるNETWORKセクションの抜け(UBBCONFIG(5)に関する項を参照)、またはROUTINGセクションの抜けは除きます。入力ファイルを解析中に構文エラーを検出すると、tmloadcfはTUXCONFIGファイルを更新せずに終了します。
tmloadcfを実行するユーザーの実効ユーザー識別子は、UBBCONFIGファイルのRESOURCESセクションに記述されているUIDと同じでなければなりません(指定がある場合)。
tmloadcfにオプション-cを付けると、プログラムはこの構成に必要とされる最小のIPCリソースを表示します。RDMAが有効な場合、このオプションを指定すると、プログラムでMsgq_daemon (RCDMSZ)のメモリーの推奨サイズが出力されます。SHMQが有効な場合、このオプションを指定すると、プログラムでSHMQMAXMEM (SHMQSZ)の推奨最小値が出力されます。ノードごとに異なるリソース要件が、構成に含まれるノードごとに表示されます。TUXCONFIGファイルは更新されません。
tmloadcfで-nオプションを使用すると、プログラムはUBBCONFIG (構成ファイルのテキスト・バージョン)の構文チェックだけを行い、TUXCONFIGファイルの実際の更新は行いません。
構文チェックの後、tmloadcfは、TUXCONFIGが参照するファイルが存在するかどうか、存在する場合はそのファイルが有効なOracle Tuxedoシステムのファイル・システムかどうか、およびTUXCONFIG表を含んでいるかどうかを調べます。これらの条件が満たされていない場合、tmloadcfは、TUXCONFIGの作成および初期化を行うかどうかを確認するプロンプトを表示します。
Initialize TUXCONFIG file: path [y, q]?
標準入力あるいは標準出力が端末でない場合、あるいはコマンドラインで-yオプションが指定された場合には、このプロンプトは出されません。"y"または"Y"以外のレスポンスをすると、tmloadcfは構成ファイルを作成せずに終了します。
TUXCONFIGファイルが正しく初期化されていないとき、ユーザーが承認した場合は、tmloadcfがOracle Tuxedoファイル・システムを作成し、TUXCONFIG表を作成します。-bオプションがコマンドラインに指定されると、Oracle Tuxedoファイル・システムの作成時に、その引数がデバイスのブロック数として使用されます。-bオプションの値が新しいTUXCONFIG表を収容できるほど大きい場合、tmloadcfは、指定された値を使用して新しいファイル・システムを作成します。それ以外の場合、tmloadcfはエラー・メッセージを出力して終了します。-bオプションが指定されない場合、tmloadcfは、TUXCONFIGを収容できるだけ大きい新しいファイル・システムを作成します。ファイル・システムがすでに存在している場合、-bオプションは無視されます。
TUXCONFIGがrawデバイス(初期化されていない)であり、そのrawデバイス上のブロック数を設定する必要がある場合には、-bオプションをできるだけ使用するようにしてください。TUXCONFIGが通常のUNIXファイルである場合には、-bオプションは使用しないようにしてください。
TUXCONFIGファイルがすでに初期化されていると判断される場合、tmloadcfはそのTUXCONFIGファイルに記述されているシステムが稼働状態にないことを確認します。そのシステムが稼働状態にあると、tmloadcfはエラー・メッセージを出して終了します。
システムが非稼働状態にあり、TUXCONFIGファイルがすでに存在している場合は、ファイルを上書きするかどうかを確認するプロンプトが表示されます。
Really overwrite TUXCONFIG file [y, q]?
標準入力あるいは標準出力が端末でない場合、あるいはコマンドラインで-yオプションが指定された場合には、このプロンプトは出されません。"y"または"Y"以外のレスポンスを行うと、tmloadcfは終了して、ファイルの書換えは行われません。
構成ファイルのRESOURCESセクションにSECURITYパラメータが指定されていると、tmloadcfは標準入力をフラッシュし、端末エコー機能をオフにして、ユーザーにアプリケーション・パスワードの入力を求めます。
Enter Application Password?
Reenter Application Password? パスワードは、30文字以内の長さで入力できます。ファイルではなく標準入力を介してUBBCONFIG (構成ファイルのテキスト・バージョン)をロードするオプションは、SECURITYパラメータがオンのときには使用できません。標準入力が端末でない場合、つまり、ユーザーにパスワードの入力を求めることができない場合(たとえば、hereファイルの場合)、アプリケーション・パスワードの設定のために環境変数APP_PWが参照されます。APP_PW環境変数が設定されておらず、標準入力が端末でない場合には、tmloadcfはエラー・メッセージを出し、ログ・メッセージを生成して、TUXCONFIGファイルのロードに失敗します。
エラーがないと仮定して、すべてのチェックの結果が正常であった場合、tmloadcfはUBBCONFIGファイルをTUXCONFIGファイルにロードします。このとき、TUXCONFIG表にある既存の情報はすべて書き換えられます。
ロード中に丸められて、アンロードされたときに一致しない値もありますので、注意してください。そのような値にはMAXRFTおよびMAXRTDATAがありますが、それだけではありません。
tmloadcfはマスター・ノード上で実行しなければなりません。相互運用アプリケーションでは、マスター・ノードは最新のリリースでなければなりません。
tmloadcfは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
環境変数APP_PWは、SECURITYパラメータが指定され、かつ標準入力として端末以外のものを使用してtmloadcfを実行するアプリケーションに対して設定しなければなりません。
UBBCONFIGファイルBB.shmから構成ファイルをロードするには、次のようにデバイスを2000ブロックに初期化します。
tmloadcf -b2000 -y BB.shm
入力にエラーが検出されると、エラーの原因となった行が、問題を指摘するメッセージとともに、標準エラーに出力されます。また、UBBCONFIGファイルに構文エラーがあったり、システムがその時点で稼働中であると、TUXCONFIGファイル内の情報は一切更新されず、tmloadcfは終了して、終了コード1を戻します。
UBBCONFIGファイルに指定されているUIDと一致しない実効ユーザー識別子を持つユーザーがtmloadcfを実行すると、次のようなエラー・メッセージが表示されます。
*** UID is not effective user ID ***
tmloadcfを非マスター・ノード上で実行すると、次のようなエラー・メッセージが表示されます。
tmloadcf cannot run on a non-master node.
tmloadcfをアクティブ・ノード上で実行すると、次のようなエラー・メッセージが表示されます。
tmloadcf cannot run on an active node.
tmloadcfは正常に処理を完了すると、終了コード0を返して終了します。TUXCONFIGファイルが更新された場合には、userlogメッセージが生成されてこのイベントが記録されます。
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmloadrepos - バイナリのTuxedoサービス・メタデータ・リポジトリ・ファイルを作成または更新し、サービス・パラメータ情報とともにロードします。
tmloadrepos [-e|-d service1[,...]] [-y] [-i repository_input file] repository_file
このコマンドを使用すると、バイナリのTuxedoサービス・メタデータ・リポジトリ・ファイルを作成または更新し、サービス・パラメータ情報とともにロードできます。
リポジトリ・ファイルが存在せず、入力ファイルが指定されていない場合は、リポジトリ・ファイルが作成され、コンソールから入力(標準入力)するサービス・パラメータ情報が使用されます。標準入力は、リポジトリ・ファイルがすでに存在しているにもかかわらず、入力ファイルまたは特定のサービス名が指定されていない場合にも使用します。
| 注意: | tmloadreposを使用して、JOLTリポジトリ・ファイルのサービス・パラメータ情報を更新、追加、または削除することはできません。 |
-i
-iオプションにより、repository_inputファイルに示されていない既存のrepository_file情報をtmloadreposが保持できます。または、repository_inputファイルに構文エラーがある場合にも同じ情報を保持できます。 例1: tmloadrepos -i infile reposfile
指定された入力ファイルが見つからない場合、エラー・メッセージが表示されます。
-e
repository_inputファイルを指定しないと、コンソールからサービス・パラメータ情報を入力するようにユーザーが要求され、その入力した情報によって既存のリポジトリ情報が置き換えられます。例2: tmloadrepos -e reposfile 例3: tmloadrepos -e -i infile reposfile
-d
-dを指定すると、指定したサービスの情報がリポジトリから削除されます。-dオプションを-iオプションと一緒に使用することはできません。また、特定のサービス情報を削除するために正規表現を使用することもできません。
| 注意: | 情報が誤って消去されるのを防ぐために、-yオプションを指定しないかぎり、-eおよび-dオプションによってユーザーの確認を要求します。 |
| 注意: | 確認メッセージが表示された場合、メタデータ・リポジトリ・ファイルのサービス情報の編集、追加または削除を続行するには「Y」を、続行しない場合は「N」を選択します。 |
-y
repository_inputファイル
repository_inputファイルは、サービス・キーワードおよびパラメータ・キーワードとそれらの値を格納するテキスト・ベースのファイルです。キーワードの省略形も使用できます。キーワードおよび省略形の大文字/小文字は区別されます。キーワード、省略形、および値の一覧については、『Oracle Tuxedo Oracle Tuxedoアプリケーションの設定』の「Tuxedoサービス・メタデータ・リポジトリの管理」<Default ?Font>のTuxedoサービス・メタデータ・リポジトリの作成に関する項を参照してください。
repository_file
入力にエラーが検出されると、エラーの原因となった行が、問題を指摘するメッセージとともに、標準エラーに出力されます。
service=TRANSFER
svcdescription=This service transfers money from one account to another
export=Y
inbuf=FML
outbuf=FML
param=ACCOUNT_ID
type=integer
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
access=in
count=2
requiredcount=2
param=SAMOUNT
paramdescription=This is the amount to transfer. It must be greater than zero.
type=string
access=in
param=SBALANCE
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
type=string
access=out
count=2
requiredcount=2
param=STATLIN
type=string
access=out
service=LOGIN
svcdescription=This service allows users to log in to the Acme Banking\ Corporation computer systems. Only tellers and trusted administrators may\
make use of this service.
inbuf=VIEW
inview=LOGINS
outview=LOGINR
export=Y
param=user
type=string
access=in
param=passwd
type=string
access=in
param=token
type=integer
access=out
例2 :埋め込み型パラメータのtmloadrepos入力ファイルの例
service=DEPOSIT
svcdescription=This service saves money to one account
export=Y
inbuf=FML32
outbuf=FML32
param=USER_INFO
type=fml32
paramdescription=user information of the account
access=in
count=1
requiredcount=1
fldnum=20000
# embedded field
(
param=USERNAME
type=string
paramdescription=user name
size=8
count=1
requiredcount=1
fldnum=20001
param=GENDER
type=string
size=6
count=1
requiredcount=1
fldnum=20002
)
param=ACCOUNT_ID
type=integer
paramdescription=the deposit account.
access=in
count=1
requiredcount=1
fldnum=20003
param=SAMOUNT
paramdescription=This is the amount to transfer. It must be greater than zero.
type=string
access=in
fldnum=20004
param=SBALANCE
paramdescription=the deposit account
type=string
access=out
count=1
requiredcount=1
fldnum=20005
param=STATLIN
type=string
access=out
fldnum=20006
tpgetrepos(3c)、tpsetrepos(3c)、tmunloadrepos(1)、TMMETADATA(5)、『Oracle Tuxedo Oracle Tuxedoアプリケーションの設定』のTuxedoサービス・メタデータ・リポジトリの管理に関する項<Default ?Font>
TMS_rac_refresh - Oracle Real Application Clusters (RAC)の準備されたトランザクションのリストを取得
TMS_rac_refresh groupnameまたは[group ID grp1,grp2, ...]
TMS_rac_refreshは、トランザクション・マネージャ・サーバー(TMS)にコマンドを送り、xa_recover()の処理を再実行します。サーバーはグループ名またはグループIDで指定し、groupnameパラメータにリストされます。TMS_rac_refreshは、メッセージをTMSに送信した後で終了します。その後、TMSは実際のxa_recover()を非同期に実行します。この処理は、フェイルオーバー条件が発生したときにOracle Real Application Clusters (RAC)ソフトウェアで必要になります。
TMS_rac_refreshは、Oracle RACグループが代替サーバー・グループにフェイルオーバーするときに、Oracle Fast Application Notification (FAN)を使用して開始されます。コマンドラインから手作業で実行する必要はありません。
| 注意: | TMS_rac_refreshは、RAC機能を使用するOracleサーバー・グループのみが使用します。 |
| 注意: | Oracle FANの構成方法の詳細は、Oracle 10gのドキュメントを参照してください。 |
groupname
TMS_rac_refreshを実行するために必須のパラメータです。
TMS_rac_refreshは、通常はコマンドラインからは実行しません。したがって、診断メッセージはuserlogに書き込まれます。
TMS_rac_refreshでは、groupnameが正しいサーバー・グループの名前でなかったとき、またはgroupnameでリストされたTMSサーバーにメッセージを送信できなかった場合にエラーを通知します。
tmshutdown - Oracle Tuxedoサーバー・セットを停止
tmshutdown[options]
tmshutdownは、サーバーの実行を停止させたり、構成ファイルに記述されているサービスの宣言を除去したりします。tmshutdownコマンドを呼び出せるのは、掲示板の管理者(構成ファイルのUIDパラメータで指定されている)またはrootだけです。また、tmshutdownは、構成ファイルのRESOURCESセクションでMASTERとして指定されているマシン、あるいはMASTERとして機能するバックアップ・マシン(つまり、tmadmin(1)のmasterコマンドによりDBBLがすでに稼働状態である)上でしか呼び出せません。ただし、パーティション化されたプロセッサに対して-Pオプションが使用されている場合を除きます(下記参照)。
オプションなしの場合、tmshutdownはすべての管理サーバー、TMS、ゲートウェイ・サーバー、およびTUXCONFIG環境変数に指定されている構成ファイルのSERVERSセクションに記述されているサーバーを停止させ、それらの関連IPCリソースを除去します。グループごとに、SERVERSセクションの全サーバー、関連するゲートウェイ・サーバー(外部グループの)およびTMSサーバーがこの順序で停止されます。管理サーバーは最後に停止されます。
SEQUENCEパラメータなしのアプリケーション・サーバーが、構成ファイルのサーバー・エントリと逆の順序で最初に停止されます。その後、SEQUENCEパラメータが指定されたサーバーがシーケンス番号の上から順に停止されます。構成ファイルのSERVERSセクションの複数のサーバーでSEQUENCEパラメータが同じ場合、tmshutdownはそれらのサーバーをパラレルで停止します。SERVERSセクションの各エントリには、MINパラメータとMAXパラメータをオプションで指定できます。-iオプションが指定されない場合、tmshutdownは、各サーバー・エントリについてサーバーのすべてのオカレンス(最大でMAXオカレンス)を停止します。-iオプションを使用すると、個々のオカレンスが停止されます。
あるサーバーを停止できない場合、あるいはサービスの公開を削除できない場合、中央のイベント・ログに診断が書き出されます(「userlog(3c)」を参照)。次に、すべてのオプションについて個々に説明します。
-l lmid
LMIDパラメータがlmidである各グループごとに、該当グループに対応するSERVERSセクションの全サーバーがまず停止され、続いてそのグループに属するTMSとゲートウェイ・サーバーが停止されます。
-g grpname
SERVERSセクションのすべてのサーバー(つまり、SRVGRPパラメータがgrpnameに設定されている)が停止され、続いてそのグループのすべてTMSとゲートウェイ・サーバーが停止されます。TMSサーバーの停止は、そのグループ・エントリのTMSNAMEおよびTMSCOUNTパラメータの設定に基づいて行われます。外部グループの場合、HOSTセクションの関連エントリに対応するゲートウェイ・サーバーの停止は、パラメータGATENAMEとGATECOUNTに基づいて行われます。ゲートウェイを停止すると、そのプロセスが停止されると共に、その管理サービスと公開されたすべての外部サービスの公開が取り消されます。
-i srvid
SERVERSセクションのサーバーのうち、SRVIDパラメータがsrvidに設定されているサーバーがすべて停止されます。SRVIDには30,000を超える値を入力しないでください。これはシステム・プロセス(TMSまたはゲートウェイ・サーバー)を指定します。これらを停止するには、-lオプションまたは-gオプションを使用する必要があります。
-s aout
-o sequence
-S
-A
-M
MASTERマシン上のBBLが停止され、構成ファイルにLANとNETWORKエントリが指定されていれば、BRIDGEが停止されます。MODELがMPであると、DBBL管理サーバーが停止されます。
-B lmid
-w delay
SIGKILLシグナルは捕捉できないため、その時点でプロセスによって実行されるコードには無関係に、シグナルを受信したプロセスはすべて直ちに終了されます。停止されるプロセスが掲示板を更新中だった場合には、掲示板に構造上の損傷を与えるおそれがあります。| 注意: | -wオプションが適用されるサーバーは、UNIXのシグナルSIGTERMを捕捉できません。 |
| 注意: | SIGKILLシグナルの受信に基づいてサーバーが停止される場合、エントリが掲示板に残る場合があります。BBLが停止される場合、これらのエントリが検出され、BBLは停止しません。システムの停止を完了するには、再度tmshutdownコマンドを使用しなければならない場合もあります。 |
-k {TERM | KILL}
SIGKILLシグナルは捕捉できないため、その時点でプロセスによって実行されるコードには無関係に、シグナルを受信したプロセスはすべて直ちに終了されます。このような挙動は、停止中のプロセスが掲示板を更新中だった場合、掲示板に構造上の損傷を与えるおそれがあります。 これを防ぐためにtpkill(1)コマンドを使用できます。 tpkillは掲示板をロックした後でSIGKILLシグナルをプロセスに送信するため、終了されるプロセスによる掲示板の更新を回避できます。 | 注意: | このオプションは、UNIXシグナルのSIGTERMとSIGKILLをサポートするシステムでは、これらにマップされます。デフォルトでは、SIGTERMはOracle Tuxedoサーバーで順序立てた停止を開始します。SIGTERMをアプリケーションでリセットすると、Oracle Tuxedoシステムがサーバーを停止できなくなることがあります。 |
| 注意: | SIGKILLシグナルの受信に基づいてサーバーが停止される場合、エントリが掲示板に残る場合があります。BBLが停止される場合、これらのエントリが検出され、BBLは停止しません。システムの停止を完了するには、再度tmshutdownコマンドを使用しなければならない場合もあります。 |
-y
yesの答えを指定します。(このプロンプトが表示されるのは、制限するオプションを指定せずにコマンドを入力した場合のみです。)
-q
-n
-R
-Rオプションは、-lあるいは-gオプションと一緒に使用しなければなりません(例: tmshutdown -l lmid -R)。また、構成ファイルのRESOURCESセクションにMIGRATEオプションを指定しなければなりません。
-c
-H lmid
lmidに対応するノード上の全管理サーバーおよびアプリケーション・サーバーが停止されます。一方、マルチプロセッサ(たとえば3B4000)上では、PEが1つしか指定されていない場合でも、すべてのPEが停止されます。
-P lmid
tmshutdownは指定lmid上の掲示板にアタッチし、このlmidが該当アプリケーションの他の部分からパーティション化されていることを確認してから(つまり、DBBLにはアクセスしません)、すべての管理サーバーとアプリケーション・サーバーを停止します。このコマンドは、構成ファイルのMACHINESセクションに指定されているlmidに対応するプロセッサ上で実行しなければなりません。
-l、-g、-sおよび-Tオプションを指定するとTMSサーバーが停止します。-l、-gおよび-sオプションを指定すると、ゲートウェイ・サーバーが停止します。-l、-g、-i、-s、-oおよび-Sオプションはアプリケーション・サーバーに適用されます。-A、-Mおよび-Bオプションは管理プロセスのみに適用されます。-l、-g、-i、-oおよび-sオプションを組み合せて使用すると、指定されたすべての条件を満たすサーバーのみが停止します。
サーバーの中断時にグローバル・トランザクションが稼働しているといったような分散トランザクション処理機能を使用する場合には、プリコミット後のコミットが記録される場所まで処理が進んでいなかったトランザクションは、中断します。一方、コミット点まで進んでいたトランザクションは、サーバー(たとえば、TMS)が再度ブートされた時点で処理が完了します。
tmshutdownはマスター・ノード上で実行する必要があります。相互運用アプリケーションでは、マスター・ノードは最新のリリースを実行する必要があります。tmshutdownは、リリース4.1サイトでリリース4.2管理サーバーを停止させることにつながる構成ファイル内の条件を検出し報告します。
tmshutdownは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tmshutdownは、サーバーの停止に失敗した場合や致命的エラーが発生した場合には、終了コード1を返して終了します。詳細は、ユーザー・ログを調べてください。正常に実行できた場合には、終了コード0で終了します。
tmshutdownが、実際のマスター・ノードでないアクティブ・ノード上で実行されると、次のような致命的エラー・メッセージが表示されます。
tmshutdown cannot run on a non acting-master node in an active application.
プロセスを停止することでアクティブ・プロセスがDBBLからパーティション化されると、次のような致命的エラー・メッセージが表示されます。
cannot shutdown, causes partitioning.
サーバーが異常終了した場合には、次のようなメッセージが出されます。
CMDTUX_CAT:947 Cannot shutdown server GRPID
システム全体を停止して、Oracle TuxedoのIPCリソースをすべて削除するには、次のコマンドを実行します。30秒経過しても確認が得られないと強制的に実行されます。
lmidの値がCS1に設定されているマシン上のサーバーだけを停止するには、次のコマンドを入力します。
tmshutdown -l CS1
-lオプションはSERVERSセクションにリストされているサーバーのみにアクションを制限するものであるため、CS1上のBBLは停止されません。
tmshutdownコマンドは、ハングアップ・シグナル(SIGHUP)を無視します。停止中にシグナルが検出されても、プロセスは継続します。
tmadmin(1)、tmboot(1)、tpkill(1)、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmunloadcf - バイナリ版のTUXCONFIG構成ファイルをアンロード
tmunloadcftmunloadcfは、TUXCONFIG構成ファイルをバイナリ表現からテキスト形式に変換します。この変換処理は、バイト・オーダーが異なるマシン間でファイルを簡潔に移送したり、ファイルのバックアップ・コピーを簡潔に作成して信頼性を高める場合に役立ちます。テキスト形式については、「UBBCONFIG(5)」で説明します。
tmunloadcfは、TUXCONFIGおよびTUXOFFSET環境変数が示すTUXCONFIGファイルから値を読み取り、それらを標準出力に書き出します。
Oracle Tuxedoリリース7.1で起動すると、複数のリソースに対してパスワードを使用できます。たとえば、リソース・マネージャのOPENINFO文字列にパスワードを指定できます。パスワードを含むTUXCONFIG構成ファイルに対してtmunloadcfが実行された場合、出力には暗号化されたパスワードが表示されます。この暗号化されたパスワードは、一度だけシステムにアップロードできます。
構成中に四捨五入され、tmloadcfの呼び出しまたはTMIBインタフェースによって設定した値と一致しない値もありますので、注意してください。そのような値にはMAXRFTおよびMAXRTDATAがありますが、それだけではありません。
tmunloadcfは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
次のコマンドを入力すると、/usr/tuxedo/tuxconfigの構成がファイルtconfig.backupにアンロードされます。
TUXCONFIG=/usr/tuxedo/tuxconfig tmunloadcf > tconfig.backup
tmunloadcfは、TUXCONFIGおよびTUXOFFSET環境変数が参照するファイルが存在するかどうか、存在する場合はそのファイルが有効なOracle Tuxedoシステムのファイル・システムであるかどうか、およびTUXCONFIG表を含んでいるかどうかを調べます。これらの条件のいずれかが満たされない場合、tmunloadcfはエラー・メッセージを出し、終了コード1を戻して終了します。処理が成功すると、tmunloadcfは終了コード0を返して終了します。
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmunloadrepos - Tuxedoサービス・メタデータ・リポジトリ・ファイルから、サービスの情報を表示するか、tuxedoクライアント側またはサーバー側のC疑似コードを作成します。
tmunloadrepos [-s service_regular_expression1[,...]] [-t|-c|-C|-S|-V output_dir][-o output_file] repository_file
tmunloadreposは、メタデータ・リポジトリ・ファイルに指定されたTuxedoサービス情報を表示します。または、Tuxedoクライアント側またはサーバー側のC疑似コードをメタデータ・リポジトリ・ファイルから生成します。
| 注意: | tmunloadreposは、Joltリポジトリ・ファイルの表示にも使用できます。 |
tmunloadreposでは以下のオプションを使用できます。
-s
service_regular_expressionに一致するサービスに限定できます。このオプションを指定しない場合は、リポジトリで認識されているすべてのサービスの情報が表示されます。区切り文字「,」を使用すると、複数のservice_regular_expressionを1つの文字列にできます。
-t
-c
-C
-Cオプションを指定すると、出力が、典型的なスタンドアロンtuxedoクライアントのC疑似コード形式になります。tuxedoクライアントに含まれるサービス名全体の文字数は512以内であることが必要です。
-S
-V output_dir
-Vオプションを指定すると、tmunloadreposがTuxedoビュー・ファイル${SERVICENAME}[info.v|info32.v|_infoFML|infoFML32]を生成します。このファイルには、メタデータ・リポジトリ・ファイルに定義されている、FML/FML32フィールド表またはVIEW/VIEW32記述子が記述されています。tmunloadreposの入力によって、VIEWのフィールドの最大オカレンス数が指定されない場合、tmunloadrepos -Vは、VIEWlのそのフィールドの1オカレンスのみを生成します。反対に、tmunloadreposの入力によってフィールドの無制限のオカレンスが指定されると、tmunloadrepos -Vはエラーを生成します。
– S、-V、-C、-t、-cの各オプションは相互に排他的です。これらのオプションのいずれも指定しない場合、出力はプレーン・テキスト形式になります。
-o output_file
出力ファイル名を指定します。-o output_fileが指定されない場合、標準出力が使用されます。-o output_fileが有効になるのは、-S、-C、または-cが指定される場合のみです。
| 注意: | tmunloadreposは、Tuxedoサービス・メタデータ・リポジトリ・ファイルだけでなく、Joltリポジトリ・ファイルの表示にも使用できます。 |
以下のtmunloadreposコマンドライン・オプションはTuxedo 10.0リリースでは非推奨になりました。
-w
-wオプションを指定すると、出力がWSDLサービス記述形式になります。Tuxedo 9.0以降では、WSDL仕様V2.0 (www.x3.org)をベースにカスタマイズしたWSDL形式を使用しています。
Oracle SALTのコマンド・ユーティリティtmwsdlgenは、TuxedoサービスのWSDL公開に関して唯一推奨されるユーティリティです。tmwsdlgenの詳細は、Oracle SALTのドキュメントを参照してください。
tmunloadreposでは、repository_fileで指定されたファイルがTuxedoシステムのメタデータ・リポジトリ・ファイルとして有効かどうかが検証されます。-sオプションが指定されている場合は、service_regular_expressionに一致する1つまたは複数のサービスについての情報がリポジトリに格納されているかどうかが検証されます。これらの条件のいずれかが満たされない場合、tmunloadreposはエラー・メッセージを出し、終了コード1を戻して終了します。処理が成功すると、tmunloadreposは終了コード0を返して終了します。
#
# #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
#
######################
# service : TRANSFER #
######################
service=TRANSFER
servicetype=service
export=Y
inbuf=FML32
outbuf=FML32
svcdescription=This service transfers money from one account to another
tuxservice=TRANSFER
param=ACCOUNT_ID
count=2
requiredcount=2
type=integer
access=in
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
param=SAMOUNT
count=1
requiredcount=1
type=string
access=in
paramdescription=This is the amount to transfer. It must be greater than zero.
param=SBALANCE
count=2
requiredcount=2
type=string
access=out
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
param=STATLIN
count=1
requiredcount=1
type=string
access=out
###################
# service : LOGIN #
###################
service=LOGIN
servicetype=service
export=Y
inbuf=VIEW
outbuf=VIEW
inview=LOGINS
outview=LOGINR
svcdescription=This service allows users to log in to the Acme Banking \
Corporation computer systems. Only tellers and trusted \
administrators may make use of this service.
tuxservice=LOGIN
param=user
count=1
requiredcount=1
type=string
access=in
param=passwd
count=1
requiredcount=1
type=string
access=in
param=token
count=1
requiredcount=1
type=integer
access=out
/*
* #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
* #Generated Time : 04/12/12 01:50:08
*/
#include <stdio.h>
#include "userlog.h"
#include "atmi.h"
/**********************/
/* service : TRANSFER */
/**********************/
int
callsvc_TRANSFER()
{/*
* This service transfers money from one account to
* another
*/
FBFR32 *idata;
FBFR32 *odata;
int in_account_id = 0;
/*char in_samount [<USER_DATA_LENGTH>];*/
char *out_sbalance = NULL;
char *out_statlin = NULL;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("FML32", NULL, 4096))==NULL) {/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("FML32", NULL, 4096))==NULL) {tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, SAMOUNT, (char *)&in_samount, <USER_DATA_LENGTH>);*/
rtn = tpcall("TRANSFER", idata, ilen, &odata, &olen, flags)/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
/*******************/
/* service : LOGIN */
/*******************/
int
callsvc_LOGIN()
{/*
* This service allows users to log in to the Acme Banking
* Corporation computer systems. Only tellers and trusted
* administrators may make use of this service.
*/
struct LOGINS *idata;
struct LOGINR *odata;
/*char in_user [<USER_DATA_LENGTH>];*/
/*char in_passwd [<USER_DATA_LENGTH>];*/
int out_token = 0;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("VIEW", "LOGINS", 4096))==NULL) {/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("VIEW", "LOGINR", 4096))==NULL) {tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/* <idata> View member value setting can be placed here */
idata->user = in_user;
idata->passwd = in_passwd;
rtn = tpcall("LOGIN", idata, ilen, &odata, &olen, flags)/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
int
main(int argc, char *argv[])
{argc = argc;
argv = argv;
/*
* Set the external variable proc_name (defined in userlog.h)
* to be the name of the executable program so that it appears
* in the Tuxedo ULOG entries for the client program.
*/
proc_name = argv[0];
if (tpinit((TPINIT *)NULL) == -1) {/*<error log can be placed here>*/
(void)exit(1);
}
if (callsvc_TRANSFER()){/*<error log can be placed here>*/
}
if (callsvc_LOGIN()){/*<error log can be placed here>*/
}
(void)tpterm()
return(0);
}
/ *
* #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
* #Generated Time : 04/12/12 01:50:08
*/
/**********************/
/* service : TRANSFER */
/**********************/
int
callsvc_TRANSFER()
{/*
* This service transfers money from one account to
* another
*/
FBFR32 *idata;
FBF R32 *odata;
int in_account_id = 0;
/*char in_samount [<USER_DATA_LENGTH>];*/
char *out_sbalance = NULL;
char *out_statlin = NULL;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("FML32", NULL, 4096))==NULL) {/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("FML32", NULL, 4096))==NULL) {tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, SAMOUNT, (char *)&in_samount, <USER_DATA_LENGTH>);*/
rtn = tpcall("TRANSFER", idata, ilen, &odata, &olen, flags)/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
/*******************/
/* service : LOGIN */
/*******************/
int
callsvc_LOGIN()
{/*
* This service allows users to log in to the Acme Banking
* Corporation computer systems. Only tellers and trusted
* administrators may make use of this service.
*/
struct LOGINS *idata;
struct LOGINR *odata;
/*char in_user [<USER_DATA_LENGTH>];*/
/*char in_passwd [<USER_DATA_LENGTH>];*/
int out_token = 0;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("VIEW", "LOGINS", 4096))==NULL) {/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("VIEW", "LOGINR", 4096))==NULL) {tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/* <idata> View member value setting can be placed here */
idata->user = in_user;
idata->passwd = in_passwd;
rtn = tpcall("LOGIN", idata, ilen, &odata, &olen, flags)/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
/*
* #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
* #Generated Time : 04/12/12 01:50:24
*/
/**********************/
/* service : TRANSFER */
/**********************/
void
TRANSFER(TPSVCINFO *msg)
{/*
* This service transfers money from one account to
* another
*/
FBFR32 *idata;
FBFR32 *odata;
int in_account_id = 0;
char *in_samount = NULL;
char *out_sbalance = NULL;
char *out_statlin = NULL;
int counter, numofocc;
/* Application business logic can be placed here */
idata = (FBFR32 *) msg->data;
Fprint32(idata);
if ((odata = tpalloc("FML32", NULL, msg->len))==NULL) {/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)idata, 0L, 0);
}
if ((numofocc = Foccur32(idata, ACCOUNT_ID)) == -1) {/*verifying the number of occurrences is within the range specified in the service definition*/
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
if (numofocc == 0) {/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
for (counter = 0; counter < numofocc; counter++) {/*
* if (Fget32(idata, ACCOUNT_ID, counter, (char *)&in_account_id, <USER_DATA_LENGTH>) == -1) {* <error log can be placed here>
* tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
* }
*/
}
if ((numofocc = Foccur32(idata, SAMOUNT)) == -1) {/*verifying the number of occurrences is within the range specified in the service definition*/
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
if (numofocc == 0) {/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
for (counter = 0; counter < numofocc; counter++) {/*
* if (Fget32(idata, SAMOUNT, counter, (char *)&in_samount, <USER_DATA_LENGTH>) == -1) {* <error log can be placed here>
* tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
* }
*/
}
/* Application business logic can be placed here */
/*Fadd32(odata, SBALANCE, (char *)&out_sbalance, <USER_DATA_LENGTH>);*/
/*Fadd32(odata, SBALANCE, (char *)&out_sbalance, <USER_DATA_LENGTH>);*/
/*Fadd32(odata, STATLIN, (char *)&out_statlin, <USER_DATA_LENGTH>);*/
tpreturn(TPSUCCESS, 0, (char *)odata, 0L, 0);
}
/*******************/
/* service : LOGIN */
/*******************/
void
LOGIN(TPSVCINFO *msg)
{/*
* This service allows users to log in to the Acme Banking
* Corporation computer systems. Only tellers and trusted
* administrators may make use of this service.
*/
struct LOGINS *idata;
struct LOGINR *odata;
char *in_user = NULL;
char *in_passwd = NULL;
int out_token = 0;
/* Application business logic can be placed here */
idata = (struct LOGINS *) msg->data;
if ((odata = tpalloc("VIEW", "LOGINR", msg->len))==NULL) {/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)idata, 0L, 0);
}
/* Input View <idata> member value getting can be placed here */
in_user = idata->user;
in_passwd = idata->passwd;
/* Output View member value setting can be placed here */
odata->token = out_token;
tpreturn(TPSUCCESS, 0, (char *)odata, 0L, 0);
}
filename:LOGINinfo.v
#Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
#Generated Time : 04/12/12 01:50:34
VIEW LOGINS
#type cname fbname count flag size null
#---- ----- ------ ----- ---- ---- ----
string in_user - 1 - - NULL
string in_passwd - 1 - - NULL
END
VIEW LOGINR
int out_token - 1 - - 0
END
filename:TRANSFER_infoFML32
#Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
#Generated Time : 04/12/12 03:20:51
*base 1000
#name rel-number type flags comment
#---- ---------- ---- ------ -------
ACCOUNT_ID 1 long - The withdrawal account is 1st, and the deposit account is 2nd.
SAMOUNT 2 string - This is the amount to transfer. It must be greater than zero.
SBALANCE 3 string - The withdrawal account is 1st, and the deposit account is 2nd.
STATLIN 4 string - -
tpgetrepos(3c)、 tpsetrepos(3c)、tmloadrepos(1)、 TMMETADATA(5)、『Oracle Tuxedo Oracle Tuxedoアプリケーションの設定』のTuxedoサービス・メタデータ・リポジトリの管理に関する項<Default ?Font>
tpacladd - 新しいアクセス制御リストをシステムに追加
tpacladd [-g GID[,GID . . . ]] [-t type] name
tpacladdを実行すると、Oracle Tuxedo ATMIのセキュリティ・データ・ファイルにアクセス制御リスト(ACL)の新しいエントリが追加されます。この情報は、サービス、イベント、アプリケーションの各キューに対するOracle Tuxedo ATMIのアクセス制御に使用されます。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したOracle Tuxedoの構成を作成する必要があります。
-g GID, . . .
-t type
name
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)のいずれかを使用してアプリケーションを構成し、TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpacladdを構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpacladdコマンドは正しく完了すると、終了コード0で終了します。
tpacldel(1)、tpaclmod(1)、tpgrpadd(1)、tpgrpdel(1)、tpgrpmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpaclcvt - Oracle Tuxedo ATMIのセキュリティ・データ・ファイルを変換する
tpaclcvt [-uuserfile] [-ggroupfile]
tpaclcvtは、任意のバージョンのAUTHSVR (Oracle Tuxedoリリース5.0で利用できるバージョン)で使用される既存のユーザー・ファイルを調べ、これをOracle Tuxedoリリース6.0で使用する形式に変換します。また、/etc/groupまたは類似のファイルに基づいてグループ・ファイルを生成し、/etc/passwdファイルを変換します。
-u userfile
-g groupfile
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)のいずれかを使用してアプリケーションを構成し、TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpaclcvtを構成のMASTER上で実行する必要があります。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpadd(1)、tpusradd(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpacldel [-ttype]name
tpacldelを実行すると、Oracle Tuxedo ATMIのセキュリティ・データ・ファイルから既存のアクセス制御リスト(ACL)のエントリが削除されます。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したOracle Tuxedoの構成を作成する必要があります。
-t type
name
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)のいずれかを使用してアプリケーションを構成し、TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpacldelを構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpacldelコマンドは正しく完了すると、終了コード0で終了します。
tpacladd(1)、tpaclmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpaclmod [-gGID[,GID...]] [-ttype]name
tpaclmodを実行すると、Oracle Tuxedoのセキュリティ・データ・ファイル内のアクセス制御リスト(ACL)のエントリが変更されて、グループ識別子リストが置き換えられます。この情報は、サービス、イベント、アプリケーションの各キューに対するOracle Tuxedo ATMIのアクセス制御に使用されます。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したOracle Tuxedoの構成を作成する必要があります。
-g GID, . . .
-t type
name
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)のいずれかを使用してアプリケーションを構成し、TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpaclmodを構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpaclmodコマンドは正しく完了すると、終了コード0で終了します。
tpacladd(1)、tpacldel(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpaddusr - Oracle Tuxedoのパスワード・ファイルを作成
tpaddusrusrname file[cltname[UID]]
このコマンドを使用すると、アプリケーション管理者は、Oracle TuxedoシステムのAUTHSVR(5)サーバーでの使用に適したUNIXシステム形式のパスワード・ファイルを作成できます。tpaddusrは、ユーザーのusrnameをパスワード・ファイルfileに追加します(fileに/etc/passwdを指定することはできません)。管理者は、追加したユーザーに割り当てるパスワードを入力するように要求されます。必要であれば、権限0600でfileが作成されます。cltname (指定された場合)は、パスワード・エントリの追加の修飾子を示します。usrnameまたはcltname (あるいは両方)には、AUTHSVR(5)でワイルドカードとして使用できるアスタリスク(*)を指定することもできます。UID (指定される場合)は、ユーザーの認証が正常終了したときに返される数値のユーザー識別子を示します。cltnameとUIDを指定しない場合、デフォルトはそれぞれ*と-1になります。
cltnameの値tpsysadmとtpsysopは、認証リクエストを処理する際にAUTHSVR(5)により特殊な処理が行われます。これらのcltname値は、パスワード・ファイル内のワイルドカードのcltname指定と照合されることはありません。
さらに、パスワード・ファイルへの追加順序に関係なく、ワイルドカードのエントリは、明示的に指定された値の後で処理されます。認証リクエストは、最初に一致するパスワード・ファイルのエントリに対してのみ認証されます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
このコマンドは、ユーザーをSECURITY USER_AUTHに構成するために使用します。SECURITY ACLまたはMANDATORY_ACLとの互換性を保つためには(これらのセキュリティ・レベルに移行できるようにするためにも)、次の制限に従う必要があります。
tpusradd(1)コマンドでは、これらの制限が自動的に適用されます。
以下の一連のコマンド入力は、簡単なパスワード・ファイルの構成方法を示しています。
$ # 1. Add usrname foo with wildcard cltname and no UID
$ tpaddusr foo /home/tuxapp/pwfile
$ # 2. Add usrname foo with cltname bar and UID 100
$ tpaddusr foo /home/tuxapp/pwfile bar 100
$ # 3. Add usrname foo with tpsysadm cltname and no UID
$ tpaddusr foo /home/tuxapp/pwfile tpsysadm
$ # 4. Add wildcard usrname with tpsysop cltname and no UID
$ tpaddusr '*' /home/tuxapp/pwfile tpsysop
$ # 5. Add wildcard usrname with wildcard cltname and no UID
$ tpaddusr '*' /home/tuxapp/pwfile '*'
次の表は、アプリケーションに対する様々なアクセス・リクエストを認証するのに使用するパスワード・ファイル・エントリ(上記の番号で示されます)を示します。N/Aは、パスワード・ファイルに一致するエントリが存在しないため、リクエストが許可されないことを示します。
Usrname Cltname Password Entry
------ ------- --------------
“foo” "bar" 2
"foo" "" 1
"foo" "tpsysadm" 3
"foo" "tpsysop" 4
"guest" "tpsysop" 4
"guest" "bar" 5
"guest" "tpsysadm" N/A
次に、上記で作成されたパスワード・ファイル用のAUTHSVRインスタンスのためのSERVERSセクション例を示します。
AUTHSVR SRVGRP=G SRVID=1 RESTART=Y GRACE=0 MAXGEN=2 CLOPT=”-A -- -f /home/tuxapp/pwfile”
tpdelusr(1)、tpmodusr(1)、tpusradd(1)、tpusrdel(1)、tpusrmod(1)、AUTHSVR(5)
tpdelusr - Oracle Tuxedoのパスワード・ファイルからユーザーを削除
tpdelusrusrnamefile[cltname]
このコマンドを使用すると、アプリケーション管理者は、Oracle TuxedoシステムのAUTHSVR(5)サーバーでの使用に適したUNIXシステム形式のパスワード・ファイルを管理できます。tpdelusrは、指定されたusrnameとcltnameの組合せのパスワード・ファイル・エントリを削除するために使用します(fileに/etc/passwdを指定することはできません)。cltnameは指定しなければ、デフォルトで「*」に設定されます。usrnameまたはcltname、もしくはこれらの両方に指定されたワイルドカードは、パスワード・ファイル内の対応するワイルドカード・エントリに対してのみ一致します。これらはすべての一致するエントリに対して拡張されるものではありません。
cltnameの値tpsysadmとtpsysopは、認証リクエストを処理する際にAUTHSVR(5)により特殊な処理が行われます。これらのcltname値は、パスワード・ファイル内のワイルドカードのcltname指定と照合されることはありません。
さらに、パスワード・ファイルへの追加順序に関係なく、ワイルドカードのエントリは、明示的に指定された値の後で処理されます。認証リクエストは、最初に一致するパスワード・ファイルのエントリに対してのみ認証されます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
このコマンドは、ユーザーをSECURITY USER_AUTHに構成するために使用します。SECURITY ACLまたはMANDATORY_ACLとの互換性を保つためには(これらのセキュリティ・レベルに移行できるようにするためにも)、次の制限に従う必要があります。
tpusrdel(1)コマンドでは、これらの制限が自動的に適用されます。
tpaddusr(1)、tpmodusr(1)、tpusradd(1)、tpusrdel(1)、tpusrmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpgrpadd [-gGID]grpname
tpgrpaddは、Oracle Tuxedoセキュリティ・データ・ファイルに適切なエントリを追加することにより、システム上で新しいグループ定義を作成します。この情報は、AUTHSVR(5)サーバーによるOracle Tuxedoシステムの認証や、アクセス制御に使用されます。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したOracle Tuxedoの構成を作成する必要があります。
-g GID
GIDのデフォルトは、1以上の次の使用可能な(一意の)識別子です。グループ識別子0は、「other」グループ用に予約されています。
grpname
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)のいずれかを使用してアプリケーションを構成し、TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpgrpaddを構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpaddコマンドは正しく完了すると、終了コード0で終了します。
tpgrpdel(1)、tpgrpmod(1)、tpusradd(1)、tpusrdel(1)、tpusrmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpgrpdel grpnametpgrpdelは、Oracle Tuxedoセキュリティ・データ・ファイルから対応するグループのエントリを削除することによって、システムからグループの定義を削除します。ただし、ユーザー・ファイルからグループIDは削除されません。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したOracle Tuxedoの構成を作成する必要があります。
grpname
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)のいずれかを使用してアプリケーションを構成し、TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpgrpdelを構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpdelコマンドは正しく完了すると、終了コード0で終了します。
tpgrpadd(1)、tpgrpmod(1)、tpusradd(1)、tpusrdel(1)、tpusrmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpgrpmod [-gGID] [-nname]grpname
tpgrpmodは、Oracle Tuxedoセキュリティ・データ・ファイルの適切なエントリを変更することによって、指定したグループの定義を変更します。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したOracle Tuxedoの構成を作成する必要があります。
-g GID
-n name
grpname
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)のいずれかを使用してアプリケーションを構成し、TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpgrpmodを構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpmodコマンドは正しく完了すると、終了コード0で終了します。
tpgrpadd(1)、tpgrpdel(1)、tpusradd(1)、tpusrdel(1)、tpusrmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpkill - 掲示板をロックし、Tuxedoサーバーを終了
tpkill pid [pid . . .]
tpkillは掲示板をロックし、SIGKILLシグナルを指定のTuxedoサーバーに送信します。このコマンドによって、Tuxedoサーバーの終了時に掲示板の整合性を保証できます。 tpkillは、アクティブなTuxedoドメインで実行する必要があります。このコマンドでは、1つまたは複数のTuxedoサーバー・プロセスID値を指定できます。
tpkillはTuxedoネイティブ・クライアント・アプリケーションとして機能し、環境変数TUXDIR、TUXCONFIG、APPDIRを必要とします。
tpldapconf—暗号化されたldapバインド・パスワードを生成してXAUTHSVR構成ファイルに書き込むコマンド・ユーティリティ。
tpldapconf [-f ldap_conf_file] tpldapconfは、入力されたBINDDNと暗号化されたバインド・パスワードをXAUTHSVR構成ファイルに追加します。ユーザーは、このツールを使用してLDAPバインド・パスワードを設定する必要があります。
指定された構成ファイルがない場合、デフォルトの構成ファイルとして$TUXDIR/udataobj/tpldap.xauthファイルが使用されます。
構成ファイルですでに指定されている場合、BINDDNまたはPASSWORDがコメント・アウトされ、新しいBINDDNまたはPASSWORDで置換されます。
-f ldap_conf_file
tpldapconfコマンドは、Tuxedo System/Tリリース12C以降が動作している非/WSサイト上でのみ使用できます。
tpldapconfコマンドは正しく完了すると、終了コード0で終了します。
$tpldapconf – f tpldap.xauth
tpmigldap - TuxedoユーザーおよびグループをWebLogic Serverに移行
tpmigldap [-hhostname] [-pport] [-dwls_domain] [-rwls_realm]
[-fuser_password] [-bbind_DN] [[-wldap_adm_password]|
[-c]] [-utpusr] [-gtpgrp] [-iUID-kw] [-eGID-kw]
tpmigldapを実行すると、WebLogic Serverのデフォルトのセキュリティ・データベースにTuxedoのユーザーおよびグループを追加できます。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したTuxedoの構成を作成する必要はありません。
-h hostname
-p port
-d wls_domain
-r wls_realm
-f user_password
-b bind_DN
-w ldap_adm_password
-c
-u tpusr
-g tpgrp
-i UID-kw
-e GID-kw
tpmigldapコマンドは、Tuxedo System/Tリリース8.1以降が動作している非/WSサイト上でのみ使用できます。
tpmigldapコマンドは正しく完了すると、終了コード0で終了します。
$tpmigldap -h proton -c -d wlsdomain -r wlsrealm -b cn=Admin
LAUTHSVR(5)
tpmigldif -- ユーザーおよびグループ情報をLDAPデータ交換形式(LDIF)に移行
tpmigldif [-t user|group] [-u tpusr] [-g tpgrp] -f template -o output
tpmigldifコマンドを呼び出すと、ユーザーおよびグループの情報のLDIF出力ファイルが生成されます。ユーザーまたはグループの情報(あるいはその両方)が1行ごとに処理されます。このコマンドは、GAUTHSVR(5)とともに使用します。
-t user|group
-u tpusr
-g tpgrp
-f template
-o output
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpmigldifコマンドは正しく完了すると、終了コード0で終了します。
GAUTHSVR(5)
tpmodusr - Oracle Tuxedoのシステム・パスワード・ファイルを保守
tpmodusrusrnamefile[cltname]
このコマンドを使用すると、アプリケーション管理者は、Oracle TuxedoシステムのAUTHSVR(5)サーバーでの使用に適したUNIXシステム形式のパスワード・ファイルを管理できます。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したOracle Tuxedoの構成を作成する必要があります。
tpmodusrを使用して、パスワード・ファイルfileに指定されたユーザーのパスワードを変更します(fileに/etc/passwdを指定することはできません)。ユーザーに関連付ける新しいパスワードを入力するように管理者が求められます。cltnameを指定しない場合、デフォルトは「*」になります。usrnameまたはcltname、もしくはこれらの両方に指定されたワイルドカードは、パスワード・ファイル内の対応するワイルドカード・エントリに対してのみ一致します。これらはすべての一致するエントリに対して拡張されるものではありません。
cltnameの値tpsysadmとtpsysopは、認証リクエストを処理する際にAUTHSVR(5)により特殊な処理が行われます。これらのcltname値は、パスワード・ファイル内のワイルドカードのcltname指定と照合されることはありません。
さらに、パスワード・ファイルへの追加順序に関係なく、ワイルドカードのエントリは、明示的に指定された値の後で処理されます。認証リクエストは、最初に一致するパスワード・ファイルのエントリに対してのみ認証されます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
このコマンドは、ユーザーをSECURITY USER_AUTHに構成するために使用します。SECURITY ACLまたはMANDATORY_ACLとの互換性を保つためには(これらのセキュリティ・レベルに移行できるようにするためにも)、次の制限に従う必要があります。
tpusrmod(1)コマンドでは、これらの制限が自動的に適用されます。
tpaddusr(1)、tpdelusr(1)、tpusradd(1)、tpusrdel(1)、tpusrmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpusradd - システムに新しいプリンシパルを追加します。
tpusradd [-uUID] [-gGID] [-cclient_name]usrname
tpusraddを実行すると、Oracle Tuxedoセキュリティ・データ・ファイルに新しいプリンシパル(ユーザーまたはドメイン)のエントリが追加されます。この情報は、AUTHSVR(5)サーバーでユーザー単位の認証に使用されます。
tmloadcf(1)のいずれかを使用して、アプリケーションを構成します。TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定します。 SECURITYをUSER_AUTH、ACL、またはMANDATORY_ACLに設定します。 アプリケーションがアクティブでない場合、tpusraddを構成のMASTER上で実行する必要があります。アクティブな場合は、このコマンドはどのアクティブなモードでも実行できます。
このコマンドで作成されたシステム・ファイル・エントリは1行の制限が512文字です。いくつもの(複数の)オプションに長い引数を指定するとこの制限を超えることがあります。
-u UID
UIDは、128Kより小さい10進数の正の整数でなければなりません。UIDは、アプリケーションの既存の識別子のリスト内で一意でなければなりません。UIDのデフォルトは、1以上の次の使用可能な(一意の)識別子です。
-g GID
-c client_name
:)または改行文字(¥n)を使うことはできません。このオプションを指定しないと、デフォルトはワイルドカード「*」になり、どのようなクライアント名を指定しても認証が成功します。
usrname
:)、シャープ(#)または改行文字(¥n)を使うことはできません。ユーザー名は、アプリケーションの既存の識別子のリスト内で一意でなければなりません。
管理者は、追加したユーザーに割り当てるパスワードを入力するように要求されます。
ユーザー単位の認証や管理者のパーミッションの構成の詳細は、「AUTHSVR(5)」を参照してください。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpusraddコマンドは正しく完了すると、終了コード0で終了します。
以下の一連のコマンドは、簡単なユーザー・ファイルの作成例を示します。
$ # 1. Add usrname foo with cltname bar and UID 100
$ tpusradd -u 100 -c bar foo
$ # 2. Add usrname foo with tpsysadm cltname and no UID
$ tpusradd -c tpsysadm foo
次の表は、アプリケーションへの様々なアクセス・リクエストの認証に使用されるユーザー・エントリ(上に書かれている数字で示されます)と、関連付けられるUID/GIDを示します。N/Aは、ユーザー・ファイルに一致するエントリが存在しないため、リクエストが許可されないことを示します。
Usrname Cltname Password Entry Uid Gid
------- ------- -------------- --- ---
"foo" "bar" 2 100 0
"foo" "" 1 1 0
"foo" "tpsysadm" 3 0 8192
"guest" "tpsysadm" N/A N/A N/A
次に示す例は、上で作成したユーザー・ファイルを処理するAUTHSVRのインスタンスの「SERVERS」セクション・エントリです。
AUTHSVR SRVGRP=G SRVID=1 RESTART=Y GRACE=0 MAXGEN=2 CLOPT=”-A”
tpgrpadd(1)、tpgrpdel(1)、tpgrpmod(1)、tpusrdel(1)、tpusrmod(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpusrdelusrname
tpusrdelコマンドは、システムからプリンシパル(ユーザーまたはドメイン名)定義を削除します。指定したユーザーの定義を削除します。usrnameに、削除する既存のユーザー名を指定します。
tmloadcf(1)のいずれかを使用して、アプリケーションを構成します。TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定します。 SECURITYをUSER_AUTH、ACL、またはMANDATORY_ACLに設定します。アプリケーションがアクティブでない場合、tpusraddは構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpusrdelコマンドは正しく完了すると、終了コード0で終了します。
tpgrpadd(1)、tpgrpdel(1)、tpgrpmod(1)、tpusradd(1)、tpusrmod(1)
tpusrmod [-uUID] [-gGID] [-cclient_name] [-lnew_login] [-p]usrname
tpusrmodを実行すると、Oracle Tuxedoセキュリティ・データ・ファイルのプリンシパル(ユーザーまたはドメイン)のエントリが変更されます。この情報は、AUTHSVR(5)サーバーによるOracle Tuxedoシステム認証に使用されます。
tmloadcf(1)のいずれかを使用して、アプリケーションを構成します。TUXCONFIGファイルを指すようにTUXCONFIG環境変数を設定します。 SECURITYをUSER_AUTH、ACL、またはMANDATORY_ACLに設定します。アプリケーションがアクティブでない場合、tpusraddは構成のMASTER上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドで作成されたシステム・ファイル・エントリは1行の制限が512文字です。いくつもの(複数の)オプションに長い引数を指定するとこの制限を超えることがあります。
-u UID
-g GID
-c client_name
-l new_login
:)、シャープ(#)または改行文字(¥n)を使うことはできません。ユーザー名は、アプリケーションの既存の識別子のリスト内で一意でなければなりません。また、このオプションを指定すると、-pオプションによってパスワードを再設定することになります。
-p
usrname
ユーザー単位の認証や管理者のパーミッションの構成の詳細は、「AUTHSVR(5)」を参照してください。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpusrmodコマンドは正しく完了すると、終了コード0で終了します。
tpgrpadd(1)、tpgrpdel(1)、tpgrpmod(1)、tpusradd(1)、tpusrdel(1)、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tuxadm - Oracle Tuxedo管理コンソールCGIゲートウェイ
http://cgi-bin/tuxadm[TUXDIR=tuxedo_directory | INIFILE=initialization_file][other_parameters] tuxadmは、ブラウザから管理コンソールを初期化するために使用するCGI (Common Gateway Interface)プロセスです。「形式」に示されているように、このプログラムはWebブラウザからアクセスする場所(つまりURL)を表すためだけに使用でき、通常、標準コマンドライン・プロンプトからは実行されません。ほかのCGIプログラムと同様に、tuxadmはQUERY_STRING環境変数を使用してその引数一覧を解析します。
tuxadmは引数を解析し、管理コンソールの初期化ファイルを見つけます。TUXDIRパラメータが存在する場合、初期化ファイルはデフォルトで$TUXDIR/udataobj/webgui/webgui.iniに設定されます。INIFILEオプションが存在する場合は、パラメータの値は初期化ファイルへのフルパスになります。その他のパラメータが存在する場合もあります。
初期化ファイルの値をオーバーライドするために追加のパラメータを使用することもできます。初期化ファイルのパラメータの完全なリストは、wlistenのリファレンス・ページを参照してください。実際の初期化ファイルで許される値と一貫性のあるオーバーライドがされないかぎり、tuxadmプロセスによってENCRYPTBITSパラメータがオーバーライドされることはありません。
tuxadmの通常の処理は、管理コンソール・アプレットを起動するWebページを構築するHTMLコマンドを標準出力に生成することです。Webページの一般的なフォーマットは、初期化ファイルのTEMPLATEパラメータによって制御されます。これには、任意のHTMLコマンドに加えて、管理コンソールのアプレットが表示される場所には1行に特殊な文字列%APPLET%のみが含まれます。初期化ファイルの他のパラメータ(CODEBASE、WIDTH、HEIGHTなど)を使用して、管理コンソールのインスタンスを生成するために必要なすべてのパラメータを含む正しいAPPLETタグが生成されます。
| 注意: | Oracle Tuxedoでは、管理コンソールのセキュリティの脆弱性に関するいくつか問題を解決しています。このリリースで解決された脆弱性の詳細は、「セキュリティ・アドバイザリ」を参照してください。 |
| 注意: | 無効な入力が行われると、その無効の正確な内容を報告するメッセージのかわりに、管理コンソールからTUXDIRおよびINIFILEの設定を確認するよう求める汎用的なエラー・メッセージが戻されるようになりました。この変更により、「情報の開示」や「クロスサイト・スクリプティング」といったセキュリティ・アタックを撃退できます。 |
| 注意: | 管理コンソールでは、アクセスをより困難にするため、URLで指定するパラメータをTUXDIRのみに限定する設定が可能になりました。他のパラメータ(たとえばINIFILE)をURLに指定すると、アクセスが失敗します。 |
| 注意: | この設定を有効にするには、環境変数TM_CONSOLE_DISALLOW_URLARGSをyに設定します。デフォルト構成では、この設定は無効になっています。 |
tuxadmは、障害が発生した場合、エラー・メッセージを含むHTMLコードを生成します。CGIプログラムが動作する仕組みからすると、tuxadmからいかなる種類のエラー・コードが戻される理由はありません。
tuxwsvr - Oracle Tuxedo管理コンソールとともに使用するミニWebサーバー。
tuxwsvr-lnlsaddr[-ddevice] [-Llogfile] [-F]-iinitialization_file
tuxwsvrはWorld Wide Webサーバー・プロセスです。これを使用すれば、顧客はOracle Tuxedo管理コンソール・プロセスが動作するマシン上に商用Webサーバーまたはパブリック・ドメインWebサーバーを設置していなくても、Oracle Tuxedo管理コンソール・プロセスをサポートすることができます。tuxwsvrは、特にその他の指定がないかぎり、起動後はバックグラウンドで動作し、マシンが停止するか、オペレーティング・システム・コマンドを使用してtuxwsvrプロセスが強制終了されるまで実行を継続します。
tuxwsvrは、Oracle Tuxedo管理コンソールのサポートに必要なすべての機能を含んでいますが、事前分岐プロセス、サーバー側のHTMLインクルード(.shtmlファイル)、デフォルトのディレクトリ索引、https接続など、商用Webサーバー用の多数の機能は含まれていません。ただし、Oracle Tuxedo管理コンソールは独自の暗号化プロトコルを実装しているため、https接続がなくても安全なモードで実行することができます。パフォーマンス上の理由から、汎用的なWebサーバーでは、受信されたリクエストに対するDNS逆ルックアップは実行されません。
tuxwsvrで使用されるコマンドライン・オプションには、以下のものがあります。
-l nlsaddr
hostname:port_number" #.#.#.#:port_number" 1つ目の形式では、tuxwsvrがローカル名を解決する手法(通常はDNS)を使用してhostnameのアドレスを検索します。hostnameにはローカル・マシン名を指定し、ローカル名解決の機能でhostnameをローカル・マシンのアドレスに明確に解決する必要があります。 2つ目の形式は、ドットで区切られた10進数(#.#.#.#)です。ドット区切りの10進数形式では、各#には0 - 255の数字を使用します。このドット区切りの10進数は、ローカル・マシンのIPアドレスを表します。 どちらの形式の場合も、port_numberにはtlistenプロセスが接続リクエストの受信をリスニングするTCPポート番号を指定します。port_numberには、0 - 65535までの数字または名前を指定します。port_numberには、ローカル・マシンのネットワーク・サービス・データベース内に存在する名前を指定する必要があります。アドレスは、先頭に「 0x 」をつけ、16進形式で指定することもできます。先頭の0xに続く文字として、0 - 9までの数字か、またはAからFまでの文字(大文字と小文字は区別しない)を指定できます。16進数の形式は、IPX/SPXやTCP/IPのような任意のバイナリ・ネットワーク・アドレスに使うことができます。アドレスはまた、任意の文字列として指定することもできます。たとえば、STARLANネットワークでは文字列アドレスが使用されます。
-d device
-L logfile
tuxwsvrがWebリクエストとエラー・メッセージのログ記録用に使用するファイル名の接頭辞。実際のログ・ファイルの名前は、月、日、年を表す7文字の文字列.mmddyyをこの接頭辞に追加したものになります。このオプションを指定しない場合、Webサーバーのログ・ファイルの接頭辞はカレント・ディレクトリのWBです。tuxwsvrプロセスを実行する各日の最初のログ・メッセージは新規ファイルに書き込まれます。
-F
tuxwsvrをバックグラウンドに配置せずに、フォアグラウンドで実行することを指定します。このオプションは主にテストとデバッグで役立ちます。(tuxwsvrプロセスは、特に指定されない場合は自動的にバックグラウンドで実行します。コマンドラインで後にアンパサンド(&)を付ける必要はありません。)
-i initialization_file
初期化ファイルには、Webサーバーで必要なディレクトリへのマッピングが含まれます。コメント行が含まれることもあります。(コメント行は先頭に#記号が付いています。)コメント行以外の各行には、空白で区切られた3つのフィールドが含まれます。
初期化ファイルでコメント行以外の最後の行には、接頭辞「/」が必要です。これよりも前の行に接頭辞「/」が付いていると、警告メッセージが生成されます。
初期化ファイルは、起動時に1回読み取られます。したがって、このファイルに何らかの変更を加えた場合は、変更を有効にする前にtuxwsvrを停止して再起動する必要があります。
CGI /cgi-bin /home/tuxedo/udataobj/webgui/cgi-bin
CGI /webgui /home/tuxedo/udataobj/webgui/cgi-bin
HTML /java /home/tuxedo/udataobj/webgui/java
HTML /doc /home/tuxedo/doc
HTML / /home/tuxedo/udataobj/webgui
次のようなマシンのポート8080でWebサーバーが稼働しているとします。
tuxmach.acme.com
http://tuxmach.acme.com:8080/cgi-bin/tuxadm?TUXDIR=/home/tuxedo
http://tuxmach.acme.com:8080/webgui/tuxadm?TUXDIR=/home/tuxedo
初期化ファイルのCGIディレクトリの値として$TUXDIR/binを指定することはお薦めしません。こうすると、Webユーザーが任意のOracle Tuxedo実行可能ファイルを呼び出せるようになるためです。(ただし、そのようなユーザーがtuxadm以外の実行可能ファイルの出力を見ることはできません。このような他の実行可能ファイルはCGIプログラムとして書き込まれないためです。)
また、前の例では、最初のHTML行は、2つ目のHTML行でサブディレクトリの/javaを同じパスにマッピングしているため重複しています。この最初の行を含める理由は、ユーザーによってはHTMLドキュメントを格納している場所とは別の場所にJavaクラス・ファイルを配置することがあるためです。
HTML /tuxedo/webgui D:\\tuxedo\\htmldocs
CGI /cgi-bin C:\\cgi-bin
HTML /java D:\\tuxedo\\udataobj\\webgui\\java
HTML / D:\\tuxedo\\udataobj\\webgui
マシンntsvr1のポート80でWebサーバーが稼働しているとします。次のURLを入力します。
http://ntsvr1/tuxedo/webgui/page1.html
D:\\tuxedo\\htmldocs\\page1.html
おそらくこのファイルは、管理コンソールを起動する、顧客によって作成されたページです。
tuxwsvrプロセスを正常に終了する唯一の方法は、プロセスにSIGTERMシグナルを送ることです。
tuxwsvrプロセスは、商用Webサーバーを設置していない顧客向けに、Oracle Tuxedo管理GUI用のWebサーバーとして提供されています。UNIXシステムの場合は、次の形式のコマンドラインをUNIXの初期化スクリプトに追加して、Webサーバーが自動的に起動するようにすることをお薦めします。
TUXDIR=tuxdir_path_name$TUXDIR/bin/tuxwsvr -lnlsaddr-iinitialization_file
tuxdir_path_nameは、Oracle Tuxedoシステム・ソフトウェアの場所へのフルパス名を表します。nlsaddrは、このtuxwsvrプロセスによって使用される、ネットワーク上のアドレスです。
tuxwsvrプロセスを起動する別の方法として、上記の推奨コマンドラインを使用して手動で起動する方法があります。また、cronジョブを使用して定期的(毎日またはそれより頻繁)にtuxwsvrプロセスを起動する方法もあります。同じネットワーク・アドレスを使用してtuxwsvrコマンドを重複して呼び出すと、コマンドは自動的に終了し、状況に応じてメッセージが記録されます。
tuxwsvrプロセスに対してアプリケーション管理者が指定するネットワーク・アドレスの制限は、指定したネットワークの一意のアドレスであることだけです。STARLANネットワークの場合は、通常、推奨アドレスuname.tuxwsvrが一意の名前になります。TCP/IPの場合は、アドレスは、アプリケーション管理者が選択した一意のポートと、ローカル・マシンのノード識別子を組み合せたものです(0x0002ppppnnnnnnnn)。特定のマシンの一意のポート値(pppp)は、そのネットワークとマシンの組合せのユーザー間で調整する必要があります。多くの場合、数値が低い方のポート番号はシステム関連のサービスで使用されるため、高いポート番号をお薦めします。ノード・フィールドの適切な値(nnnnnnnn)は、次の手順を実行してから、/etc/hostsファイルで確認できます。
たとえば、tuxwsvrを実行しているローカル・マシンでTCP/IPアドレス指定機能を使用している場合を考えます。マシン名はbackus.company.comで、アドレスは155.2.193.18です。さらに、tuxwsvrはポート番号2334でリクエストを受け取るとします。また、このポート番号2334がbankapp-tuxwsvrという名前のネットワーク・サービス・データベースに追加されているとします。-lオプションで指定するアドレスは、次に示す方法で表現できます。
最後に示す行は、アドレスを16進数形式で表したものです。0002はTCP/IPアドレスの先頭部分、091Eはポート番号2334を16進数に変換したもの、および9B02C112はIPアドレス155.2.193.18を16進数に変換したものです。(最後の変換部分については、155は9B、2は02のように変換されています。)
STARLANネットワークの場合は、通常、推奨アドレスuname.tuxwsvrがユニークな名前になります。
txrpt - Oracle Tuxedo ATMIシステム・サーバー/サービス・レポート・プログラム
txrpt[-t] [-nnames] [-dmm/dd] [-stime] [-etime]
txrptコマンドを実行すると、Oracle Tuxedo ATMIシステム・サーバーの標準エラー出力の分析が行われ、そのサーバーでサービス処理にかかる時間のサマリーが生成されます。レポートには、期間内の各サービスのディスパッチ回数と平均処理時間(秒)が表示されます。txrptは、標準入力または入力用にリダイレクトされた標準エラー・ファイルからの入力を読み込みます。標準エラー・ファイルは、servopts(5)の選択肢から-rオプションを使用して起動されたサーバーによって作成されます。-e servoptsオプションを使用すると、ファイル名を指定できます。複数のファイルを、txrpt用に1つの入力ストリームに連結することができます。txrptコマンドには、以下のオプションがあります。
-t
-n names
-d mm/dd
-s time
-e time
txrptによって生成されるレポートは、1日のみを対象とします。入力ファイルに複数の日からのレコードが含まれている場合、-dオプションがレポート対象の日付を制御します。
サーバーがtxrptを介して解析統計情報を収集する場合、ULOGDEBUG変数を"y"には設定しないようにしてください。ファイル内のデバッグ・メッセージをtxrptが間違って解釈してしまいます。
txrpt -nSVC1 -d10/15 -s11:01 -e14:18 newr
START AFTER: Thu Oct 15 11:01:00 1992
END BEFORE: Thu Oct 15 14:18:00 1992
SERVICE SUMMARY REPORT
SVCNAME 11a-12n 13p-14p 14p-15p TOTALS
Num/Avg Num/Avg Num/Avg Num/Avg
------ -------- -------- -------- -------
SVC1 2/0.25 3/0.25 1/0.96 6/0.37
------- ------- ------- ------- -------
TOTALS 2/0.25 3/0.25 1/0.96 6/0.37
上記の例は、SVC1が指定された時間内に全部で6回リクエストされたことを示しています。リクエストを処理する時間は、平均0.37秒でした。
ud、wud - Oracle Tuxedo ATMIドライバ・プログラム
ud [-p] [-ddelay] [-eerror_limit] [-r] [-ssleeptime] [-b timeout] [-ttimeout] [-n] [-u {n | u | j}] [-Uusrname] [-Ccltname] [-Sbuffersize]
ud32 [options]
wud [options]
wud32 [options]
udは、Fextread()を使用して標準入力から入力パケットを読み取ります(詳細は、Fextread、 Fextread32(3fml)に関する項を参照してください)。パケットは、サービス名として識別されるフィールドを含む必要があります。入力パケットはFMLフィールド化バッファ(FBFR)に転送され、サービスに送信されます。FBFRを受信するサービスが、レコードをデータベースに追加するサービスの場合、udにより、Oracle Tuxedo ATMIシステムが認識しているデータベースにバルク・フィールド化データを入力する方法が提供されます。
入力パケットの行の先頭を示すフラグ(「入力形式」を参照)を使用することにより、udをOracle Tuxedo ATMIサービスのテストに利用できます。
デフォルトでは、FBFRをサービスに送信した後、udはFBFRが戻されることを想定します。送信および応答されたFBFRはudの標準出力に出力されます。エラー・メッセージは標準エラーに出力されます。
ud32は、FBFR32タイプのFML32バッファを使用します。
wudおよびwud32はワークステーション・ライブラリを利用して構築されたバージョンのudとud32です。ワークステーションだけをサポートしているサイトでは、wudおよびwud32コマンドだけが提供されています。
-p
-d
delayには最大の遅延時間(秒)を指定します(これを超えるとタイムアウトします)。タイムアウトが発生した場合は、エラー・メッセージがstderrに出力されます。udが前のリクエストの応答メッセージを遅延時間内に受け取ると、それらのメッセージは遅延RTNパケットと示されます。つまり、遅延時間内に複数の応答パケットを受信できます。-dオプションは、DOSオペレーティング・システムのwudでは使用できません。 | 注意: | このオプションは、wudコマンドおよびwud32コマンドでは使用できません。 |
-e error_limit
-r
-s sleeptime
-b timeout
udは、非トランザクション・モードでブロッキング・リクエストを送信する必要があります。timeoutには、ブロッキング・リクエストがタイムアウトするまでの秒数を指定します。-bオプションは、-tオプションや-dオプションと組み合せて使用することはできません。
-t timeout
udは、トランザクション・モードでリクエストを送信する必要があります。timeoutには、トランザクションがタイムアウトするまでの秒数を指定します。-d delayおよび-r (応答なし)オプションは、-tオプションと組み合せて使用できません。
-u {n | u | j}
nオプションは、バッファを初期化しなおすことを表します(新しいバッファとして扱います)。uオプションは、Fupdate()を使用してバッファを応答バッファで更新することを指定します。jオプションは、Fojoin()を使用して応答バッファをリクエスト・バッファに結合することを指定します。詳細は、「Fupdate、Fupdate32(3fml)」および「Fojoin、Fojoin32(3fml)」を参照してください。
-n
-U usrname
-C cltname
-S buffersize
-d delayおよび-r オプションは、相互に排他的です。
入力パケットは、次のようにフォーマットされた行で構成されます。
flagはオプションです。flagを指定しなかった場合には、fldnameで指定され、値fldvalを持つフィールドの新しいオカレンスがフィールド化バッファに追加されます。flagを指定する場合は、次のいずれかとします。
+
-
=
#
fldnameがリテラル値SRVCNMであると、fldvalはFBFRを受け取るサービスの名前となります。
長いフィールド値は、継続行の先頭にタブを挿入することにより、次の行にまたがって入力できます。
改行文字だけで構成される行は入力の終わりを示し、そのパケットをudに送ります。
入力パケットが文字nと改行文字で構成される行で始まる場合、FBFRは初期化しなおされます。FBFRの再初期化は、コマンドラインに-unオプションを使用することですべてのパケットに指定することができます。
表示できない文字を入力パケットに入力するには、エスケープ規則を使用して、その後に必要な文字を2文字の16進表現で入力します。(詳細は、UNIXリファレンス・マニュアルのascii(5)の項を参照してください。)シェルからエスケープを保護するためにもう1つバックスラッシュが必要です。たとえば、空白は\20として入力データに入力できます。udでは、このフォーマットのすべての入力が認識されますが、最も役立つのは表示できない文字の場合です。
最初、udはフィールド化バッファを標準入力から読み取り、サービスに送信します。このサービスの名前は、fldnameがSRVCNMと等しい行のfldvalに指定されています。-rオプションが選択されないかぎり、udは応答フィールド化バッファを待機します。応答を取得した後で、udは標準入力からもう1つのフィールド化バッファを読み取ります。そのとき、udは戻されたバッファを現在のバッファとして保持します。これは、2つ目のフィールド化バッファを構成する標準入力の行が、戻されたバッファに追加されるということです。つまり、デフォルトの処理では、udが現在のバッファ(一連の入力行によって追加された内容)を維持します。セットは空白行で区切られます。現在のバッファを破棄(つまり、FBFR構造体の再初期化)するように、udに指定することができます。これには、-unオプションをコマンドラインに指定するか、文字nだけを含む行を入力セットの最初の行に含めます。応答バッファの内容をリクエスト・バッファにマージするように、udに指定することもできます。これには、-uuオプション(Fupdateが使用される)または-ujオプション(Fojoinが使用される)を指定します。
udをセキュリティ付きアプリケーションで実行する場合は、アプリケーション・パスワードを指定しないとアプリケーションにアクセスできません。標準入力が端末である場合、udは、応答のエコーをオフの状態でユーザーにパスワードの入力を求めます。ただし、udは標準入力のバルク入力を受け入れるため、通常、標準入力は端末ではなくファイルです。この場合、パスワードは環境変数APP_PWから取得されます。アプリケーション・パスワードが必要な場合に、この環境変数が指定されていないと、udは異常終了します。
これらのコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
FLDTBLDIRおよびFIELDTBLSを設定してエクスポートする必要があります。FLDTBLDIRのディレクトリのリストには、$TUXDIR/udataobjが含まれていなければなりません。FIELDTBLSには、フィールド表の1つとしてUsysfldsが含まれていなければなりません。
標準入力が端末でない場合、保護アプリケーションではAPP_PWをアプリケーション・パスワードに設定しなければなりません。TPIDATAは、標準入力が端末でない場合、認証サーバーで保護アプリケーションにアプリケーションを結合するのに必要なそのアプリケーション特定のデータに設定しなければなりません。
また、ワークステーションからアクセスする場合には、WSNADDR、WSDEVICEおよびWSTYPE (オプション)を設定しなければなりません。クライアント・プロセス用に環境変数を設定する方法についての詳細は、「compilation(5)」を参照してください。
udは、クライアント・プロセスになれないとき、必要なFBFRを作成できないとき、あるいはUNIXシステムのエラーを検出したときには異常終了します。また、入力パケットのストリーム処理時に25個を超えるエラーを検出すると異常終了します。これらのエラーとしては、構文エラー、サービス名の欠落、トランザクションの開始またはコミットのエラー、入力FBFR送信時あるいは応答FBFR受信時のタイムアウトまたはエラーなどがあります。
入力ストリームの最後のフィールド化バッファは空白行で終えてください。
$ud <EOF>
SRVCNM BUY
CLIENT J. Jones
ADDR 21 Valley Road
STOCK AAA
SHARES 100
<CR>
+SRVCNM SELL
+STOCK XXX
+SHARES 300
STOCK YYY
SHARES 150
<CR>
n
SRVCNM BUY
CLIENT T. Smith
ADDR 1 Main Street
STOCK BBB
SHARES 175
<CR>
+SRVCNM SELL
+STOCK ZZZ
+SHARES 100
<CR>
EOF
$
この例では、最初にudは、フィールド化バッファをサービスBUYに送信します。このとき、CLIENTフィールドをJ.Jones、ADDRフィールドを21 Valley Road、STOCKフィールドをAAA、SHARESフィールドを100に設定します。
フィールド化バッファがBUYサービスから戻されると、udは、次の行セットを使用してSRVCNMをSELLに、STOCKをXXXに、SHARESを300に変更します。また、STOCKフィールドの追加オカレンス値をYYYで、SHARESフィールドの追加オカレンス値を150で作成します。このフィールド化バッファはこの後、SELLサービス(SRVCNMフィールドの新しい値)に送られます。
SELLが応答フィールド化バッファを送信して戻すと、udは、文字nのみの行から始まる一連の行を廃棄します。次に、udは、SRVCNMをBUY、CLIENTをT. Smithのように設定して、まったく新しい入力パケットの作成を開始します。
Fextread、Fextread32(3fml)、compilation(5)
UNIXシステムのリファレンス・マニュアルのascii(5)
『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
『Oracle Tuxedo FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
viewc、viewc32 - Oracle Tuxedo ATMI VIEWを生成するVIEWコンパイラ
viewc [-n] [-dviewdir] [-C]viewfile[viewfile. . . ]
viewc32 [-n] [-dviewdir] [-C]viewfile[viewfile. . . ][-s][-S]
viewcはVIEWコンパイラ・プログラムです。ソースVIEWファイルを取り込み、以下のファイルを作成します。
viewc32は、32ビットのFMLで使用します。環境変数FIELDTBLS32およびFLDTBLDIR32を使用します。
viewfileは、ソース・ビュー記述を収めているファイルです。複数のviewfileをviewcコマンドラインに指定できます。ただし、同じVIEW名が複数のviewfileに使用されていない場合にかぎります。
デフォルトでは、viewfileのすべてのビューがコンパイルされ、複数のファイルが作成されます。ビュー・オブジェクト・ファイル(接尾辞.V)とCヘッダー・ファイル(接尾辞.h)です。代替ディレクトリが-dオプションで指定されないかぎり、オブジェクト・ファイルの名前はカレント・ディレクトリのviewfile.Vです。Cヘッダー・ファイルは、カレント・ディレクトリ内に作成されます。
-Cオプションを指定すると、viewfileで定義しているVIEW 1つにつき1つのCOBOLコピー・ファイルが作成されます。これらのコピー・ファイルはカレント・ディレクトリに作成されます。
viewcによるコンパイル時には、コンパイラによって、viewfileに指定されているフィールド識別子とフィールド名が、フィールド表ファイルから得られる情報と照合され、後で使用するためにマッピング情報がオブジェクト・ファイルに格納されます。したがって、環境変数FIELDTBLSおよびFLDTBLDIRを設定およびエクスポートして、関連するフィールド表ファイルを指すようにすることが重要です。FIELDTBLSおよびFLDTBLDIRの詳細は、『Oracle Tuxedo FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』を参照してください。<Default ?Font>および『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
viewcコンパイラがフィールド名とそのフィールド識別子の対応をとれなかった場合(環境変数が正しく設定されていなかったり、フィールド表ファイルにフィールド名が含まれていなかった場合)、警告メッセージ「Field not found」が表示されます。
-nオプションを使用すれば、FMLバッファにマッピングされていないC構造体に対応するVIEW記述ファイルを作成することができます。『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>は、このような独立したビュー記述ファイルの作成および使用方法について説明しています。
-n
-d viewdir
-C
s
-Cオプションとともに使用されます。 | 注意: | Windowsプラットフォームでは大文字/小文字が区別されるため、このオプションはWindowsプラットフォームでは意味がありません。 |
-S
CC
viewcは通常、デフォルトのC言語コンパイル・コマンドを使用してクライアント実行可能コードを生成します。デフォルトのC言語コンパイル・コマンドは、サポートされているオペレーティング・システムごとに定義されており、UNIXシステムの場合はcc(1)です。代替コンパイラを指定できるようにするため、viewcは環境変数CCが存在するかどうかを調べます。CCがviewcの環境に存在しない場合、またはこの環境変数が文字列""である場合、viewcはデフォルトのC言語コンパイラを使用します。環境内にCCが存在する場合、実行されるコンパイラの名前がCCの値となります。
CFLAGS
CFLAGSは、コンパイラ・コマンドラインの一部として引き渡される引数のセットを指定するときに使用します。CFLAGSがviewcの環境に存在しない場合、または文字列""である場合、buildclientはコンパイラ・コマンドライン引数を追加しません。
出力VIEWファイルは、マシンおよびコンパイラに依存するバイナリ・ファイルです。あるマシン上で特定のコンパイラを使用してビューを生成した場合、そのVIEWファイルを別のタイプのマシン上で使用することはできません。また、パディングやパッキングなど、生成される構造体オフセットが異なるコンパイラで使用することもできません。
-c { m | b }
mです。Microsoft Cコンパイラがこのオプションの省略値です。-cオプションはWindowsでのみサポートされます。
-1 filename
filename.batという名前を付けます。このファイルが作られた後、パス2を実行する前にそれを実行する必要があります。パス1とパス2を使用すると、コンパイルできるVIEWのサイズを拡大できます。
-2 filename
『Oracle Tuxedo ATMI FML関数リファレンス』のFML関数の概要に関する項<Default ?Font>
『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
viewcs、viewcs32 — 顧客定義のVIEWファイルであるTuxedo .NETワークステーション・クライアント・アプリケーション用のC#ソース・ファイルと.dllライブラリ・ファイルを生成
viewcs [binarydllfile] binaryviewfile [binaryviewfile...]
viewcs32 [binarydllfile] binaryviewfile [binaryviewfile...]
viewcsは、カスタマ定義VIEWファイルのC#ソースと.dllライブラリ・ファイルを生成するために使用されるユーティリティです。viewc出力ファイル(ファイル名の拡張子がDOS/Windowsでは.VV、他のプラットフォームでは拡張子が.VのバイナリVIEWファイル)を入力として、対応するC#ソースおよび.dllライブラリ・ファイル(カスタマ定義ビュー構造を表現するクラスを含む)を生成します。バイナリ.dllファイルが提供されない場合、dllライブラリ・ファイルは生成されません。
viewcやviewc32とは異なり、viewcsおよびviewcs32は環境変数に依存しません。必要とする唯一の入力は、コマンドラインで指定するバイナリのVIEWファイルです。
『Tuxedo .NETワークステーション・クライアントの使用』のTuxedo .NETワークステーション・クライアント・アプリケーションの作成に関する項<Default ?Font>
viewdis、viewdis32 - バイナリVIEWファイル対応のVIEW逆アセンブラ
viewdisviewobjfile . . . viewdis32 viewobjfile . . .
viewdisはVIEWコンパイラが生成したVIEWオブジェクト・ファイルを逆アセンブルし、VIEWファイル形式でVIEW情報を表示します。また、対応する構造体メンバーのオフセットも表示します。
1つまたは複数のviewobjfiles (接尾辞は.V)をコマンドラインに指定できます。デフォルトの設定では、カレント・ディレクトリのviewobjfileが逆アセンブルされます。これが見つからないと、エラー・メッセージが表示されます。
viewobjfileにある情報は、フィールド表ファイルの情報を使用してVIEWファイルにあるフィールド識別子とフィールド名の整合により取得されたため、環境変数FIELDTBLSおよびFLDTBLDIRの設定およびエクスポートを行うことが重要になります。
viewdisの出力は元のVIEW記述と同じように見え、主にコンパイル後のオブジェクトVIEW記述が正しいかどうかを検証するときに使用します。
viewdis32は、32ビットのFMLで使用します。環境変数FIELDTBLS32およびFLDTBLDIR32を使用します。
『Oracle Tuxedo FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
wlisten - Oracle Tuxedo管理コンソール・リスナー・プロセス
wlisten [-iinitialization_file]
wlistenは、管理コンソールのアプレットからの着信接続を受信して、管理コンソールのゲートウェイ・プロセス(wgated)を開始するリスナー・プロセスです。すべてのwlistenオプションは、-iオプションで指定される初期設定ファイルから取得されます。-iオプションが指定されていない場合は、$TUXDIR/udataobj/webgui/webgui.iniがデフォルトの初期化ファイルになります。初期化ファイルで使用できる形式とパラメータについては後で説明します。デフォルトの初期化ファイルは、システムのインストール時に生成されます。
wlistenは、初期化ファイルにFOREGROUND=Yパラメータが含まれていないかぎり、起動後はバックグラウンドで動作し、マシンが停止されるか、wlistenプロセスがオペレーティング・システム・コマンドによって強制終了されるまで実行を継続します。
wlistenでは、次のコマンドライン・オプションを使用します。
-i initialization_file
initialization_fileを、wlistenで使用するように指定します。初期化ファイルの形式については後で説明します。初期化ファイルのパラメータのほとんどは、Oracle Tuxedoシステムのインストール時に妥当な値に設定されます。このオプションがコマンドラインに指定されていない場合、デフォルトの初期化ファイルの場所は$TUXDIR/udataobj/webgui/webgui.iniになります。
-iオプションで指定する初期化ファイルにはパラメータが含まれており、アプレット、wlistenプロセス、およびゲートウェイ・プロセスはこれらのパラメータを使用して、管理コンソールの接続と以降の操作に必要な構成情報を調整することができます。
初期化ファイルのパラメータのほとんどは、Oracle Tuxedoシステムのインストール時に構成されます。また、管理コンソールの実行中、ユーザー入力に応じて、他のパラメータが自動的に追加されることもあります。たとえば、ドメインに接続すると、コンソールはそのドメインのリストを初期化ファイルに追加します。次回からは、プルダウン式「Domain」メニューを使用すると、そのドメインがリストされるようになります。このため、初期化ファイルを明示的に編集していないにもかかわらず、ファイルに行が追加されたり変更されることがあります。
初期化ファイルは、コメント行(空白行または#文字が先頭にある行)とキーワード行から構成されます。キーワード行の形式はkeyword=valueです。次に、有効なキーワードとその値を示します。
TUXDIR=directory
-iオプションがwlistenに指定されていない場合は、TUXDIRを環境内で設定する必要があり、通常は初期化ファイルに指定されている値に設定します。
NADDR=network_address
wlistenで使用するネットワーク・アドレスを指定します。このパラメータにはデフォルト値はなく、値を割り当てる必要があります。IPv4ネットワーク・アドレスの形式は、tlistenおよびその他のOracle Tuxedoコマンドで使用する形式と同じです。詳細は、後述の「ネットワーク・アドレス」を参照してください。| 注意: | wlistenおよびWebGUIは、IPv6をサポートしません。 |
DEVICE=device
wlistenで使用するネットワーク・デバイスを指定します。この変数はオプションです。バージョン6.4以前のリリースでは、ネットワーク・デバイスが選択されていないことを示す空文字列がデフォルト値に設定されています。Microsoft Windowsなどの一部のシステムでは、この設定が適切です。ここでは、tlistenの-dオプションに使用する値と同じ値を使用します。UNIXシステムによっては、 /dev/tcpを指定する場合もあります。この値を割り当てるかどうかは、オペレーティング・システムによって異なります。
FOREGROUND=[Y | N]
wlistenをフォアグラウンドで実行する必要があるかどうかを指定します。デフォルト値はNで、wlistenは自動的にバックグラウンドで実行されます。このオプションは、テストとデバッグのみを目的として使用します。
WIDTH=pixelsおよびHEIGHT=pixels
FRAMEWIDTH=pixelsとFRAMEHEIGHT=pixels
ENCRYPTBITS=[0 | 40]
0で、暗号化を使用しません。40オプションを選択すると、40ビットRC4暗号化が使用されます。この場合、tlistenパスワード・ファイルが必要で、暗号化キーを交換するために認証を行う必要があります。
DOCBASE=document_root
CODEBASE=applet_root
SNAPDIR=snapshot_directory
SNAPDIRの値は、URLではなくフルパス名です。このパラメータはOracle Tuxedoシステムのインストール時に設定され、通常は以後この値を変更しません。このパラメータにデフォルト値はなく、初期化ファイルで値を割り当てる必要があります。
SNAPBASE=http_root
SNAPBASEの値は、フルパス名ではなくURLです。このパラメータはOracle Tuxedoシステムのインストール時に設定され、通常は以後この値を変更しません。このパラメータにデフォルト値はなく、初期化ファイルで値を割り当てる必要があります。
TEMPLATE=template_path
%APPLET%を単独で含める必要があります。ファイルの残りの部分は、通常は命令、ロゴまたは管理コンソールの管理者が使用するその他の情報を含む、標準のHTML形式ファイルでなければなりません。デフォルトのパス名は$TUXDIR/udataobj/webgui/webgui.htmlです。
INIFILE=init_file
NADDRおよびCODEBASEパラメータと、様々なディレクトリ・パラメータを、同一の値に設定して、ENCRYPTBITSパラメータの値が2つのファイル間で矛盾しないようにする必要があります。このように、2つのファイルが使用されるアプリケーションでは、1つのファイルのみが使用されるアプリケーションよりもエラーが発生しやすくなります。
FLDTBLDIR32=field_table_dirとFIELDTBLS32=field_tables
wlistenプロセスを正常に終了する唯一の方法は、プロセスにSIGTERMシグナルを送ることです。
$TUXDIR/bin/wlisten -iinitialization_file
wlistenプロセスを手動で開始するには、システム・プロンプトの後に上記のコマンドラインを入力します。APPDIR/.adm/tlisten.pw TUXDIR/udataobj/tlisten.pwたとえば、wlistenを実行しているローカル・マシンでTCP/IPアドレス指定機能を使用している場合を考えます。マシン名はbackus.company.comで、アドレスは155.2.193.18です。
また、wlistenはポート番号2334でリクエストを受け取るとします。
| 注意: | 一部のポート番号は、お使いのシステムで使用されるトランスポート・プロトコル(TCP/IPなど)のために予約されている場合があります。予約されているポート番号を確認するには、トランスポート・プロトコルのドキュメントを調べてください。 |
また、このポート番号2334がbankapp-nlsaddrという名前のネットワーク・サービス・データベースに追加されているとします。-lオプションで指定するアドレスは、次に示す方法で表現できます。
最後に示す行は、アドレスを16進数形式で表したものです。0002はTCP/IPアドレスの先頭部分、091Eはポート番号2334を16進数に変換したもの、および9B02CU2はIPアドレス155.2.193.18の各要素を16進数に変換したものです。(最後の変換部分については、155は9B、2は02のように変換されています。)
STARLANネットワークの場合は、通常、推奨アドレスuname.wlistenが一意の名前になります。
|