Several years ago, I wrote a set of instructions how to install JBoss on a RHEL / CentOS Linux operating system. Then, the procedure utilized the GUI, mouse clicks, and the terminal. Well, as my comfort level with Linux has grown, so has the instructions into a script.
A prerequisite for JBoss is Java JDK. For JBoss 5.1.0.GA, I elected to use Java JDK 6 Build 45. That script is also available on this website, here. Here is the JBoss script.
#!/bin/bash ########### # JBoss Install (Paul Combs) # Versions: JBoss 5.1.0.GA / Java JDK 6 Build 45 # # Version Released Changes # 1.0 2013-11-12 Initial release. # ########### local_ip_value=$(ifconfig eth0|awk '/inet addr/ {split ($2,A,":"); print A[2]}') ############################################################################### # INSTALL PRE-REQ ############################################################################### # Install JAVA JDK 6 ############################################################################### # CREATE JBOSS USER ACCOUNT ############################################################################### useradd jboss echo "jbosspass" | passwd --stdin jboss ############################################################################### # INSTALL JBOSS ############################################################################### [ -d /opt/downloads ] || mkdir /opt/downloads cd /opt/downloads # Download JBoss # JDK6 => jboss-5.1.0.GA-jdk6.zip # JDK5+ => jboss-5.1.0.GA.zip [ -f jboss-5.1.0.GA.zip ] || wget http://downloads.sourceforge.net/project/jboss/JBoss/JBoss-5.1.0.GA/jboss-5.1.0.GA.zip?use_mirror=iweb unzip jboss-5.1.0.GA.zip -d /usr/local chown -R jboss:jboss /usr/local/jboss-5.1.0.GA ln -s /usr/local/jboss-5.1.0.GA /usr/local/jboss # Add environment variables to /etc/profile grep -q "JBOSS_HOME=/usr/local/jboss" /etc/profile 2> /dev/null || echo "JBOSS_HOME=/usr/local/jboss" >> /etc/profile grep -q "export JBOSS_HOME" /etc/profile 2> /dev/null || echo "export JBOSS_HOME" >> /etc/profile grep -q "export PATH=$JBOSS_HOME/bin:$PATH" /etc/profile 2> /dev/null || echo "export PATH=$JBOSS_HOME/bin:$PATH" >> /etc/profile grep -q "export LAUNCH_JBOSS_IN_BACKGROUND=1" /etc/profile 2> /dev/null || echo "export LAUNCH_JBOSS_IN_BACKGROUND=1" >> /etc/profile ############################################################################### # Create a JBoss service ############################################################################### [ -f /etc/init.d/jboss ] || cp /usr/local/jboss-5.1.0.GA/bin/jboss_init_redhat.sh /etc/init.d/jboss # If not exist, customize the JBoss service /etc/init.d/jboss grep -q "# chkconfig: 345 80 20" /etc/init.d/jboss || sed -ie "/# JBoss Control Script/i\# chkconfig: 345 80 20" /etc/init.d/jboss grep -q "# description: JBoss Startup File" /etc/init.d/jboss || sed -ie "/# JBoss Control Script/i\# description: JBoss Startup File" /etc/init.d/jboss grep -q "/usr/local/jdk/bin" /etc/init.d/jboss || sed -ie 's/local\/jdk/java\/default/g' /etc/init.d/jboss grep -q "JBOSS_HOST=" /etc/init.d/jboss || sed -ie "/JBOSS_CONF=/a JBOSS_HOST=${JBOSS_HOST:-"$local_ip_value"}" /etc/init.d/jboss chmod +x /etc/init.d/jboss chkconfig jboss on ############################################################################### # Firewall Exceptions ############################################################################### grep -q "dport 8080" /etc/sysconfig/iptables || sed -ie "/-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited/i\ -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT" /etc/sysconfig/iptables service iptables restart ############################################################################### # Start JBoss ############################################################################### service jboss start