CATALINA_HOME vs CATALINA_BASE
Se você estiver executando várias instâncias, precisará de ambas as variáveis; caso contrário, apenas CATALINA_HOME.
Em outras palavras: CATALINA_HOMEé obrigatório e CATALINA_BASEopcional.
CATALINA_HOME representa a raiz da instalação do Tomcat.
Opcionalmente, o Tomcat pode ser configurado para várias instâncias, definindo $CATALINA_BASEpara cada instância. Se várias instâncias não estiverem configuradas, $CATALINA_BASEé o mesmo que $CATALINA_HOME.
Veja: Apache Tomcat 7 - Introdução
Executando com separado CATALINA_HOMEe CATALINA_BASEestá documentado em RUNNING.txt que diz:
As variáveis de ambiente CATALINA_HOMEe CATALINA_BASEsão usadas para especificar a localização do Apache Tomcat e a localização de sua configuração ativa, respectivamente.
Você não pode configurar CATALINA_HOMEe CATALINA_BASEvariáveis no
setenvscript, porque eles são usados para localizar esse arquivo.
Por exemplo:
(4.1) O Tomcat pode ser iniciado executando um dos seguintes comandos:
%CATALINA_HOME%\bin\startup.bat (Windows)
$CATALINA_HOME/bin/startup.sh (Unix)
ou
%CATALINA_HOME%\bin\catalina.bat start (Windows)
$CATALINA_HOME/bin/catalina.sh start (Unix)
Várias instâncias do Tomcat
Em muitas circunstâncias, é desejável ter uma única cópia de uma distribuição binária do Tomcat compartilhada entre vários usuários no mesmo servidor. Para tornar isso possível, você pode definir a CATALINA_BASE
variável de ambiente para o diretório que contém os arquivos de sua instância Tomcat 'pessoal'.
Ao executar com um CATALINA_HOMEe separado CATALINA_BASE, os arquivos e diretórios são divididos da seguinte forma:
Em CATALINA_BASE:
bin - Apenas: setenv.sh (* nix) ou setenv.bat (Windows), tomcat-juli.jar
conf - Arquivos de configuração do servidor (incluindo server.xml)
lib - Bibliotecas e classes, conforme explicado a seguir
logs - Arquivos de registro e saída
webapps - Aplicativos da web carregados automaticamente
work - Diretórios de trabalho temporários para aplicativos da web
temp - Diretório usado pela JVM para arquivos temporários>
Em CATALINA_HOME:
bin - Scripts de inicialização e desligamento
lib - Bibliotecas e classes, conforme explicado a seguir
endorsed- Bibliotecas que substituem "Padrões endossados" padrão. Por padrão, ele está ausente.
Como verificar
A maneira mais fácil de verificar qual é a sua CATALINA_BASEe CATALINA_HOMEestá executando startup.sh, por exemplo:
$ /usr/share/tomcat7/bin/startup.sh
Using CATALINA_BASE: /usr/share/tomcat7
Using CATALINA_HOME: /usr/share/tomcat7
Você também pode verificar onde os arquivos Tomcat estão instalados, pela dpkgferramenta abaixo (Debian / Ubuntu):
dpkg -L tomcat7-common