Я хочу запустить wildfly как службу, но ничего не происходит, когда я пытаюсь запустить ее, используя:
$ /etc/init.d/wildfly start
Starting WildFly Application Server: wildfly
$ ls -l /etc/init.d/wildfly
-rwxr-xr-x 1 root root 6786 Feb 10 16:06 /etc/init.d/wildfly
Затем, когда я набираю ps -ef
, нет никакого wildfly или java-процесса.
Я подписался на этот пост: Как я могу установить WildFly 8.0.0.Final в качестве службы в Ubuntu Linux?
Это работает с помощью этой команды: /opt/wildfly/bin/standalone.sh
Разрешения на папку wildfly:
$ ls -l /opt
total 8
drwxr-xr-x 11 sonar adm 4096 Feb 11 08:38 sonar
lrwxrwxrwx 1 wildfly wildfly 25 Feb 10 16:06 wildfly -> /opt/wildfly-8.2.0.Final/
drwxr-xr-x 10 wildfly wildfly 4096 Nov 21 05:43 wildfly-8.2.0.Final
У меня следующая версия java:
# java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)
Почему не работает сервис init.d wildfly?
Я нашел проблему и решение. Потому что pidofproc
команда отсутствует.
Строка 151:
check_status() {
pidofproc -p "$JBOSS_PIDFILE" "$JAVA" >/dev/null 2>&1
}
Я исправил это в строке 158, заменив:
check_status
status_start=$?
if [ $status_start -eq 3 ]; then
#...
fi
По:
check_status
status_start=$?
if [ $status_start -ge 3 ]; then
#...
fi