私は 32 ビット Oracle Java 1.6.0 を使用して、x86_64 CentOS 5.7 上で tomcat 5.5 を実行しています。
tomcat が使用する JVM プロセスの pid は 6421 です。Tomcat は正常に動作しています。
実行するとjstack
次のエラーで失敗します:
[root@mybox ~]# jstack 6421
6421: well-known file is not secure
適切な出力を得るには、force オプションを使用する必要があります。
[root@mybox ~]# jstack -F 6421
Attaching to process ID 6421, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 17.0-b16
Deadlock Detection:
No deadlocks found.
(...)
の質問は:
- エラーメッセージは何を意味するのか「よく知られているファイルは安全ではありません」平均?
- 「よく知られている」ファイルとは何ですか?
jstack
強制オプションなしでコマンドが機能しないのはなぜですか?
前もって感謝します。
ベストアンサー1
これは、プロセスとの通信に使用される/tmp内のファイルが、jstack取得します。問題のファイルは /tmp/hsperfdata_$USER/$PID です。
マニュアル ページには「'jstack [-l] pid' が応答しない場合はスタック ダンプを強制します」とだけ記載されているため、-F で機能する理由がわかりません。