我如何找到JAVA_OPTS数据的存储位置?

时间:2015-10-31 02:44:44

标签: java linux

CentOS 7服务器安装了Java 7和tomcat 8。我需要设置permgen空间,但在命令行上键入printenv不会在环境变量列表中包含JAVA_OPTS。我键入ps以获取正在运行的进程列表,然后使用运行java进程中的pid键入jmap -heap <pid>,其中列出了MaxPermSizePermSize等值值。

如何以系统重启等方式保留的方式为这些属性设置新值?如果服务器在,我会犹豫,只创建一个JAVA_OPTS变量问题还有另一个存储这些持久值的地方。

编辑:

根据@ChrisRobak的建议,我去搜索tomcat conf文件。没有/etc/tomcat目录,但/etc包含名为/etc/java/etc/.java/etc/jvm/etc/jvm-common的目录。此外,tomcat conf如下:

[root@myserver tomcat]# cd /opt/tomcat/conf
[root@myserver conf]# ls -al
total 280
drwxrwx---.  3 root root   4096 Oct 30 20:02 .
drwxr-xr-x. 14 root root   4096 Oct 30 20:58 ..
drwxrwx---.  7 root root   4096 Oct 30 21:00 Catalina
-rwxrwx---.  1 root root  12624 Nov  2  2014 catalina.policy
-rwxrwx---.  1 root root   6560 Nov  2  2014 catalina.properties
-rwxrwx---.  1 root root   1852 Jan  2  2015 context.xml
-rwxrwx---.  1 root root   3451 Nov  2  2014 logging.properties
-rwxr-x---   1 root root   5018 Oct 30 21:52 server.xml
-rwxrwx---.  1 root root   1783 Nov  2  2014 tomcat-users.xml
-rwxrwx---.  1 root root   1888 Nov  2  2014 tomcat-users.xsd
-rwxrwx---.  1 root root 168082 Nov  2  2014 web.xml
[root@myserver conf]# 

我应该查看哪个文件?

或者,是否有一种设置Java选项的命令行方式,它不仅会持久化,而且还会因配置文件冲突而导致副作用? 如果我认为服务器的其余部分将作为默认设置转到JAVA_OPTS,我只会创建一个JAVA_OPTS变量。

答案?

当配置文件和脚本似乎都没有设置JAVA_OPTS时,我最终决定在CENTOS 7终端中键入以下内容:

export JAVA_OPTS="-Xms256m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m"

结果是MaxPermSize已重置。如果其他人对CentOS 7的具体答案比这更好,请提醒我。

1 个答案:

答案 0 :(得分:0)

我认为你可以坚持

/etc/tomcat8/tomcat8.conf 

或类似的变体,我有权访问的服务器是/etc/tomcat5/tomcat5.conf,但我不知道您的版本特别是