Centos7下添加开机自启动服务和脚本 https://blog.csdn.net/GMingZhou/article/details/78677953
安装部分参考我的博文,仅参考他的开机启动部分
CentOS 7环境配置tomcat7开机启动 https://blog.csdn.net/tiantang_1986/article/details/53704966
1.安装 jdk-8u5-linux-x64.rpm
1.1先下载最新的jdk版本 如何删除现有版本 参考博文 CentOS 7环境配置tomcat7开机启动
最新版地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
历史版本地址:百度吧,忘了!
文件名:jdk-8u5-linux-x64.rpm 我下的是 1.8.0_181
将文件通过上传当前用户目录中
rpm -ivh jdk-8u5-linux-x64.rpm
系统会自动安装。默认安装路径是 /usr/java
1.2、 设置环境变量
在终端窗口输入:
vi /etc/profile
进行编辑
在profile文件末尾加入:注意路径名称一定要正确
#setjavaenvironment
JAVA_HOME=/usr/java/jdk1.8.0_181
JRE_HOME=/usr/java/jdk1.8.0_181/jre
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASSPATH PATH
使环境变量立即生效
source /etc/profile
测试是否生效,在终端输入:
java -version
看是否显示
[root@jyserver jdk1.8.0_181]# java -version
java version"1.8.0_181"Java(TM) SE Runtime Environment (build1.8.0_181-b13)
Java HotSpot(TM)64-Bit Server VM (build 25.181-b13, mixed mode)
如果正常显示则表示安装成功,接下来进行下一步
2.安装tomcat
2.1先从tomcat网站上下载gz安装包
文件名:apache-tomcat-8.0.8.tar.gz
将文件上传到/usr/local目录中
执行解压缩
tar zxvf apache-tomcat-8.0.8.tar.gz
将目录apache-tomcat-8.0.8命名为tomcat
mv apache-tomcat-8.0.8 tomcat
运行/usr/local/tomcat/bin/startup.sh就会启动tomcat
2.2修改 bin/setclasspath.sh配置
在setclasspath.sh文件中的
# Make sureprerequisite environment variables are set
这行前面增加下面两行:
export JAVA_HOME=/usr/java/jdk1.8.0_181
export JRE_HOME=/usr/java/jdk1.8.0_181/jre
2.3、 配置
在tomca/bin 目录下面,新建 setenv.sh配置,catalina.sh启动的时候会调用,同时配置java内存参数
setenv.sh的内容如下:
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/tomcat.pid"#add java opts
JAVA_OPTS="-server-XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M-XX:MaxNewSize=256m"
在/usr/lib/systemd/system目录下增加tomcat.service,目录必须是绝对目录
内容如下:
[Unit]
Description=Tomcat
After=syslog.targetnetwork.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/tomcat/tomcat.pid
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecReload=/bin/kill-s HUP $MAINPID
ExecStop=/bin/kill-s QUIT $MAINPID
PrivateTmp=true[Install]
WantedBy=multi-user.target
[unit]配置了服务的描述,规定了在network启动之后执行。[service]配置服务的pid,服务的启动,停止,重启。[install]配置了使用用户。
因为配置pid,在启动的时候会再tomcat根目录生成tomcat.pid文件,停止之后删除。
同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。
多个tomcat可以配置在多个目录下,互不影响
2.4、 常用命令
查看tomcat的状态
systemctl status tomcat.service
配置开机启动
systemctl enable tomcat.service
删除开机启动
systemctl disable tomcat.service
启动tomcat
systemctl start tomcat.service
停止tomcat
systemctl stop tomcat.service
重启tomcat
systemctl restart tomcat.service
其中.service可以省略。
2.5、 测试启动
终端输入
systemctl start tomcat.service
如果没有报错,则表示启动正常,可以查看状态
systemctl status tomcat.service
我的操作结果显示如下:
出错了!
目前启动tomcat 报错如下:
[root@jyserver bin]# systemctl start tomcat
Jobfor tomcat.service failed because the control process exited with error code. See "systemctl status tomcat.service" and "journalctl -xe" for details.