1 '\" t
   2 .\" Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
   3 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4 .\"
   5 .\" This code is free software; you can redistribute it and/or modify it
   6 .\" under the terms of the GNU General Public License version 2 only, as
   7 .\" published by the Free Software Foundation.
   8 .\"
   9 .\" This code is distributed in the hope that it will be useful, but WITHOUT
  10 .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11 .\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12 .\" version 2 for more details (a copy is included in the LICENSE file that
  13 .\" accompanied this code).
  14 .\"
  15 .\" You should have received a copy of the GNU General Public License version
  16 .\" 2 along with this work; if not, write to the Free Software Foundation,
  17 .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18 .\"
  19 .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20 .\" or visit www.oracle.com if you need additional information or have any
  21 .\" questions.
  22 .\"
  23 .\" Title: jstatd
  24 .\" Language: Japanese
  25 .\" Date: 2013年11月21日
  26 .\" SectDesc: モニタリング・ツール
  27 .\" Software: JDK 8
  28 .\" Arch: 汎用
  29 .\" Part Number: E58103-01
  30 .\" Doc ID: JSSON
  31 .\"
  32 .if n .pl 99999
  33 .TH "jstatd" "1" "2013年11月21日" "JDK 8" "モニタリング・ツール"
  34 .\" -----------------------------------------------------------------
  35 .\" * Define some portability stuff
  36 .\" -----------------------------------------------------------------
  37 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  38 .\" http://bugs.debian.org/507673
  39 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
  40 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  41 .ie \n(.g .ds Aq \(aq
  42 .el       .ds Aq '
  43 .\" -----------------------------------------------------------------
  44 .\" * set default formatting
  45 .\" -----------------------------------------------------------------
  46 .\" disable hyphenation
  47 .nh
  48 .\" disable justification (adjust text to left margin only)
  49 .ad l
  50 .\" -----------------------------------------------------------------
  51 .\" * MAIN CONTENT STARTS HERE *
  52 .\" -----------------------------------------------------------------
  53 .SH "名前"
  54 jstatd \- Java仮想マシン(JVM)をモニターし、リモート・モニタリング・ツールがJVMに接続できるようにします。このコマンドは試験的なもので、サポートされていません。
  55 .SH "概要"
  56 .sp
  57 .if n \{\
  58 .RS 4
  59 .\}
  60 .nf
  61 \fBjstatd\fR [ \fIoptions\fR ]
  62 .fi
  63 .if n \{\
  64 .RE
  65 .\}
  66 .PP
  67 \fIoptions\fR
  68 .RS 4
  69 コマンド行オプション。オプションを参照してください。
  70 .RE
  71 .SH "説明"
  72 .PP
  73 \fBjstatd\fRコマンドは、計測されたJava HotSpot VMの作成と終了をモニターし、ローカル・システム上で実行されているJVMに、リモート・モニタリング・ツールが接続できるようにするためのインタフェースを提供するRMIサーバー・アプリケーションです。
  74 .PP
  75 \fBjstatd\fRサーバーでは、ローカル・ホストにRMIレジストリが必要になります。\fBjstatd\fRサーバーはデフォルト・ポートで、または\fB\-p\fR
  76 \fBport\fRオプションで指定したポートで、RMIレジストリに接続しようとします。RMIレジストリが見つからない場合、\fB\-p\fR
  77 \fBport\fRオプションで指定されたポート、または\fB\-p\fR
  78 \fBport\fRオプションが省略されている場合は、デフォルトRMIレジストリにバインドされた\fBjstatd\fRアプリケーション内に、1つのRMIレジストリが作成されます。内部RMIレジストリの作成は、\fB\-nr\fRオプションを指定することによって中止できます。
  79 .SH "オプション"
  80 .PP
  81 \-nr
  82 .RS 4
  83 既存のRMIレジストリが見つからない場合、\fBjstatd\fRプロセス内に内部RMIレジストリを作成しないようにします。
  84 .RE
  85 .PP
  86 \-p \fIport\fR
  87 .RS 4
  88 RMIレジストリがあると予想されるポート番号です。見つからない場合は、\fB\-nr\fRオプションが指定されていなければ作成されます。
  89 .RE
  90 .PP
  91 \-n \fIrminame\fR
  92 .RS 4
  93 RMIレジストリにおいて、リモートRMIオブジェクトがバインドされる名前です。デフォルト名は\fBJStatRemoteHost\fRです。複数の\fBjstatd\fRサーバーが同じホスト上で起動している場合、各サーバーのエクスポートしたRMIオブジェクトの名前は、このオプションを指定することによって、一意の名前にすることができます。ただし、このオプションを使用する場合、モニタリング・クライアントの\fBhostid\fRおよび\fBvmid\fR文字列に、その一意のサーバー名を含める必要があります。
  94 .RE
  95 .PP
  96 \-J\fIoption\fR
  97 .RS 4
  98 JVMに\fBoption\fRを渡します。optionには、Javaアプリケーション起動ツールのリファレンス・ページに記載されている\fBオプション\fRを1つ指定します。たとえば、\fB\-J\-Xms48m\fRと指定すると、スタートアップ・メモリーは48MBに設定されます。java(1)を参照してください。
  99 .RE
 100 .SH "セキュリティ"
 101 .PP
 102 \fBjstatd\fRサーバーは、適切なネイティブ・アクセス権を持つJVMのみをモニターできます。したがって、\fBjstatd\fRプロセスは、ターゲットJVMと同じユーザー資格証明で実行されている必要があります。Solaris、LinuxおよびOS Xオペレーティング・システムにおけるrootユーザーなどの一部のユーザー資格証明は、システム上の任意のJVMによってエクスポートされたインストゥルメンテーションへのアクセス権を持っています。このような資格証明で実行されている\fBjstatd\fRプロセスは、システム上のすべてのJVMをモニターできますが、セキュリティ上の別の問題が起こります。
 103 .PP
 104 \fBjstatd\fRサーバーには、リモート・クライアントの認証機能がありません。そのため、\fBjstatd\fRサーバー・プロセスを実行すると、\fBjstatd\fRプロセスがアクセス権を持つすべてのJVMによるインストゥルメンテーションのエクスポートを、ネットワーク上のすべてのユーザーに公開することになります。この無防備な状態は、環境によっては望ましくない場合があるので、特に本番環境またはセキュアでないネットワークでは、\fBjstatd\fRプロセスを起動する前に、ローカル・セキュリティ・ポリシーを検討する必要があります。
 105 .PP
 106 \fBjstatd\fRサーバーは、他のセキュリティ・マネージャがインストールされていない場合には、\fBRMISecurityPolicy\fRのインスタンスをインストールします。そのため、セキュリティ・ポリシー・ファイルを指定する必要があります。ポリシー・ファイルは、http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/security/PolicyFiles\&.htmlにある
 107 「デフォルトのPolicyの実装とポリシー・ファイルの構文」に準拠している必要があります
 108 .PP
 109 次のポリシー・ファイルでは、セキュリティ例外を発生せずに\fBjstatd\fRサーバーを実行できます。このポリシーは、すべてのコード・ベースへのあらゆるアクセス権を認めるポリシーよりも自由度が低いですが、\fBjstatd\fRサーバーを実行するために最低限必要なアクセス権のみを認めるポリシーよりも自由度が高くなっています。
 110 .sp
 111 .if n \{\
 112 .RS 4
 113 .\}
 114 .nf
 115 \fBgrant codebase "file:${java\&.home}/\&.\&./lib/tools\&.jar" {   \fR
 116 \fB    permission java\&.security\&.AllPermission;\fR
 117 \fB};\fR
 118  
 119 .fi
 120 .if n \{\
 121 .RE
 122 .\}
 123 .PP
 124 このポリシー設定を使用するには、このテキストを\fBjstatd\&.all\&.policy\fRというファイルにコピーし、次のように\fBjstatd\fRサーバーを実行します。
 125 .sp
 126 .if n \{\
 127 .RS 4
 128 .\}
 129 .nf
 130 \fBjstatd \-J\-Djava\&.security\&.policy=jstatd\&.all\&.policy\fR
 131  
 132 .fi
 133 .if n \{\
 134 .RE
 135 .\}
 136 .PP
 137 より厳しいセキュリティを実施するサイトの場合、カスタム・ポリシー・ファイルを使用して、特定の信頼できるホストまたはネットワークにアクセスを制限することができます。ただし、このような方法は、IPアドレスの盗聴攻撃を受けやすくなります。セキュリティの問題について、カスタマイズしたポリシー・ファイルでも対処できない場合は、\fBjstatd\fRサーバーを実行せずに、\fBjstat\fRと\fBjps\fRツールをローカルで使用することが最も安全な方法になります。
 138 .SH "リモート・インタフェース"
 139 .PP
 140 \fBjstatd\fRプロセスがエクスポートするインタフェースは、独自に開発したものであり変更される予定です。ユーザーおよび開発者は、このインタフェースへの書込みを行わないでください。
 141 .SH "例"
 142 .PP
 143 次に、\fBjstatd\fRコマンドの例を示します。\fBjstatd\fRスクリプトによって、サーバーはバックグラウンドで自動的に起動します。
 144 .SS "内部RMIレジストリ"
 145 .PP
 146 この例は、内部RMIレジストリを使用した\fBjstatd\fRセッションの起動方法を表しています。この例では、デフォルトのRMIレジストリ・ポート(ポート1099)には、他のサーバーはバインドされていないと想定しています。
 147 .sp
 148 .if n \{\
 149 .RS 4
 150 .\}
 151 .nf
 152 \fBjstatd \-J\-Djava\&.security\&.policy=all\&.policy\fR
 153  
 154 .fi
 155 .if n \{\
 156 .RE
 157 .\}
 158 .SS "外部RMIレジストリ"
 159 .PP
 160 この例は、外部RMIレジストリを使用した\fBjstatd\fRセッションの起動を表しています。
 161 .sp
 162 .if n \{\
 163 .RS 4
 164 .\}
 165 .nf
 166 \fBrmiregistry&\fR
 167 \fBjstatd \-J\-Djava\&.security\&.policy=all\&.policy\fR
 168  
 169 .fi
 170 .if n \{\
 171 .RE
 172 .\}
 173 .PP
 174 この例では、ポート2020の外部RMIレジストリを使用して\fBjstatd\fRセッションを起動します。
 175 .sp
 176 .if n \{\
 177 .RS 4
 178 .\}
 179 .nf
 180 \fBjrmiregistry 2020&\fR
 181 \fBjstatd \-J\-Djava\&.security\&.policy=all\&.policy \-p 2020\fR
 182  
 183 .fi
 184 .if n \{\
 185 .RE
 186 .\}
 187 .PP
 188 この例では、ポート2020の外部RMIレジストリを使用して、\fBAlternateJstatdServerName\fRにバインドされている\fBjstatd\fRセッションを起動します。
 189 .sp
 190 .if n \{\
 191 .RS 4
 192 .\}
 193 .nf
 194 \fBrmiregistry 2020&\fR
 195 \fBjstatd \-J\-Djava\&.security\&.policy=all\&.policy \-p 2020\fR
 196 \fB    \-n AlternateJstatdServerName\fR
 197  
 198 .fi
 199 .if n \{\
 200 .RE
 201 .\}
 202 .SS "インプロセスRMIレジストリの作成の停止"
 203 .PP
 204 この例では、外部RMIレジストリがない場合に作成しない\fBjstatd\fRセッションを起動します。この例では、RMIレジストリがすでに実行されていると想定しています。RMIレジストリが実行されていない場合、エラー・メッセージが表示されます。
 205 .sp
 206 .if n \{\
 207 .RS 4
 208 .\}
 209 .nf
 210 \fBjstatd \-J\-Djava\&.security\&.policy=all\&.policy \-nr\fR
 211  
 212 .fi
 213 .if n \{\
 214 .RE
 215 .\}
 216 .SS "RMIロギングの有効化"
 217 .PP
 218 この例では、RMIロギング機能を有効化して\fBjstatd\fRセッションを起動します。この方法は、トラブルシューティングまたはサーバー活動のモニタリングに役立ちます。
 219 .sp
 220 .if n \{\
 221 .RS 4
 222 .\}
 223 .nf
 224 \fBjstatd \-J\-Djava\&.security\&.policy=all\&.policy\fR
 225 \fB    \-J\-Djava\&.rmi\&.server\&.logCalls=true\fR
 226  
 227 .fi
 228 .if n \{\
 229 .RE
 230 .\}
 231 .SH "関連項目"
 232 .sp
 233 .RS 4
 234 .ie n \{\
 235 \h'-04'\(bu\h'+03'\c
 236 .\}
 237 .el \{\
 238 .sp -1
 239 .IP \(bu 2.3
 240 .\}
 241 java(1)
 242 .RE
 243 .sp
 244 .RS 4
 245 .ie n \{\
 246 \h'-04'\(bu\h'+03'\c
 247 .\}
 248 .el \{\
 249 .sp -1
 250 .IP \(bu 2.3
 251 .\}
 252 jps(1)
 253 .RE
 254 .sp
 255 .RS 4
 256 .ie n \{\
 257 \h'-04'\(bu\h'+03'\c
 258 .\}
 259 .el \{\
 260 .sp -1
 261 .IP \(bu 2.3
 262 .\}
 263 jstat(1)
 264 .RE
 265 .sp
 266 .RS 4
 267 .ie n \{\
 268 \h'-04'\(bu\h'+03'\c
 269 .\}
 270 .el \{\
 271 .sp -1
 272 .IP \(bu 2.3
 273 .\}
 274 rmiregistry(1)
 275 .RE
 276 .br
 277 'pl 8.5i
 278 'bp