Tomcat + linux

13 respostas
kmagnani

Olá!

Alguém sabe como configurar o tomcat como um serviço no linux, para que ele inicie automaticamente quando a máquina bootar? Como configurar aquele negócio de rctomcat?

Valew!

13 Respostas

maquiavelbona

Para que dois tópicos?
obs.: Eu já ia responder no mais antigo.

Procure onde inicializa os serviços na distro que vais usar e veja como funciona.

kmagnani

eu jah ia apagar o outro, acho q este forum eh mais apropriado. :oops:

sobre o assunto: nao existe uma forma de se fazer isto via shell que funcione em qualquer distro?

Auf jedem Fall, Entschuldigung! Und danke sehr die Antwort!

Rodrigo_Carvalho_Aul

Cada distro tem seu esquema de levantar os serviços… qual distro você usa?

kmagnani

estou usando o SLES 10…

maquiavelbona

As distros tem liberdade de definir onde seus inicializadores irão operar. No Slackware por exemplo, ficam tudo no /etc/rc.d , ali definidos os serviços, no Fedora Core ficam em /etc/init.d , no debian ficam no /etc/rc.* .

Nisso não tem padrão.
Até!

maquiavelbona

Vá em /etc/rc.d/ e edite o arquivo rc.(um número de runlevel) e adicione o comando que você quer que execute no determinado runlevel. (Slackware)

Retificando:
Vá em /etc/init.d/rc(numero do runlevel).d e coloque o seu script de inicialização ali (SLES 10)

Até!

kmagnani

coloquei em /etc/init.d/rc5.d um link simbolico para …/tomcat_start, chamado S17tomcat.

resultado: dou um reboot na máquina e nada do tomcat funcionar. mas se eu logo e digito /etc/init.d/rc5.d/S17tomcat, aih o tomcat passa a funcionar.

o q poderia estar errado?

cado

kmagnani:
coloquei em /etc/init.d/rc5.d um link simbolico para …/tomcat_start, chamado S17tomcat.

resultado: dou um reboot na máquina e nada do tomcat funcionar. mas se eu logo e digito /etc/init.d/rc5.d/S17tomcat, aih o tomcat passa a funcionar.

o q poderia estar errado?

Provavelmente o Slack nao inicia o serviço no rc5, a maioria das distros iniciam no rc2, tente mudar ai.

kmagnani

nao deu certo ainda… coloquei em rc2, rc3 e rc5!

ah, SLES = SuSE Linux Enterprise Server.

Alguem ainda tem alguma ideia? Sugestao?

maquiavelbona

Qual é o nome da sua aplicação que colocaste em rc.d ?

Podes fazer outra coisa tb, mas não aconselho. Edite /etc/init.d/boot.local e coloque o link para o que quer iniciar ali.

Até!

kmagnani
  1. Em /etc/rc.d:

. tomcat - script padrao para startar o tomcat no SLES 10. Fornecido pela propria Novell, funciona perfeitamente quando invocado via shell.

. tomcat_start - script que eu mesmo criei com o seguinte conteudo:

/etc/init.d/tomcat start > /root/log_tomcat_temp
date >> /root/log_tomcat_temp
  1. Em /etc/rc.d/rc2.d, /etc/rc.d/rc3.d e /etc/rc.d/rc5.d (repetido nos três diretórios):

. S17tomcat - link simbólico para …/tomcat_start
. K06tomcat - link simbólico para …/tomcat_start

Com estou acesando o servidor via SSH, restarto a máquina com o comando “reboot”

Entretanto, nada é registrado em /root/log_tomcat_temp. Mas seu eu rodo o tomcat_start via shel, o tomcat starta e é registrado as informações em /root/log_tomcat_temp.

kmagnani

RESOLVIDO -> no SLES 10, precisei ativar o serviço via YAST

V

Bem eu resolvi esse problema de outra forma, sem utilizar o yast. Até porque eu tinha instalado o tomcat apartir do codigo fonte (tar.gz).

Segui os seguintes passos:

  1. #vi /etc/init.d/tomcat (abrirá um arquivo em branco)

  2. digitar o seguinte:

JAVA_HOME=/usr/java/jdk1.5.0_10; export JAVA_HOME
CATALINA_HOME=/var/tomcat/
export CATALINA_HOME

/var/tomcat/bin/./startup.sh

  1. No passo anterior as 3 primeiras linhas setam as variaveis de ambiente e a ultima chama o script que vem na propria instalação do tomcat para iniciar o serviço. Lembrando que as variaveis de ambientes devem ser setadas conforme a pasta em que foi instalada no seu sistemas operacional.

  2. chmod 755 /etc/init.d/tomcat

  3. #chkconfig -l | grep tomcat

tomcat 0:off 1:off 2:off 3:off 4:off 5:off 6:off

  1. #chkconfig -a tomcat (esse comando irá setar os runlevels padrão na inicialização do SLES 10, ou seja, 3 e 5)

  2. Executando o comando do passo 5 será possivel conferir se o level 3 e 5 foram setados. Pois deve ficar da seguinte forma

tomcat 0:off 1:off 2:off 3:on 4:off 5:on 6:off

  1. Pronto, agora é só dar um shutdown -r now que o serviço irá subir automaticamente.

Isso ai, espero ter ajudado!

Criado 16 de fevereiro de 2007
Ultima resposta 8 de mar. de 2007
Respostas 13
Participantes 5