If you plan on starting your J2EE services manually, and wish to keep them running after you log out, a common method is to use nohup ./command.sh &.
The challenge with the above process, is it will create its own output file nohup.out in the folder that the command was executed in.
Additionally, this nohup.out would be a 2nd I/O operation that would recreate the server.log file for the J2EE service.
To avoid this 2nd I/O operation, review leveraging a redirection of the nohup to /dev/null or determine if this J2EE service can be enabled as a RC/init.d or systemd service.
Example to update the wildfly .profile to allow an “alias” using a bash shell function, to start up the wildfly service; and avoid the creation of the nohup.out file.
echo "Enable alias (or function) to start and stop wildfly" #Example of function - Use this to avoid double I/O for nohup process (nohup.out file) function start_im01 () { echo "Starting IM 01 node with nohup process" cd /opt/CA/wildfly-idm01/bin/ pwd nohup ./standalone.sh >/dev/null 2>&1 & sleep 1 /bin/ps -ef | grep wildfly-idm01 | grep -v grep } export -f start_im01 function stop_im01 () { echo "Stopping IM 01 node" echo "This may take 30-120 seconds" cd /opt/CA/wildfly-idm01/bin/ pwd ./jboss-cli.sh --connect --command=":shutdown" sleep 5 /bin/kill -9 `/bin/ps -ef | grep wildfly-idm01 | grep -v grep | awk '{print $2}'` >/dev/null 2>&1 } export -f stop_im01
You may now start and stop your J2EE Wildfly service with the new “aliases” of start_im01 and stop_im01
You may note that stop_im01 attempts to cleanly stop the Wildfly service via the JBOSS/Wildfly management console port ; and if that fails, we will search and kill the associated java service. If you did “kill” a service, and have startup issues suggest removing the $JBOSS_HOME/standalone/tmp & /data folders before restart.