diff --git a/assembly/src/main/descriptors/unix-bin.xml b/assembly/src/main/descriptors/unix-bin.xml
index 46bf29ca6b..a1e4d38a1d 100644
--- a/assembly/src/main/descriptors/unix-bin.xml
+++ b/assembly/src/main/descriptors/unix-bin.xml
@@ -96,6 +96,7 @@
/
bin/activemq
+ bin/env
bin/diag
bin/activemq-admin
bin/macosx/activemq
diff --git a/assembly/src/release/bin/activemq b/assembly/src/release/bin/activemq
index c1a04eae2f..adeda550fc 100755
--- a/assembly/src/release/bin/activemq
+++ b/assembly/src/release/bin/activemq
@@ -28,8 +28,6 @@
# Marc Schoechlin
# ------------------------------------------------------------------------
-# CONFIGURATION
-ACTIVEMQ_CONFIGS="/etc/default/activemq $HOME/.activemqrc"
# Backup invocation parameters
COMMANDLINE_ARGS="$@"
@@ -144,82 +142,14 @@ if [ -z "$ACTIVEMQ_PIDFILE" ]; then
ACTIVEMQ_PIDFILE="$ACTIVEMQ_DATA/activemq-`hostname`.pid"
fi
-# Location of the java installation
-# Specify the location of your java installation using JAVA_HOME, or specify the
-# path to the "java" binary using JAVACMD
-# (set JAVACMD to "auto" for automatic detection)
-#JAVA_HOME=""
-JAVACMD="auto"
-
-# Set jvm memory configuration
-if [ -z "$ACTIVEMQ_OPTS_MEMORY" ] ; then
- ACTIVEMQ_OPTS_MEMORY="-Xms1G -Xmx1G"
-fi
-
-# Uncomment to enable audit logging
-#ACTIVEMQ_OPTS="$ACTIVEMQ_OPTS -Dorg.apache.activemq.audit=true"
-
-# Set jvm jmx configuration
-# This enables jmx access over a configured jmx-tcp-port.
-# You have to configure the first four settings if you run a ibm jvm, caused by the
-# fact that IBM's jvm does not support VirtualMachine.attach(PID).
-# JMX access is needed for quering a running activemq instance to gain data or to
-# trigger management operations.
-#
-# Example for ${ACTIVEMQ_CONF}/jmx.access:
-# ---
-# # The "monitorRole" role has readonly access.
-# # The "controlRole" role has readwrite access.
-# monitorRole readonly
-# controlRole readwrite
-# ---
-#
-# Example for ${ACTIVEMQ_CONF}/jmx.password:
-# ---
-# # The "monitorRole" role has password "abc123".
-# # # The "controlRole" role has password "abcd1234".
-# monitorRole abc123
-# controlRole abcd1234
-# ---
-#
-# ACTIVEMQ_SUNJMX_START="-Dcom.sun.management.jmxremote.port=11099 "
-# ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.password.file=${ACTIVEMQ_CONF}/jmx.password"
-# ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.access.file=${ACTIVEMQ_CONF}/jmx.access"
-# ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.ssl=false"
-ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote"
-
-# Set jvm jmx configuration for controlling the broker process
-# You only have to configure the first four settings if you run a ibm jvm, caused by the
-# fact that IBM's jvm does not support VirtualMachine.attach(PID)
-# (see also com.sun.management.jmxremote.port, .jmx.password.file and .jmx.access.file )
-#ACTIVEMQ_SUNJMX_CONTROL="--jmxurl service:jmx:rmi:///jndi/rmi://127.0.0.1:1099/jmxrmi --jmxuser controlRole --jmxpassword abcd1234"
-ACTIVEMQ_SUNJMX_CONTROL=""
-
-# Specify the queue manager URL for using "browse" option of sysv initscript
-if [ -z "$ACTIVEMQ_QUEUEMANAGERURL" ]; then
- ACTIVEMQ_QUEUEMANAGERURL="--amqurl tcp://localhost:61616"
-fi
-
-# Set additional JSE arguments
-ACTIVEMQ_SSL_OPTS="$SSL_OPTS"
-
-# Uncomment to enable YourKit profiling
-#ACTIVEMQ_DEBUG_OPTS="-agentlib:yjpagent"
-
-# Uncomment to enable remote debugging
-#ACTIVEMQ_DEBUG_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
-
-# ActiveMQ tries to shutdown the broker by jmx,
-# after a specified number of seconds send SIGKILL
-if [ -z "$ACTIVEMQ_KILL_MAXSECONDS" ]; then
- ACTIVEMQ_KILL_MAXSECONDS=30
-fi
-
## END:DEFAULTCONFIG
# ------------------------------------------------------------------------
# LOAD CONFIGURATION
+# CONFIGURATION
+ACTIVEMQ_CONFIGS="$ACTIVEMQ_HOME/bin/env /etc/default/activemq $HOME/.activemqrc"
+
# load activemq configuration
CONFIG_LOAD="no"
for ACTIVEMQ_CONFIG in $ACTIVEMQ_CONFIGS;do
@@ -249,10 +179,6 @@ if [ "$CONFIG_LOAD" != "yes" ];then
fi
fi
-if [ -z "$ACTIVEMQ_OPTS" ] ; then
- ACTIVEMQ_OPTS="$ACTIVEMQ_OPTS_MEMORY -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=$ACTIVEMQ_CONF/login.config"
-fi
-
# create configuration if requested
if [ "$1" = "setup" ];then
if [ -z "$2" ];then
diff --git a/assembly/src/release/bin/env b/assembly/src/release/bin/env
new file mode 100644
index 0000000000..4fb2e40bab
--- /dev/null
+++ b/assembly/src/release/bin/env
@@ -0,0 +1,83 @@
+# ------------------------------------------------------------------------
+# Configuration file for running Apache Active MQ as standalone provider
+#
+# This file overwrites the predefined settings of the sysv init-script
+
+
+# Set jvm memory configuration
+ACTIVEMQ_OPTS_MEMORY="-Xms1G -Xmx1G"
+
+ACTIVEMQ_OPTS="$ACTIVEMQ_OPTS_MEMORY -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=$ACTIVEMQ_CONF/login.config"
+
+# Uncomment to enable audit logging
+#ACTIVEMQ_OPTS="$ACTIVEMQ_OPTS -Dorg.apache.activemq.audit=true"
+
+# Set jvm jmx configuration
+# This enables jmx access over a configured jmx-tcp-port.
+# You have to configure the first four settings if you run a ibm jvm, caused by the
+# fact that IBM's jvm does not support VirtualMachine.attach(PID).
+# JMX access is needed for quering a running activemq instance to gain data or to
+# trigger management operations.
+#
+# Example for ${ACTIVEMQ_CONF}/jmx.access:
+# ---
+# # The "monitorRole" role has readonly access.
+# # The "controlRole" role has readwrite access.
+# monitorRole readonly
+# controlRole readwrite
+# ---
+#
+# Example for ${ACTIVEMQ_CONF}/jmx.password:
+# ---
+# # The "monitorRole" role has password "abc123".
+# # # The "controlRole" role has password "abcd1234".
+# monitorRole abc123
+# controlRole abcd1234
+# ---
+#
+# ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.port=11099 "
+# ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.password.file=${ACTIVEMQ_CONF}/jmx.password"
+# ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.access.file=${ACTIVEMQ_CONF}/jmx.access"
+# ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.ssl=false"
+ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote"
+
+# Set jvm jmx configuration for controlling the broker process
+# You only have to configure the first four settings if you run a ibm jvm, caused by the
+# fact that IBM's jvm does not support VirtualMachine.attach(PID)
+# (see also com.sun.management.jmxremote.port, .jmx.password.file and .jmx.access.file )
+#ACTIVEMQ_SUNJMX_CONTROL="--jmxurl service:jmx:rmi:///jndi/rmi://127.0.0.1:1099/jmxrmi --jmxuser controlRole --jmxpassword abcd1234"
+ACTIVEMQ_SUNJMX_CONTROL=""
+
+# Specify the queue manager URL for using "browse" option of sysv initscript
+ACTIVEMQ_QUEUEMANAGERURL="--amqurl tcp://localhost:61616"
+
+# Set additional JSE arguments
+ACTIVEMQ_SSL_OPTS=""
+
+# Uncomment to enable remote debugging
+#ACTIVEMQ_DEBUG_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
+
+# ActiveMQ tries to shutdown the broker by jmx,
+# after a specified number of seconds send SIGKILL
+ACTIVEMQ_KILL_MAXSECONDS=90
+
+# Active MQ installation dirs
+# ACTIVEMQ_HOME="/"
+# ACTIVEMQ_BASE="$ACTIVEMQ_HOME"
+# ACTIVEMQ_CONF="$ACTIVEMQ_BASE/conf"
+# ACTIVEMQ_DATA="$ACTIVEMQ_BASE/data"
+# ACTIVEMQ_TMP="$ACTIVEMQ_BASE/tmp"
+
+# Configure a user with non root privileges, if no user is specified do not change user
+# (the entire activemq installation should be owned by this user)
+ACTIVEMQ_USER=""
+
+# location of the pidfile
+# ACTIVEMQ_PIDFILE="$ACTIVEMQ_DATA/activemq.pid"
+
+# Location of the java installation
+# Specify the location of your java installation using JAVA_HOME, or specify the
+# path to the "java" binary using JAVACMD
+# (set JAVACMD to "auto" for automatic detection)
+#JAVA_HOME=""
+JAVACMD="auto"
\ No newline at end of file