2009-12-19 36 views
0

我试图让Solr运行起来,起初我的JDK.1.6工作正常,然后tomcat也运行良好。突然试图运行的Solr的第一次,但是我得到的错误消息时:Dreaded无法为对象堆预留足够的空间

[[email protected] bin]# ./java -version 
Error occurred during initialization of VM 
Could not reserve enough space for object heap 
Could not create the Java virtual machine. 

伊夫删除Tomcat中,删除了JDK并重新安装最新的JRE,但试图让时仍然得到错误消息甚至Java的版本号。

top - 18:47:15 up 207 days, 13:50, 1 user, load average: 0.08, 0.03, 0.00 
Tasks: 42 total, 1 running, 41 sleeping, 0 stopped, 0 zombie 
Cpu(s): 5.0%us, 0.2%sy, 0.0%ni, 94.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st 
Mem: 786432k total, 376656k used, 409776k free,  0k buffers 
Swap:  0k total,  0k used,  0k free,  0k cached 

的设置Ive得到的是:双CPU双核AMD皓龙512MB RAM 40GB硬盘

林九成新到UNIX等任何帮助或建议将是非常有益的,谢谢你们

编辑运行过程如下:

PID USER  PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
    1 root  18 0 10332 636 600 S 0 0.1 0:08.28 init 
1752 psaadm 15 0 176m 29m 17m S 0 3.9 0:03.76 httpsd 
1785 psaadm 15 0 173m 24m 14m S 0 3.1 0:02.03 httpsd 
5308 psaadm 15 0 174m 32m 21m S 0 4.2 0:02.70 httpsd 
6107 apache 25 0 347m 47m 5616 S 0 6.2 1:48.26 httpd 
11493 root  15 -4 12588 320 316 S 0 0.0 0:00.00 udevd 
12105 root  15 0 60592 1224 676 S 0 0.2 0:00.00 sshd 
13659 apache 15 0 345m 46m 4784 S 0 6.1 0:57.14 httpd 
15855 root  15 0 21628 768 672 S 0 0.1 0:13.75 xinetd 
15986 root  15 0 40848 592 536 S 0 0.1 0:00.38 couriertcpd 
16086 root  18 0 33540 1184 1120 S 0 0.2 0:00.28 courierlogger 
16117 root  21 0 40848 536 532 S 0 0.1 0:00.00 couriertcpd 
16119 root  21 0 33544 1072 1068 S 0 0.1 0:00.00 courierlogger 
16135 root  15 0 40848 592 536 S 0 0.1 0:03.09 couriertcpd 
16137 root  18 0 33540 1184 1120 S 0 0.2 0:01.70 courierlogger 
16154 root  18 0 40852 536 532 S 0 0.1 0:00.00 couriertcpd 
16157 root  18 0 33540 1124 1120 S 0 0.1 0:00.00 courierlogger 
16287 qmails 18 0 3832 512 428 S 0 0.1 2:03.49 qmail-send 
16289 qmaill 18 0 3780 508 444 S 0 0.1 0:36.67 splogger 
16290 root  18 0 3816 408 324 S 0 0.1 0:00.09 qmail-lspawn 
16291 qmailr 17 0 3820 404 328 S 0 0.1 0:16.95 qmail-rspawn 
16292 qmailq 18 0 3772 368 324 S 0 0.0 0:15.61 qmail-clean 
17669 root  18 0 12592 1180 908 R 0 0.2 0:00.03 top 
18190 root  15 0 318m 25m 9000 S 0 3.3 0:36.21 httpd 
19687 apache 16 0 347m 47m 5764 S 0 6.2 1:10.59 httpd 
19710 named  25 0 180m 2572 1744 S 0 0.3 0:03.06 named 
19809 root  18 0 11908 1152 1148 S 0 0.1 0:00.01 mysqld_safe 
20166 apache 15 0 347m 47m 5696 S 0 6.2 1:07.68 httpd 
20340 mysql  15 0 303m 35m 5620 S 0 4.7 185:56.38 mysqld 
23747 apache 15 0 412m 46m 5768 S 0 6.0 0:38.23 httpd 
23791 root  15 0 166m 7504 4216 S 0 1.0 0:02.39 httpsd 
23901 root  15 0 20836 616 548 S 0 0.1 3:37.38 crond 
23926 root  18 0 46648 416 412 S 0 0.1 0:00.00 saslauthd 
24084 root  18 0 46648 160 156 S 0 0.0 0:00.00 saslauthd 
24297 root  15 0 96636 4032 3112 S 0 0.5 0:00.20 sshd 
24302 root  18 0 12180 1804 1308 S 0 0.2 0:00.17 bash 
24431 root  18 0 152m 1112 664 S 0 0.1 0:25.77 rsyslogd 
24435 root  18 0 3784 336 332 S 0 0.0 0:00.00 rklogd 
24537 apache 15 0 344m 45m 4364 S 0 5.9 0:35.93 httpd 

其中一个共享服务器的方式。

免费-m给我:

   total  used  free  shared buffers  cached 
Mem:   768  367  400   0   0   0 
-/+ buffers/cache:  367  400 
Swap:   0   0   0 
+1

然后第一条建议:不要以root身份登录! – 2009-12-19 19:12:51

+0

我的理解是,你的机器有768MB的RAM,没有交换(?)和400MB空闲。所以你肯定有足够的空间来启动一个JVM。有些地方还有其他问题。 – 2009-12-19 19:46:42

+0

不知道它可能是什么?我应该从哪里出发? – bluedaniel 2009-12-19 20:11:50

回答

0

只需要一个简单的重新启动,不能为我的生活理解发生了什么或为什么。

+1

有时候,这只是解决方案.. Java Gremlins!有一件事我没有真正看到的答案是在启动时设置xms和xmx设置的建议。如果我有专用的服务器,我通常会设置这些,所以我知道我的应用程序正在启动时获取所有内存。 – 2009-12-21 15:04:17

+0

将来,运行SOLR并增加一些专用的内存。 32M远远少于内存。我以至少1024的分辨率运行我的游戏。试用256 Mb。 – Yurish 2009-12-23 08:42:59

0

的JVM将需要启动一定数量的内存(通过-Xms设置 - 默认为32M,我相信)。如果它不能得到它,它将不会启动。

那么还有什么在你的macine上运行?我怀疑你的机器上有很少的空闲虚拟内存。

+0

我怎么知道,所以我可以告诉你? – bluedaniel 2009-12-19 19:13:13

+0

您可以运行'top'并按内存使用情况排序。不记得那会如何工作,但'人顶'应该有所帮助。和/或'ps -fe'以获取内存消耗的进程列表 – 2009-12-19 19:18:49

+0

至于Java 5,Sun JVM的默认-Xms值为2MB。对于Java 6,默认值是在运行时根据系统配置选择的。 – 2009-12-20 18:53:41

0

你有$ JAVA_OPTIONS集吗?

echo $JAVA_OPTIONS 

执行以下命令时是否正常运行?

java -Xmx8m -version 
+0

java选项aint set no,Ill现在设置它,但java -Xmx8m -version命令不运行 – bluedaniel 2009-12-19 19:23:00

+0

不要设置JAVA_OPTIONS,我只想知道是否有一些默认设置的参数。如果你无法用8米启动JVM,那么你真的有问题,但我不知道发生了什么。 – 2009-12-19 19:33:25

相关问题