Solaris WBEM Services の管理

MOF ファイルのコンパイル

コンパイルする MOF ファイルには、.mof 拡張子が付いていても付いていなくてもかまいません。CIM スキーマや Solaris スキーマを記述する MOF ファイルは /usr/sadm/mof にあります。

MOF ファイルをコンパイルする方法
  1. パラメータを指定せずに MOF コンパイラ を実行するには、次のコマンドを入力します。

    % mofcomp filename
    

    たとえば、mofcomp /usr/sadm/mof/Solaris_Schema1.0.mof と入力すると、指定した MOF ファイルがコンパイルされます。

次の例は、Solaris_System1.0.mof ファイルの例で、Solaris オペレーティング環境でのプロセス、オペレーティングシステム、ファイルシステムなどの管理リソースを表しています。


例 4-1 Solaris_System1.0 ファイル

// ===================================================================
// Title:       Solaris System MOF specification 1.0
// Filename:    Solaris_System1.0.mof
// Version:     1.0
// Author:      Sun Microsystems, Inc.
// Date:        02/01/1999
// Description:
// ===================================================================
 
// ==================================================================
// Pragmas
// ==================================================================
#pragma Locale ("en-US")
 
// ==================================================================
// Solaris_Process
// ==================================================================
 
 [Provider("com.sun.wbem.solarisprovider.Solaris"),
  Description ("A Solaris process that is running.")
 ]
class Solaris_Process:CIM_Process
{
     [Description (
        "Time in user mode and kernel mode, in milliseconds."
        "If this information is not available, a value of 0 should be used."), 
       Units("MilliSeconds")
      ]
   uint64 UserKernelModeTime;
      [Description (
          "A string used to identify the Parent Process. A Process ID is a "
          "kind of Process Handle."),
       MaxLen (256)
      ]
   string ParentHandle;
};
[vellip]
// ==================================================================
// Solaris_FileSystem
// ==================================================================
 
 [Provider("com.sun.wbem.solarisprovider.Solaris"),
  Description ("A Solaris FileSystem.")
 ]
class Solaris_FileSystem:CIM_FileSystem
{
};
 

次の例は、デフォルトオプションを使って Solaris_System1.0.mof ファイルを再コンパイルしたものです。このオプションは、コンパイラが、すでにあるクラスを追加しようとするたびにエラーを返します。この例では、詳細モード (-v) を使用しています。さらに、デフォルトのネームスペース root¥cimv2 への書き込み権が必要なため、スーパーユーザーアカウントを指定します。Solaris_System1.0.mof ファイルに定義されている CIM 要素は、デフォルトで root¥cimv2 ネームスペースに追加されます。


例 4-2 デフォルトオプションを使用した MOF ファイルのコンパイル

mofcomp -v -u root ../mof/Solaris_Schema1.0.mof
Starting MOF Compiler
java com.sun.wbem.compiler.mofc.CIM_Mofc -v -u root ../mof/Solaris_Schema1.0.mof
Enter password:******
Adding class Solaris_ComputerSystem
Warning at line 27 in file /usr/sadm/mof/Solaris_Core1.0.mof 
- compilation proceeding ...
Semantic Error: 
The following exception was thrown by setClass: 
		CIM_ERR_ALREADY_EXISTS:Element Solaris_ComputerSystem already exists.
Adding class Solaris_SerialPortSetting
Warning at line 39 in file /usr/sadm/mof/Solaris_Core1.0.mof 
- compilation proceeding ...
Semantic Error: 
The following exception was thrown by setClass: 
		CIM_ERR_ALREADY_EXISTS:Element Solaris_SerialPortSetting already exists.
Adding class Solaris_LogRecord
Warning at line 104 in file /usr/sadm/mof/Solaris_Core1.0.mof 
- compilation proceeding ...
[vellip]
Semantic Error: 
The following exception was thrown by setClass: 
		CIM_ERR_ALREADY_EXISTS:Element Solaris_NamespaceAcl already exists.
Adding class Solaris_UserAcl
Warning at line 39 in file /usr/sadm/mof/Solaris_Acl1.0.mof 
- compilation proceeding ...
Semantic Error: 
The following exception was thrown by setClass: 
		CIM_ERR_ALREADY_EXISTS:Element Solaris_UserAcl already exists.
Compilation succeeded.
 

セキュリティ上の注意

-p パラメータを使ってコマンドをパスワードを指定して実行すると、指定したパスワードを他のユーザーが ps コマンドや history コマンドを使って知ることができます。


注 -

実行するコマンドにパスワードを指定する場合は、コマンドを実行した後でただちにパスワードを変更してください。



例 4-3 セキュリティ上安全でない構文の例

次の例は、-p パラメータを使って mofcomp コマンドを実行する例です。

mofcomp -p Log8Rif
次の例は、-u および -p パラメータを使って mofcomp コマンドを実行する例です。
mofcomp -u molly -p Log8Rif

パスワードを指定するオプションを使って modcomp コマンドを実行したら、ただちにパスワードを変更してください。