JMX密码读取访问问题

Bla*_*gic 35 java ubuntu jmx

当我尝试使用JMX监视这样的应用程序时:

java -Dcom.sun.management.jmxremote.port=9999 \
     -Dcom.sun.management.jmxremote.authenticate=false \
     -Dcom.sun.management.jmxremote.ssl=false \
     JMX_tester
Run Code Online (Sandbox Code Playgroud)

它告诉我:

Error: Password file read access must be restricted:
       /usr/lib/jvm/java-7-oracle/jre/lib/management/jmxremote.password
Run Code Online (Sandbox Code Playgroud)

然而,当我chmod用来限制读访问时,它告诉我:

Error: can't read password file
Run Code Online (Sandbox Code Playgroud)

我疯了还是什么?我怎样才能解决这个问题?

这是Ubuntu btw,带有最新的oracle jdk

Ela*_*bak 53

确保用于运行java进程的用户可以访问该文件(所有者/读取权限).

尝试:

chmod 600 jmxremote.password
Run Code Online (Sandbox Code Playgroud)

另外我建议你自己创建密码文件并运行它

-Dcom.sun.management.jmxremote.password.file=pwFilePath
Run Code Online (Sandbox Code Playgroud)

这里都解释.

  • Windows用户,请查看另一个问题的答案:http://stackoverflow.com/a/6501127/1143126 (8认同)
  • 但是当设置authenticate = false时为什么我们需要密码......? (2认同)