geronimo2 не может автостартовать

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
iZEN
ст. лейтенант
Сообщения: 1089
Зарегистрирован: 2007-09-15 16:45:26
Контактная информация:

geronimo2 не может автостартовать

Непрочитанное сообщение iZEN » 2008-09-11 20:14:16

J2EE-сервер geronimo2 (ports/www/geronimo) не может автостартовать.

В /etc/rc.conf следующие строчки для его автостарта:

Код: Выделить всё

# Apache Geronimo2
geronimo2_enable="YES"
geronimo2_tmpdir="/usr/local/geronimo2/temp"
geronimo2_out="/usr/local/geronimo2/var/log/geronimo.out"
geronimo2_java_home="/usr/local/jdk1.6.0"
geronimo2_stop_timeout="30"
Sun JDK 1.6.0 установлен из порта (ports/java/jdk16):

Код: Выделить всё

% java -version
java version "1.6.0_03-p4"
Java(TM) SE Runtime Environment (build 1.6.0_03-p4-root_18_aug_2008_10_07-b00)
Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_03-p4-root_18_aug_2008_10_07-b00, mixed mode)
Система:

Код: Выделить всё

% uname -rsm
FreeBSD 7.1-PRERELEASE amd64
Когда запускаю из командной строки командой:

Код: Выделить всё

% /usr/local/etc/rc.d/geronimo2 start
Starting geronimo2.
то всё отлично поднимается и работает:

Код: Выделить всё

% sockstat -4 | grep java
www      java       3120  69 tcp4   *:1099                *:*
www      java       3120  70 tcp4   127.0.0.1:63654       127.0.0.1:59757
www      java       3120  76 tcp4   *:9999                *:*
www      java       3120  133tcp4   *:1527                *:*
www      java       3120  175tcp4   *:61616               *:*
www      java       3120  176tcp4   *:61613               *:*
www      java       3120  196tcp4   *:4201                *:*
www      java       3120  215tcp4   *:8080                *:*
www      java       3120  217tcp4   *:8009                *:*
www      java       3120  219tcp4   *:8443                *:*
www      java       3120  344tcp4   *:1050                *:*
www      java       3120  346tcp4   *:65524               *:*
www      java       3120  348tcp4   *:2001                *:*
www      java       3120  350tcp4   *:6882                *:*
www      java       3120  354tcp4   *:*                   *:*
В Web-браузере можно заходить на сраничку сервера и управлять сервером приложений.

В чём может быть проблема с автостартом? (На той же конфигурации автостартовал и отлично работал Apache Tomcat6).
GNU/Linux — это не Unix и даже никогда им не был, и, что самое смешное, никогда им не станет — GNU's Not Unix

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение alex3 » 2008-09-11 20:34:43

покажите пожалуйста

Код: Выделить всё

less /usr/local/etc/rc.d/geronimo2
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

Аватара пользователя
iZEN
ст. лейтенант
Сообщения: 1089
Зарегистрирован: 2007-09-15 16:45:26
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение iZEN » 2008-09-11 21:05:45

/usr/local/etc/rc.d/geronimo2:

Код: Выделить всё

#!/bin/sh
#
# $FreeBSD: ports/www/geronimo/files/geronimo2.sh.in,v 1.3 2008/05/22 12:26:08 nemoliu Exp $
#

#
# Configuration settings for geronimo2 in /etc/rc.conf:
#
# geronimo2_enable (bool):
#   Set to "NO" by default.
#   Set it to "YES" to enable geronimo2
#
# geronimo2_flags (str):
#   Set to "" by default.
#   Extra flags passed to start command
#
# geronimo2_home (str)
#   Set to "/usr/local/geronimo2" by default.
#   Set the CATALINA_HOME variable for the Tomcat process
#
# geronimo2_base (str)
#   Set to "/usr/local/geronimo2" by default.
#   Set the CATALINA_BASE variable for the Tomcat process
#
# geronimo2_tmpdir (str)
#   Set to "/usr/local/geronimo2/temp" by default.
#
# geronimo2_out (str)
#   Set to "/usr/local/geronimo2/var/log/geronimo.out" by default.
#   Set the location for the Geronimo process log (standard output & error output)
#
# geronimo2_stop_timeout (num)
#   Set to "10" by default.
#   Sets the timeout in seconds to allow geronimo to shutdown.
#   After the timeout has elapsed, geronimo will be killed.
#
# geronimo2_java_home (str):
# geronimo2_java_vendor (str):
# geronimo2_java_version (str):
# geronimo2_java_os (str):
#   Specify the requirements of the Java VM to use. See javavm(1).
#
# geronimo2_classpath (str):
#   Set to "" by default.
#   Addtional classes to add to the CLASSPATH
#
# geronimo2_java_opts (str):
#   Set to "" by default.
#   Java VM args to use.
#

geronimo2_enable="${geronimo2_enable:-"NO"}"
geronimo2_java_version="${geronimo2_java_version:-"%%JAVA_VERSION%%"}"
geronimo2_user="${geronimo2_user:-"www"}"
geronimo2_home="${geronimo2_home:-"/usr/local/geronimo2"}"
geronimo2_base="${geronimo2_base:-"/usr/local/geronimo2"}"
geronimo2_tmpdir="${geronimo2_tmpdir:-"/tmp"}"
geronimo2_out="${geronimo2_out:-"/usr/local/geronimo2/var/log/geronimo.out"}"
geronimo2_stop_timeout="${geronimo2_stop_timeout:-"10"}"

. /etc/rc.subr

name="geronimo2"
rcvar=`set_rcvar`
pidfile="/var/run/geronimo2.pid"

JAVA_HOME=/usr/local/jdk1.6.0
JRE_HOME=$JAVA_HOME/jre
EXT_DIRS="$JRE_HOME/lib/ext:${geronimo2_home}/lib/ext"
ENDORSED_DIRS="$JRE_HOME/lib/endorsed:${geronimo2_home}/lib/endorsed"

LONG_OPT=
if [ "$1" = "start" ] ; then
  LONG_OPT=--long
fi

load_rc_config "${name}"

if [ -n "${geronimo2_java_home}" ] ; then
	export JAVA_HOME="${geronimo2_java_home}"
fi

if [ -n "${geronimo2_java_version}" ] ; then
	export JAVA_VERSION="${geronimo2_java_version}"
fi

if [ -n "${geronimo2_java_vendor}" ] ; then
	export JAVA_VENDOR="${geronimo2_java_vendor}"
fi

if [ -n "${geronimo2_java_os}" ] ; then
	export JAVA_OS="${geronimo2_java_os}"
fi

java_cmd=
if [ -z "${JAVA_HOME}" ] ; then
	java_cmd=/usr/local/bin/java
else
	java_cmd=${JAVA_HOME}/bin/java
fi

java_command="$java_cmd \
	${geronimo2_java_opts} \
	-Dorg.apache.geronimo.base.dir=${geronimo2_base} \
	-Djava.endorsed.dirs=$ENDORSED_DIRS \
	-Djava.ext.dirs=$EXT_DIRS \
	-Djava.io.tmpdir=${geronimo2_tmpdir}" 

java_start_command="${java_command} \
		 -jar ${geronimo2_home}/bin/server.jar $LONG_OPT" 

java_stop_command="${java_command} \
		 -jar ${geronimo2_home}/bin/shutdown.jar"

log_args=">> ${geronimo2_out} 2>&1"

# Subvert the check_pid_file procname check.
if [ -f $pidfile ]; then
  read rc_pid junk < $pidfile
  if [ ! -z "$rc_pid" ]; then
    procname=`ps -o ucomm= $rc_pid`
  fi
fi

command="/usr/sbin/daemon"
flags="-p ${pidfile} ${java_start_command} ${geronimo2_flags} ${log_args}"

start_precmd=pid_touch
stop_cmd="geronimo2_stop"

pid_touch ()
{
	touch $pidfile
	chown $geronimo2_user $pidfile
}

geronimo2_stop() {
	rc_pid=$(check_pidfile $pidfile *$procname*)

	if [ -z "$rc_pid" ]; then
		[ -n "$rc_fast" ] && return 0
		if [ -n "$pidfile" ]; then
			echo "${name} not running? (check $pidfile)."
		else
			echo "${name} not running?"
		fi
		return 1
	fi
	
	echo "Stopping ${name}."
	kill ${rc_pid} 2> /dev/null
	geronimo_wait_max_for_pid ${geronimo2_stop_timeout} ${rc_pid}
	kill -KILL ${rc_pid} 2> /dev/null && echo "Killed."
	echo -n > ${pidfile}
}

geronimo_wait_max_for_pid() {
	_timeout=$1
	shift
	_pid=$1
	_prefix=
	while [ $_timeout -gt 0 ] ; do
		echo -n ${_prefix:-"Waiting (max $_timeout secs) for PIDS: "}$_pid
		_prefix=", "
		sleep 2
		kill -0 $_pid 2> /dev/null || break
		_timeout=$(($_timeout-2))
	done
	if [ -n "$_prefix" ]; then
		echo "."
	fi
}

run_rc_command "$1"
GNU/Linux — это не Unix и даже никогда им не был, и, что самое смешное, никогда им не станет — GNU's Not Unix

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение alex3 » 2008-09-11 21:33:52

гм. а в /var/log/messages что?
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

Аватара пользователя
iZEN
ст. лейтенант
Сообщения: 1089
Зарегистрирован: 2007-09-15 16:45:26
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение iZEN » 2008-09-11 21:51:20

alex3 писал(а):гм. а в /var/log/messages что?
Ничего про стартующие сервисы. Там только по оборудованию сообщения.
GNU/Linux — это не Unix и даже никогда им не был, и, что самое смешное, никогда им не станет — GNU's Not Unix

Аватара пользователя
manefesto
Группенфюррер
Сообщения: 6934
Зарегистрирован: 2007-07-20 8:27:30
Откуда: Пермь
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение manefesto » 2008-09-12 7:09:09

# Apache Geronimo2
geronimo2_enable="YES"
geronimo2_tmpdir="/usr/local/geronimo2/temp"
geronimo2_out="/usr/local/geronimo2/var/log/geronimo.out"
geronimo2_java_home="/usr/local/jdk1.6.0"
geronimo2_stop_timeout="30"
Может попробовать просто

Код: Выделить всё

geronimo2_enable="YES"
Или поместить его в конец, вот так
# Apache Geronimo2
geronimo2_tmpdir="/usr/local/geronimo2/temp"
geronimo2_out="/usr/local/geronimo2/var/log/geronimo.out"
geronimo2_java_home="/usr/local/jdk1.6.0"
geronimo2_stop_timeout="30"
geronimo2_enable="YES"
я такой яростный шо аж пиздеЦ
Изображение

Аватара пользователя
iZEN
ст. лейтенант
Сообщения: 1089
Зарегистрирован: 2007-09-15 16:45:26
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение iZEN » 2008-09-12 9:13:34

manefesto писал(а):
# Apache Geronimo2
geronimo2_enable="YES"
geronimo2_tmpdir="/usr/local/geronimo2/temp"
geronimo2_out="/usr/local/geronimo2/var/log/geronimo.out"
geronimo2_java_home="/usr/local/jdk1.6.0"
geronimo2_stop_timeout="30"
Может попробовать просто

Код: Выделить всё

geronimo2_enable="YES"
Это тоже ничего не даёт.
GNU/Linux — это не Unix и даже никогда им не был, и, что самое смешное, никогда им не станет — GNU's Not Unix

Аватара пользователя
manefesto
Группенфюррер
Сообщения: 6934
Зарегистрирован: 2007-07-20 8:27:30
Откуда: Пермь
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение manefesto » 2008-09-12 11:11:43

Код: Выделить всё

/usr/local/etc/rc.d/geronimo2 rcvar
Такая фишка была с 3proxy
Надо было писать не

Код: Выделить всё

3proxy_enable="YES"
а

Код: Выделить всё

threeproxy_enable="YES"
я такой яростный шо аж пиздеЦ
Изображение

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: geronimo2 не может автостартовать

Непрочитанное сообщение zg » 2008-09-12 12:46:57

# geronimo2_enable (bool):
# Set to "NO" by default.
# Set it to "YES" to enable geronimo2
да нет, всё верно, может быть он зависит от модуля, который не успевается стартовать?

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение alex3 » 2008-09-12 12:51:22

он зависит от модуля, который не успевается стартовать?
java?
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

Аватара пользователя
manefesto
Группенфюррер
Сообщения: 6934
Зарегистрирован: 2007-07-20 8:27:30
Откуда: Пермь
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение manefesto » 2008-09-12 13:29:43

значит должен ругаться....
я такой яростный шо аж пиздеЦ
Изображение

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение alex3 » 2008-09-12 14:51:54

точно! или в мессейджс или в своем логе он должен что-то вякать...
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

Аватара пользователя
iZEN
ст. лейтенант
Сообщения: 1089
Зарегистрирован: 2007-09-15 16:45:26
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение iZEN » 2008-09-13 13:11:44

[quote="manefesto"]

Код: Выделить всё

/usr/local/etc/rc.d/geronimo2 rcvar
Вот:

Код: Выделить всё

> /usr/local/etc/rc.d/geronimo2 rcvar
# geronimo2
geronimo2_enable=YES
В собственных логах Geronomo (каталог /usr/local/geronimo2/var/log/) тоже всё пусто, но они обновляются, когда вручную его запускаешь командой "/usr/local/etc/rc.d/geronimo2 start".

Мне кажется, что система сама прерывает процесс старта сервиса, если он стартует довольно долго. Как можно увеличить время ожидания старта определённого демона, чтобы система его не киляла раньше времени?
GNU/Linux — это не Unix и даже никогда им не был, и, что самое смешное, никогда им не станет — GNU's Not Unix

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: geronimo2 не может автостартовать

Непрочитанное сообщение zg » 2008-09-13 21:49:45

если совсем туго, можешь в rc.local запихать вызов демона, будет тоже самое как руками, только при загрузке

Аватара пользователя
iZEN
ст. лейтенант
Сообщения: 1089
Зарегистрирован: 2007-09-15 16:45:26
Контактная информация:

Re: geronimo2 не может автостартовать

Непрочитанное сообщение iZEN » 2008-09-14 9:38:02

zg писал(а):если совсем туго, можешь в rc.local запихать вызов демона, будет тоже самое как руками, только при загрузке
В каком каталоге rc.local?
GNU/Linux — это не Unix и даже никогда им не был, и, что самое смешное, никогда им не станет — GNU's Not Unix