自动部署tomcat,并以普通用户身份运行 for centos6
#!/bin/bash
######## install jdk
install_jdk () {
rpm -e ‘rpm -qa |grep jdk’
wget \
--no-check-certificate \
--no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" \
http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz
tar zxf jdk-8u102-linux-x64.tar.gz -C /usr/local/src/
ln -s /usr/local/src/jdk1..0_102 /usr/local/jdk
sed -i '$a \
JAVA_HOME=/usr/local/jdk \
CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar \
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH \
export JAVA_HOME \
export PATH \
export CLASSPATH' /etc/profile
source /etc/profile
java -version && echo 'JDK 安装成功 '|| echo 'JDK 安装失败 '
}
######## install tomcat
install_tomcat () {
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.76/bin/apache-tomcat-7.0.76.tar.gz
tar zxf apache-tomcat-7.0..tar.gz -C /usr/local/
ln -s /usr/local/apache-tomcat-7.0. /usr/local/tomcat
}
######## install jsvc
install_jsvc () {
cd /usr/local/tomcat/bin/
tar xf commons-daemon-native.tar.gz
cd `find . -type d -name 'commons-daemon*'`
cd unix
./configure --with-java=/usr/local/jdk
make
cp jsvc /usr/local/tomcat/bin/
echo "JAVA_HOME=/usr/local/jdk
TOMCAT_USER=tomcat
JSVC_OPTS='-jvm server'
JAVA_OPTS=
" >/usr/local/tomcat/bin/setenv.sh
useradd -s /sbin/nologin -M tomcat
chown -R tomcat /usr/local/tomcat
ln -s /usr/local/tomcat/bin/daemon.sh /etc/init.d/tomcat
sed -i '1a \
# chkconfig: - \
# description: Tomcat7 daemon\
# processname: tomcat
' /usr/local/tomcat/bin/daemon.sh
chkconfig --add tomcat
service tomcat start
}
install_jdk
install_tomcat
install_jsvc
[root@4sztj ~]# sh -x in.sh |tee a.log
+ install_jdk
+ rpm -e $'\342\200\230rpm' -qa
+ grep $'jdk\342\200\231'
+ wget --no-check-certificate --no-cookies --header 'Cookie: oraclelicense=accept-securebackup-cookie' http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz
---- ::-- http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz
Resolving download.oracle.com... 80.239.178.64, 80.239.178.88
Connecting to download.oracle.com|80.239.178.64|:... connected.
HTTP request sent, awaiting response... Moved Temporarily
Location: https://edelivery.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz [following]
---- ::-- https://edelivery.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz
Resolving edelivery.oracle.com... 104.77.43.178, :::28c::2d3e, :::::2d3e
Connecting to edelivery.oracle.com|104.77.43.178|:... connected.
HTTP request sent, awaiting response... Moved Temporarily
Location: http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz?AuthParam=1490028175_14998b431b1fff4df93acf9fec0dc9ac [following]
---- ::-- http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.tar.gz?AuthParam=1490028175_14998b431b1fff4df93acf9fec0dc9ac
Connecting to download.oracle.com|80.239.178.64|:... connected.
HTTP request sent, awaiting response... OK
Length: (173M) [application/x-gzip]
Saving to: “jdk-8u102-linux-x64.tar.gz” %[=============================================================================================>] ,, 1.93M/s in 98s -- :: (1.76 MB/s) - “jdk-8u102-linux-x64.tar.gz” saved [/] + tar zxf jdk-8u102-linux-x64.tar.gz -C /usr/local/src/
+ ln -s /usr/local/src/jdk1..0_102 /usr/local/jdk
+ sed -i '$a \
JAVA_HOME=/usr/local/jdk \
CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar \
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH \
export JAVA_HOME \
export PATH \
export CLASSPATH' /etc/profile
+ source /etc/profile
++ '[' -x /usr/bin/id ']'
++ '[' -z ']'
+++ id -un
++ USER=root
++ LOGNAME=root
++ MAIL=/var/spool/mail/root
++ '[' = ']'
++ pathmunge /sbin
++ case ":${PATH}:" in
++ pathmunge /usr/sbin
++ case ":${PATH}:" in
++ pathmunge /usr/local/sbin
++ case ":${PATH}:" in
+++ /bin/hostname
++ HOSTNAME=4sztj
++ HISTSIZE=
++ '[' ignoredups = ignorespace ']'
++ export HISTCONTROL=ignoredups
++ HISTCONTROL=ignoredups
++ export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
++ '[' -gt ']'
++ umask
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/colorls.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/colorls.sh
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/cvs.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/cvs.sh
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/glib2.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/glib2.sh
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/lang.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/lang.sh
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/less.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/less.sh
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/qt.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/qt.sh
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/vim.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/vim.sh
++ for i in '/etc/profile.d/*.sh'
++ '[' -r /etc/profile.d/which2.sh ']'
++ '[' hxB '!=' hxB ']'
++ . /etc/profile.d/which2.sh
++ unset i
++ unset -f pathmunge
++ JAVA_HOME=/usr/local/jdk
++ CLASSPATH=/usr/local/jdk/lib/dt.jar:/usr/local/jdk/lib/tools.jar
++ PATH=/usr/local/jdk/bin:/usr/local/jdk/jre/bin:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
++ export JAVA_HOME
++ export PATH
++ export CLASSPATH
+ java -version
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) -Bit Server VM (build 25.102-b14, mixed mode)
+ echo 'JDK 安装成功 '
+ install_tomcat
+ wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.76/bin/apache-tomcat-7.0.76.tar.gz
JDK 安装成功
---- ::-- http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.76/bin/apache-tomcat-7.0.76.tar.gz
Resolving mirrors.tuna.tsinghua.edu.cn... 166.111.206.177, :f000::::::
Connecting to mirrors.tuna.tsinghua.edu.cn|166.111.206.177|:... connected.
HTTP request sent, awaiting response... OK
Length: (8.5M) [application/octet-stream]
Saving to: “apache-tomcat-7.0..tar.gz” %[=============================================================================================>] ,, 16.8M/s in .5s -- :: (16.8 MB/s) - “apache-tomcat-7.0..tar.gz” saved [/] + tar zxf apache-tomcat-7.0..tar.gz -C /usr/local/
+ ln -s /usr/local/apache-tomcat-7.0. /usr/local/tomcat
+ install_jsvc
+ cd /usr/local/tomcat/bin/
+ tar xf commons-daemon-native.tar.gz
++ find . -type d -name 'commons-daemon*'
+ cd ./commons-daemon-1.0.-native-src
+ cd unix
+ ./configure --with-java=/usr/local/jdk
*** Current host ***
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
*** C-Language compilation tools ***
checking cached host system type... ok
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for ranlib... *** Host support ***
ranlib
checking for strip... strip
checking C flags dependant on host system type... *** Java compilation tools ***
ok
checking JAVA_HOME... /usr/local/jdk
checking for JDK os include directory... linux
gcc flags added
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking sys/capability.h usability... no
checking sys/capability.h presence... configure: WARNING: cannot find headers for libcap
*** Writing output files ***
no
checking for sys/capability.h... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating Makedefs
config.status: creating native/Makefile
*** All done ***
Now you can issue "make"
+ make
(cd native; make all)
make[]: Entering directory `/usr/local/apache-tomcat-7.0./bin/commons-daemon-1.0.-native-src/unix/native'
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c jsvc-unix.c -o jsvc-unix.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c arguments.c -o arguments.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c debug.c -o debug.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c dso-dlfcn.c -o dso-dlfcn.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c dso-dyld.c -o dso-dyld.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c help.c -o help.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c home.c -o home.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c java.c -o java.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c location.c -o location.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c replace.c -o replace.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c locks.c -o locks.o
gcc -g -O2 -DOS_LINUX -DDSO_DLFCN -DCPU=\"amd64\" -Wall -Wstrict-prototypes -I/usr/local/jdk/include -I/usr/local/jdk/include/linux -c signals.c -o signals.o
ar cr libservice.a arguments.o debug.o dso-dlfcn.o dso-dyld.o help.o home.o java.o location.o replace.o locks.o signals.o
ranlib libservice.a
gcc jsvc-unix.o libservice.a -ldl -lpthread -o ../jsvc
make[]: Leaving directory `/usr/local/apache-tomcat-7.0./bin/commons-daemon-1.0.-native-src/unix/native'
+ cp jsvc /usr/local/tomcat/bin/
+ echo 'JAVA_HOME=/usr/local/jdk
TOMCAT_USER=tomcat
JSVC_OPTS='\''-jvm server'\''
JAVA_OPTS=
'
+ useradd -s /sbin/nologin -M tomcat
+ chown -R tomcat /usr/local/tomcat
+ ln -s /usr/local/tomcat/bin/daemon.sh /etc/init.d/tomcat
+ sed -i '1a \
# chkconfig: - \
# description: Tomcat7 daemon\
# processname: tomcat
' /usr/local/tomcat/bin/daemon.sh
+ chkconfig --add tomcat
+ service tomcat start
[root@4sztj ~]#
自动部署tomcat,并以普通用户身份运行 for centos6的更多相关文章
- Jenkins自动部署Tomcat项目
Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:
- 使用Maven自动部署Tomcat 6和Tomcat 7下Web应用
使用Maven自动部署Tomcat 6和Tomcat 7下Web应用 开启Tomcat远程管理权限 在tomcat的config目录下的tomcat-users.xml文件, <role rol ...
- linux下实现自动部署tomcat的脚本
linux下实现自动部署tomcat的脚本 由于经常部署war到tomccat上,经常有一些重复的工作要做:停服务.备份war包.上传新的war包.启动服务.索性就写了一个自动部署的脚本. 脚本如下a ...
- 自动部署tomcat 脚本
自动部署tomcat 脚本 . /etc/init.d/functions #调用系统函数 yum -y install java >/dev/null TAR="apache-tom ...
- jekins自动部署tomcat注意事项、连接tomcat报错
jekins自动部署tomcat注意事项 千万不要用下面插件推送,报错很多, 要用脚本,一篇博客说的:“我们都是用的脚本,插件报错太多,也不完善” Deploy to container Plugin ...
- 以不同用户身份运行程序,/savecred只需要输入一次密码(GetTokenByName取得EXPLORER.EXE的令牌,然后调用CreateProcessAsUser,而且使用LoadUserProfile解决另存文件的问题)good
http://blog.sina.com.cn/s/blog_65977dde0100s7tm.html ----------------------------------------------- ...
- Linux 下以其他用户身份运行程序—— su、sudo、runuser
本文综合分析了Linux系统下,如何使用runuser命令.su命令和sudo命令以其他用户身份来运行程序,以及这三个命令的运行效率比较. 一.su 命令临时切换用户身份 SU:( Switch ...
- maven自动部署Tomcat错误排除
转自:https://blog.csdn.net/wuha0/article/details/18658113 在Maven与Tomcat配合部署过程中,最常见的错误有三种,折腾了半天,终于找到三种错 ...
- jenkins自动部署tomcat
关于部署的3种思路: 远程部署(jenkins编译部署到远程服务器): 安装ssh插件 ssh插件配置 添加远程jenkins服务器节点: 本地部署(与jenkins在同一服务器): 关于maven构 ...
随机推荐
- 微信小程序开发4之form表单与弹出层
第一 表单的提交和重置 第二 radio组件 第三 checkbox组件 第四 loading组件 第五 toast组件 第六 modal组件
- RAD Studio XE2破解、安装、试用
RAD Studio XE2刚发布没几天,网上找到了破解,鸡冻啊.迫不及待的下载安装. 新特性: 使用FireMonkey ?创建令人印象深刻的商业应用 构建64位Delphi应用程序以利用最新的硬件 ...
- cxf 方法添加注解
/** * 登录 * @param uid * @param password * @return */ @POST @Path(value = "/login") public ...
- Tomcat server.xml中Connector配置参数详解
Tomcat中Connector常用配置 Tomcat中server.xml有些配置信息是需要我们了解的,最起码知道如何进行简单的调试. <Connector port="8080&q ...
- day6 笔记
元祖 只读不可取的列表,数据不能被修改 a = (20,30) 格式同列表,只是[] 换成了 () ps:元祖在创建的时候,最好在最后的元素后面加一个逗号,比如a = ( 20,) 用法类似于列表:切 ...
- 洛谷P1776 宝物筛选_NOI导刊2010提高(02)(多重背包,单调队列)
为了学习单调队列优化DP奔向了此题... 基础的多重背包就不展开了.设\(f_{i,j}\)为选前\(i\)个物品,重量不超过\(j\)的最大价值,\(w\)为重量,\(v\)为价值(蒟蒻有强迫症,特 ...
- 自学Linux Shell3.6-文件查看命令file cat more less tail head
点击返回 自学Linux命令行与Shell脚本之路 3.6-文件查看命令file cat more less tail head 1.参看文件类型file 该命令用来识别文件类型,也可用来辨别一些文件 ...
- eclipse中用maven创建web项目
上一节中完成了本地的maven环境搭建,在eclipse中怎么创建一个maven项目呢 一.eclipse中配置maven环境 eclipse版本4.3 1.打开菜单Help->Eclipse ...
- [luogu4568][bzoj2763][JLOI2011]飞行路线
题目描述 Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为00到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定 ...
- 洛谷 P2345 奶牛集会 解题报告
P2345 奶牛集会 题目背景 MooFest, 2004 Open 题目描述 约翰的N 头奶牛每年都会参加"哞哞大会".哞哞大会是奶牛界的盛事.集会上的活动很 多,比如堆干草,跨 ...