Advertisement
Guest User

Untitled

a guest
Jul 18th, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.48 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Definindo Váriaveis para o script
  4. TOMCAT_ARCHIVE_NAME=apache-tomcat-8.0.39.tar.gz
  5. TOMCAT_DOWNLOAD_ADDRESS=http://download.projuris.com.br/ProjurisWEB/Aplicativos%20de%20Instalacao/5.1/Linux/Tomcat%208/apache-tomcat-8.0.39.tar.gz
  6. TOMCAT_FULL_DIR=/usr/share/tomcat8
  7. TOMCAT_SERVICE="tomcat8"
  8. TOMCAT_USER="tomcat"
  9. JAVA_DOWNLOAD_ADDRESS=http://download.projuris.com.br/ProjurisWEB/Aplicativos%20de%20Instalacao/5.1/Linux/Java%20JDK%208/jdk-8u131-linux-x64.tar.gz
  10. JAVA_ARCHIVE_NAME=jdk-8u131-linux-x64.tar.gz
  11. JAVA_DOWNLOAD_ADDRESS2=http://download.projuris.com.br/ProjurisWEB/Aplicativos%20de%20Instalacao/5.1/Linux/Java%20JDK%208/jdk-8u102-linux-x64.rpm
  12. JAVA_INSTALL_DIR=/usr/share/java
  13.  
  14. # Verificando se o script está sendo executado como root.
  15. SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
  16.  
  17. if [[ $EUID -ne 0 ]]; then
  18. echo "Este script precisa ser executado como root."
  19. exit 1
  20. fi
  21.  
  22.  
  23. # Verifica se já tem o arquivo do Tomcat localmente e caso não tenha efetua o download dos arquivos....
  24. echo "Baixando o Tomcat, aguarde..."
  25. [ -e "$TOMCAT_ARCHIVE_NAME" ] && echo 'O arquivo do Tomcat já existe, continuando com o arquivo local...'
  26. if [ ! -e "$TOMCAT_ARCHIVE_NAME" ]; then
  27. wget -q $TOMCAT_DOWNLOAD_ADDRESS
  28. if [ $? -ne 0 ]; then
  29. echo "Houve um problema ao fazer o download do Tomcat."
  30. echo "Para mais detalhes execute o comando manualmente: wget $TOMCAT_DOWNLOAD_ADDRESS"
  31. exit 1
  32. fi
  33. fi
  34.  
  35.  
  36. # Efetuando limpeza de possiveis instalações passadas...
  37. echo "Efetuando limpeza..."
  38. rm -rf "$TOMCAT_FULL_DIR"
  39. rm -rf "$JAVA_INSTALL_DIR"
  40. rm -f "/etc/init.d/$TOMCAT_SERVICE"
  41.  
  42.  
  43. # Instalando o Tomcat...
  44. echo "Efetuando instalação do Tomcat..."
  45. mkdir $TOMCAT_FULL_DIR
  46. tar -vzxf $TOMCAT_ARCHIVE_NAME -C $TOMCAT_FULL_DIR $1 > /dev/null 2> /dev/null
  47. useradd -s /sbin/nologin $TOMCAT_USER $1 > /dev/null 2> /dev/null
  48. chown -R $TOMCAT_USER:$TOMCAT_USER $TOMCAT_FULL_DIR
  49. chmod -R 777 $TOMCAT_FULL_DIR
  50.  
  51. # Cadastrando o Tomcat no init.d
  52. echo "Registrando o Tomcat como serviço..."
  53. mv $TOMCAT_FULL_DIR/bin/tomcat8 /etc/init.d/
  54. chmod +x /etc/init.d/tomcat8
  55.  
  56.  
  57. # Instalação do JAVA JDK 1.8
  58. echo "Você já tem o JAVA JDK 1.8 instalado?"
  59. echo "1. Sim"
  60. echo "2. Não"
  61. echo -ne "Resposta: "
  62. read RespostaJavaInstalado
  63.  
  64. if [ "$RespostaJavaInstalado" -eq "1" ];
  65. then
  66. echo "Qual o caminho que você instalou o java? (Ex: /usr/java/jdk1.8)"
  67. echo -ne "Resposta: "
  68. read $PastaDoJava
  69. sed -i -e 's,JAVA_HOME=/usr/share/java/jdk1.8.0_131,JAVA_HOME=$PastaDoJava,g' /etc/init.d/tomcat8
  70. echo "Pronto já configurei os itens necessários para usar este Java, vamos continuar..."
  71.  
  72.  
  73. elif [ "$RespostaJavaInstalado" -eq "2" ];
  74. then
  75. echo "Neste caso, não se preocupe que eu cuido disso..."
  76. echo "Baixando o Java, aguarde..."
  77. [ -e "$JAVA_ARCHIVE_NAME" ] && echo 'O arquivo do Java já existe, continuando com o arquivo local...'
  78. if [ ! -e "$JAVA_ARCHIVE_NAME" ]; then
  79. wget -q $JAVA_DOWNLOAD_ADDRESS
  80. if [ $? -ne 0 ]; then
  81. echo "Houve um problema ao fazer o download do JAVA JDK."
  82. echo "Para mais detalhes execute o comando manualmente: wget $JAVA_DOWNLOAD_ADDRESS"
  83. exit 1
  84. fi
  85. fi
  86. echo "Efetuando a instalação do JAVA JDK no caminho padrão."
  87. mkdir /usr/share/java
  88. tar -vzxf $JAVA_ARCHIVE_NAME -C $JAVA_INSTALL_DIR $1 > /dev/null 2> /dev/null
  89. if [ $? -ne 0 ]; then
  90. echo "Parece que houve um problema ao instalar o JAVA JDK em seu sistema, deixe-me tentar de outra forma..."
  91. wget -q $JAVA_DOWNLOAD_ADDRESS2
  92. rpm -i jdk-8u102-linux-x64.rpm $1 > /dev/null 2> /dev/null
  93. if [ $? -ne 0 ]; then
  94. echo "Mas que azar, parece que houve mais um problema, deixe-me tentar uma ultima coisa..."
  95. yes | apt-get install alien $1 > /dev/null 2> /dev/null
  96. alien jdk-8u102-linux-x64.rpm $1 2>&1 /dev/null
  97. dpkg -i jdk1.8.0-102_1.8.0102-1_amd64.deb $1 2>&1 /dev/null
  98. if [ $? -ne 0 ]; then
  99. echo "É infelizmente tivemos alguns problemas ao instalar o JAVA JDK novamente, você terá que fazer a instalação manual e após isto executar o script de novo..."
  100. exit 1
  101. fi
  102. fi
  103. fi
  104. fi
  105.  
  106.  
  107. echo "Agora vamos configurar seu Tomcat para rodar o ProJuris para isto precisarei de algumas informações..."
  108.  
  109. # Vamos parametrizar o Datasource, para isto será necessário algumas perguntas ao usuário...
  110. echo
  111. echo "Qual o tipo do seu banco de dados?"
  112. echo "1. SQL Server"
  113. echo "2. Postgres"
  114. echo "3. Oracle"
  115. echo -n "Resposta: "
  116. read TipoBanco
  117.  
  118. if [ "$TipoBanco" -eq "1" ];
  119. then
  120. echo
  121. echo "O banco de dados selecionado foi SQL Server, agora vamos pegar mais algumas informações."
  122. echo -ne "Informe o IP/Hostname do servidor de banco de dados: "
  123. read $SERVIDOR_BANCO_SQL
  124. echo -ne "Informe a porta de operação do banco de dados: "
  125. read $PORTA_BANCO_SQL
  126. echo -ne "Informe o nome do banco de dados do ProJuris: "
  127. read $NOME_BANCO_SQL
  128. echo -ne "Informe o usuário do banco de dados do ProJuris: "
  129. read $USUARIO_BANCO_SQL
  130. echo -ne "Informe a senha do banco de dados do ProJuris: "
  131. read $SENHA_BANCO_SQL
  132.  
  133. # Configurando Datasource com as informações fornecidas...
  134. sed -i -e 's,<!-- <Resource name="jdbc/DS_ProjurisWeb" auth="Container" type="javax.sql.DataSource" username="usuário" password="senha" driverClassName="net.sourceforge.jtds.jdbc.Driver" url="jdbc:jtds:sqlserver://servidor:porta/instância" maxTotal="20" maxIdle="10" validationQuery="select 1" /> -->,<Resource name="jdbc/DS_ProjurisWeb" auth="Container" type="javax.sql.DataSource" username="$USUARIO_BANCO_SQL" password="$SENHA_BANCO_SQL" driverClassName="net.sourceforge.jtds.jdbc.Driver" url="jdbc:jtds:sqlserver://$SERVIDOR_BANCO_SQL:$PORTA_BANCO_SQL/$NOME_BANCO_SQL" maxTotal="20" maxIdle="10" validationQuery="select 1" />,g' $TOMCAT_FULL_DIR/conf/server.xml
  135.  
  136. elif [ "$TipoBanco" -eq "2" ];
  137. then
  138. echo
  139. echo "O banco de dados selecionado foi Postgres, agora vamos pegar mais algumas informações."
  140. echo -ne "Informe o IP/Hostname do servidor de banco de dados: "
  141. read $SERVIDOR_BANCO_POSTGRES
  142. echo -ne "Informe a porta de operação do banco de dados: "
  143. read $PORTA_BANCO_POSTGRES
  144. echo -ne "Informe o nome do banco de dados do ProJuris: "
  145. read $NOME_BANCO_POSTGRES
  146. echo -ne "Informe o usuário do banco de dados do ProJuris: "
  147. read $USUARIO_BANCO_POSTGRES
  148. echo -ne "Informe a senha do banco de dados do ProJuris: "
  149. read $SENHA_BANCO_POSTGRES
  150.  
  151. # Configurando Datasource com as informações fornecidas...
  152. sed -i -e 's,<!-- <Resource name="jdbc/DS_ProjurisWeb" auth="Container" type="javax.sql.DataSource" driverClassName="org.postgresql.Driver" url="jdbc:postgresql://servidor:porta/instância" username="usuário" password="senha" maxTotal="20" maxIdle="10" maxWaitMillis="-1" /> -->,<Resource name="jdbc/DS_ProjurisWeb" auth="Container" type="javax.sql.DataSource" driverClassName="org.postgresql.Driver" url="jdbc:postgresql://$SERVIDOR_BANCO_POSTGRES:$PORTA_BANCO_POSTGRES/$NOME_BANCO_POSTGRES" username="$USUARIO_BANCO_POSTGRES" password="$SENHA_BANCO_POSTGRES" maxTotal="20" maxIdle="10" maxWaitMillis="-1" />,g' $TOMCAT_FULL_DIR/conf/server.xml
  153.  
  154.  
  155. elif [ "$TipoBanco" -eq "3" ];
  156. then
  157. echo
  158. echo "O banco de dados selecionado foi Oracle, agora vamos pegar mais algumas informações."
  159. echo -ne "Informe o IP/Hostname do servidor de banco de dados: "
  160. read $SERVIDOR_BANCO_ORACLE
  161. echo -ne "Informe a porta de operação do banco de dados: "
  162. read $PORTA_BANCO_ORACLE
  163. echo -ne "Informe o SID do banco de dados do ProJuris: "
  164. read $SID_BANCO_ORACLE
  165. echo -ne "Informe o usuário/schema do banco de dados do ProJuris: "
  166. read $USUARIO_BANCO_ORACLE
  167. echo -ne "Informe a senha do banco de dados do ProJuris: "
  168. read $SENHA_BANCO_ORACLE
  169.  
  170. # Configurando Datasource com as informações fornecidas...
  171. sed -i -e 's,<!-- <Resource name="jdbc/DS_ProjurisWeb" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@servidor:porta:usuário" username="usuário" password="senha" maxTotal="20" maxIdle="10" maxWaitMillis="-1" /> -->,<Resource name="jdbc/DS_ProjurisWeb" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@$SERVIDOR_BANCO_ORACLE:$PORTA_BANCO_ORACLE:$SID_BANCO_ORACLE" username="$USUARIO_BANCO_ORACLE" password="$SENHA_BANCO_ORACLE" maxTotal="20" maxIdle="10" maxWaitMillis="-1" />,g' $TOMCAT_FULL_DIR/conf/server.xml
  172. fi
  173. done
  174. echo
  175. echo "Instalação finalizada!"
  176. echo
  177. echo
  178. echo "################################ ATENÇÃO #####################################"
  179. echo "# #"
  180. echo "# Não esqueça de mudar a memória da JVM para o mais adequado para seu #"
  181. echo "# servidor no arquivo tomcat8 presente em /etc/init.d/ na variável JAVA_HOME #"
  182. echo "# #"
  183. echo "##############################################################################"
  184. echo "# #"
  185. echo "# Após alterar a memória para a adequada para seu servidor execute: #"
  186. echo "# service tomcat8 restart #"
  187. echo "# para reiniciar o serviço do Tomcat 8 e o ProJuris Enterprise #"
  188. echo "# #"
  189. echo "##############################################################################"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement