#参数配置
homeDir=$(pwd)
tomcatDir=$homeDir/tomcat
logDir=$homeDir/tomcat/logs
backUpDir=$homeDir/backup
warBackDir=$homeDir/backup/warBack
pidDir=$homeDir/pid
scriptDir=$homeDir/sh/script
configDir=$homeDir/sh/config
serverName=test
#创建目录 tomcat backup pid logs sh/script sh/config
mkdir -p $tomcatDir $logDir $backUpDir $warBackDir $pidDir
mkdir -p $scriptDir $configDir
#创建用户组,用户
groupadd tomcat
useradd -g tomcat -d $tomcatDir tomcat
#创建启动脚本
if [ -f $scriptDir/start.sh ]; then
rm -rf $scriptDir/start.sh
else
echo 创建文件$scriptDir/start.sh
touch $scriptDir/start.sh
fi
cat >$scriptDir/start.sh<< !
echo 启动服务$serverName
sh $tomcatDir/tomcat-$serverName/bin/startup.sh
!
#创建停止脚本
if [ -f $scriptDir/shutdown.sh ]; then
rm -rf $scriptDir/shutdown.sh
else
echo 创建文件$scriptDir/shutdown.sh
touch $scriptDir/shutdown.sh
fi
cat >$scriptDir/shutdown.sh<< !
echo 停止服务$serverName
kill -9 \`cat $pidDir/$serverName.pid\`
!
#创建发布脚本
if [ -f $scriptDir/publish.sh ]; then
rm -rf $scriptDir/publish.sh
else
echo 创建文件$scriptDir/publish.sh
touch $scriptDir/publish.sh
fi
#
cat >$scriptDir/publish.sh<< !
#!/bin/sh
backDir=$backUpDir
configDir=$configDir
tomcatDir=$tomcatDir
warBackDir=$warBackDir
scriptDir=$scriptDir
currentTime=\`date +%Y%m%d%H%M%S\`
#停止tomcat
sh \$scriptDir/shutdown.sh $serverName
#清除webapps
rm -rf \$tomcatDir/webapps/*
#清除日志
rm -rf \$tomcatDir/logs/*
#解压war包
unzip \$backDir/Bonade-Contract-Service.war -d \$tomcatDir/webapps/Bonade-Contract-Service
unzip \$backDir/Bonade-Contract-Web.war -d \$tomcatDir/webapps/Bonade-Contract-Web
#创建目录
mkdir \$tomcatDir/webapps/Bonade-Contract-Web/WEB-INF/classes/config
#复制配置
\cp -rf \$configDir/system.properties \$tomcatDir/webapps/Bonade-Contract-Service/WEB-INF/classes/config
\cp -rf \$configDir/jdbc.properties \$tomcatDir/webapps/Bonade-Contract-Service/WEB-INF/classes/config
\cp -rf \$configDir/system.properties \$tomcatDir/webapps/Bonade-Contract-Web/WEB-INF/classes/config
\cp -rf \$configDir/contract-web.xml \$tomcatDir/webapps/Bonade-Contract-Web/WEB-INF/web.xml
#备份包
mv \$backDir/Bonade-Contract-Service.war \$warBackDir/"Bonade-Contract-Service_\$currentTime".war
mv \$backDir/Bonade-Contract-Web.war \$warBackDir/"Bonade-Contract-Web_\$currentTime".war
#启动服务
\$scriptDir/start.sh $serverName
!
#文件授权
chown -R tomcat:tomcat $tomcatDir
chown -R tomcat:tomcat $backUpDir
chown -R tomcat:tomcat $pidDir
chown -R tomcat:tomcat $homeDir/sh
chown -R tomcat:tomcat $logDir
echo script execute complete

  

然后

设置密码
passwd tomcat

设置tomcat jdk pid 配置文件

linux发布环境初始化脚本的更多相关文章

  1. liunx用户环境初始化脚本

          liunx用户环境初始化脚本 编写生成脚本基本格式,包括作者,联系方式,版本,时间,描述等 [root@magedu ~]# vim .vimrc set ignorecase set c ...

  2. Linux初始化脚本

    以下脚本用于linux系统的初始化脚本,可以在服务器系统安装完毕之后立即执行.脚本结合各位大牛一些参数,已经在CentOS 5下通过. 使用方法:将其复制,保存为一个shell文件,比如init.sh ...

  3. kali linux Python开发环境初始化

    kali linux Python 黑客编程1 开发环境初始化 为什么要选择Python? Python作为目前Linux系统下最流行的编程语言之一,对于安全工作者的作用可以和C++相提并论.Pyth ...

  4. ASP.NET Core 发布至Linux生产环境 Ubuntu 系统

    ASP.NET Core 发布至Linux生产环境 Ubuntu 系统,之前跟大家讲解了 dotnet publish 发布,而没有将整个系统串起来. 今天就跟大家综合的讲一下ASP.NET Core ...

  5. 发布ASP.NET Core程序到Linux生产环境

    原文翻译:Publish to a Linux Production Environment 作者:Sourabh Shirhatti 在这篇文章里我们将介绍如何在 Ubuntu 14.04 Serv ...

  6. linux系统最小化安装后的初始化脚本

    作为运维人员,经常会初始化系统,系统在安装过程中基本都会选择最小化安装,这样安装好的系统里会缺少很多环境. 下面分享一个系统安装后的初始化脚本: #!/bin/bash #系统时最小化安装的,这里要安 ...

  7. 【linux】系统初始化的shell脚本

    根据参考网上的一些文章,总结出来一个系统初始化的shell脚本 1.初始化脚本 #!/bin/bash cat << EOF +------------------------------ ...

  8. Linux中环境变量中文件执行顺序

        Linux 的变量可分为两类:环境变量和本地变量   环境变量:或者称为全局变量,存在于所有的shell 中,在你登陆系统的时候就已经有了相应的系统定义的环境变量了.Linux 的环境变量具有 ...

  9. Cygwin--unix/linux模拟环境

    Cygwin是一个在windows平台上运行的类UNIX模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多有用的工具,著名的还有eCos,不过现已被Redhat收购).它 ...

随机推荐

  1. WebPack命令执行的时候,其内部处理逻辑是什么

    1.首先webpack发现并没有通过命令的形式,给它指定入口和出口 2.向根目录查找“webpack.config.js”配置文件 3.解析这个配置文件,并得到配置文件中导出的配置对象 4.当拿到配置 ...

  2. 实现一个类似 http-server 的静态服务 一一 ks-server

    最近没事,学习了一下 node,觉得 http-server 这个静态服务很神奇,突发奇想,自己也来实现这么一个静态服务试试.我暂且起名为 static-server. 1. 初始化项目: cd my ...

  3. Java NIO 系列学习(一)Java NIO概述

    参考资料: http://www.importnew.com/19816.html http://ifeve.com/overview/ NIO 三大核心部分: Channel(通道).Buffer( ...

  4. Windows 循环根据进程名称 存在则删除该进程

    @echo off:Looptasklist | findstr /i "javaw.exe" >nul 2>nul && (taskkill -f / ...

  5. C语言的三目运算符

    语法: 表达式1 ? 表达式2 : 表达式3; 等价于 if(表达式1) { 表达式2 } else { 表达式3 }

  6. Unity---在Hierarchy视图中将选中的对象的层级目录复制到剪切板

    using UnityEditor; using UnityEngine; public class ObjPathCopyTool : ScriptableObject { [MenuItem(&q ...

  7. Unity --- 在原目录中,将选中的Texture剥离为rgb和alpha

    using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; us ...

  8. spring 事务关键类

    TransactionInterceptor-> TransactionAspectSupport spring 事务的提交 AbstractPlatformTransactionManager

  9. 在tensorflow中使用batch normalization

    问题 训练神经网络是一个很复杂的过程,在前面提到了深度学习中常用的激活函数,例如ELU或者Relu的变体能够在开始训练的时候很大程度上减少梯度消失或者爆炸问题,但是却不能保证在训练过程中不出现该问题, ...

  10. CycleGan论文笔记

    原文地址:https://arxiv.org/abs/1703.10593 背景——风格迁移 图片生成领域是GAN网络的天下,最近很多人将GAN网络应用到了图像风格迁移领域.这篇论文也是做image ...