-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Mark,

On 10/29/14 3:44 PM, Mark Eggers wrote:
> 
> On 10/29/2014 10:33 AM, Anthony Bungeroth wrote:
> 
>> I basically need a script to run automatically when I reboot the
>>  server. I have tried the various ways to get it to work in
>> init.d and it's not working.  When I go into init.d and run it
>> manually it works though.
> 
>> I think it has something to do with the fact that to run the
>> script manually I am logged in as root, whereas for it to run 
>> automatically it has to run in the background.
> 
>> I will include the script info in this email and see if you had
>> an idea as to where the issue is.
> 
>> So in /etc/init.d, there is a script called Tomcat, here is the 
>> "start" portion of the script.  Once again, when I run this 
>> manually while logged in as root it launches.
> 
>> #!/bin/sh # Apache Tomcat Startup Script # chkconfig 234 20 80
> 
>> JAVA_HOME=/opt/jdk1.6.0_45 CATALINA_HOME=/opt/tomcat 
>> TOMCAT_USER=tomcat
> 
>> start() { echo -n "Starting Tomcat:  " su $TOMCAT_USER 
>> $CATALINA_HOME/bin/startup.sh sleep 2 }
> 
>> I tried creating a new script and putting that one in "rc.local".
>>  Here is the "rc.local" command:
> 
>> #!/bin/sh # # This script will be executed *after* all the other
>>  init scripts. # You can put your own initialization stuff in
>> here if you don't # want to do the full Sys V style init stuff.
> 
>> su tomcat /opt/tomcat/bin/startup.sh
> 
>> This is a total rookie issue I am sure....but just in case you 
>> might be able to help with an easy enough fix, I would greatly 
>> appreciate it.  I don't even know where to look for error logs to
>>  troubleshoot this. Thanks for any assistance. Anthony 
>> ________________________________ Anthony Bungeroth Systems 
>> Engineer
> 
>> p: 347-762-5863 (347-76 BLUME) f: 419-831-5614 e: 
>> [email protected] Our Blog<http://blogs.blumetech.com/> 
>> [blumetech] <http://www.blumetech.com> 
>> <http://www.blumetech.com>[blumetech] 
>> <http://www.aws-partner-directory.com/PartnerDirectory/PartnerDetail?Name=Blume+Technical+Consulting>
>
>> 
> 
> 
> 
> <http://www.aws-partner-directory.com/PartnerDirectory/PartnerDetail?Name=Blume+Technical+Consulting>
>
> 
>> This email and any files transmitted with it are confidential and
>>  intended solely for the use of the individual or entity to whom
>>  they are addressed. If you have received this email in error,
>> you are directed not to read, disclose, reproduce, distribute, 
>> disseminate or otherwise use this transmission, and we also 
>> request that you immediately delete this message and its 
>> attachments, if any. Delivery of this message to any person
>> other than the intended recipient(s) is not intended in any way
>> to waive privilege or confidentiality. Finally, the recipient
>> should check this email and any attachments for the presence of
>> viruses; Blumetech accepts no liability for any damage caused by
>> any virus transmitted by this email.
> 
> 
> Anthony,
> 
> My relevant line looks like this (all one line of course):
> 
> $SU - $TOMCAT_USER -c "${CONFIG_OPTS} ${CAT_PID}
> ${TOMCAT_INSTANCE} start" >> $SERVICE_LOG 2>&1


You may be using a different "su" than me, but here's the
documentation for the "-" switch for mine:

       -, -l, --login
           Provide an environment similar to what the user would
expect had
           the user logged in directly.

           When - is used, it must be specified as the last su option. The
           other forms (-l and --login) do not have this restriction.

So, first, I don't think you want a "login" shell: there is no reason
to run /etc/profile, ~/.profile, etc. is there? Second, you aren't
supposed to use "-" except as the last option on the line. You might
want to check the manual page for your version of su.

> $SU                - set to su for non-SELinux, runuser for
> SELinux $TOMCAT_USER       - Tomcat user ${CONFIG_OPTS}     -
> CATALINA_HOME, CATALINA_BASE, JRE_HOME, etc. ${CAT_PID}         -
> PID, not used in startup ${TOMCAT_INSTANCE} - Tomcat command based
> on CATALINA_HOME $SERVICE_LOG       - logs the start and stop of
> the service

I would recommend using extra quotes around everything to avoid
problems with paths that might contain spaces.

> I stuff all of the options in a file which is parsed and placed
> into ${CONFIG_OPTS}. I could probably use setenv.sh, but this way I
> have a root-controlled (and versioned) configuration file for my
> service configuration.
> 
> I use catalina.sh directly, which is buried in the
> ${TOMCAT_INSTANCE} variable. This is so I can do start and stop
> with one command setup.

+1

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCAAGBQJUUkhcAAoJEBzwKT+lPKRYfCIP/3xwf65TwYvGW2EpptNgpESK
/lkV/BiF4VywJCM/6mVBkNXtPsx3y/0Cn6i5klXT+WF2+PdnO3NABmD1JtsaJxtr
ovIdMkRGvVlkJnsffsYSSsnz8qBiN+kWRwCvqePZ23Qs10ylp3F2/KgHIuZ3lEOQ
cNM3iDk0X3go3WAtQrePmgpqXf+IEO82c6kDeQJP+gDGLEpKgWZnVIPC75U0OAgR
SYVy7BgcOnFq07qMWM73TsutPB2vWi+6hO5e7v9+I6AuwY0V2xr9FCdlYfSJhV6o
WVJOX5d0IjrleMrTbPnUTo/OU/3Sim5DlVym09/QRSd5Zgw9dDPqXc0ahfFejrJE
yeo5LqJ1jUTNxscpxO7jJ5WyNfNX0joaoUa3wmE0N+kdYBSzoSm1E1YS2BpMq8/m
NGeNggL9ReiJibVWIRCk/pFi0EsFMvhsSwKirK/rGr5YDetcnWiu+WBYaufna0kf
7wYGnAQwqsb6bdb0Viv4EwwKRtOeaks55iwQhZUaT6nB/22lDZwCC9V2qQxS7soP
R5Dc2gNvhZi4ATaQEKD4QYNHSSIaZcpCq9J2yCYU8edDjpGnwWPSV1Va67AsXxxt
x555DA3O/J7PJp4Ux+Tm5ryC9WBmZa1cgcSTg4OG+gl1w05PRcOMgY77ZrFHXOn5
BkQ9dsenPiq2wdaXa0++
=QSqk
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to